Source code for cea.analysis.sensitivity.sensitivity_demand_count

"""
Return the count a list of samples in a specified folder as input for the demand sensitivity analysis.

This reads in the `samples.npy` file produced by the script `sensitivity_demand_samples.py` and prints out the number
of samples contained. This can be used for scripting the demand simulations with a load sharing facility system like
the Euler cluster.
"""

import os
import numpy as np

__author__ = "Jimeno A. Fonseca; Daren Thomas"
__copyright__ = "Copyright 2016, Architecture and Building Systems - ETH Zurich"
__credits__ = ["Jimeno A. Fonseca", "Daren Thomas"]
__license__ = "MIT"
__version__ = "0.1"
__maintainer__ = "Daren Thomas"
__email__ = "cea@arch.ethz.ch"
__status__ = "Production"


[docs]def count_samples(samples_path): """ Read in the `samples.npy` numpy array from disk in the `samples_path` and report the row count (each row in the array is a sample to simulate for either the morris or the sobol method. :param samples_path: path to folder with the samples - see sensitivity_demand_samples.py :type samples_path: str :return: number of samples in the samples folder. """ samples = np.load(os.path.join(samples_path, 'samples.npy')) return len(samples)
if __name__ == '__main__': import argparse parser = argparse.ArgumentParser() parser.add_argument('-S', '--samples-folder', default='.', help='folder to place the output files (samples.npy, problem.pickle) in') args = parser.parse_args() samples_count = count_samples(samples_path=args.samples_folder) print(samples_count)