pyrokinetics.pyroscan.PyroScan#
- class pyrokinetics.pyroscan.PyroScan(pyro=None, parameter_dict=None, p_prime_type=0, value_fmt='.2f', value_separator='_', parameter_separator='/', file_name=None, base_directory='.', load_default_parameter_keys=True, pyroscan_json=None, runfile_dict=None, load_base_pyro=False)[source]#
Bases:
objectCreates a dictionary of pyro objects in pyro_dict
Need a templates pyro object
Dict of parameters to scan through { param : [values], }
- __init__(pyro=None, parameter_dict=None, p_prime_type=0, value_fmt='.2f', value_separator='_', parameter_separator='/', file_name=None, base_directory='.', load_default_parameter_keys=True, pyroscan_json=None, runfile_dict=None, load_base_pyro=False)[source]#
Methods
__init__([pyro, parameter_dict, ...])add_parameter_func([parameter_key, ...])Applies function
parameter_func(pyro, **kwargs)on pyro object each time after parameter_key is set in a scanadd_parameter_key([parameter_key, ...])parameter_key: string to access variable parameter_attr: string of attribute storing value in pyro parameter_location: list of strings showing path to value in pyro
convert_gk_code(gk_code)Converts all gyrokinetics codes to the code type 'gk_code'.
create_single_run(parameters)Create a new Pyro instance from the PyroScan base with new run parameters
format_single_run_name(parameters)Concatenate parameter names/values with separator.
Loads default parameters name into parameter_map
load_gk_output([output_convention, ...])Loads PyroScanGKOutput into self.gk_output
Creates generator of outer product for all parameter permutations
Updates all pyro object parameters based on pyro_dict values
write([file_name, base_directory, ...])Creates and writes GK input files for parameters in scan
Attributes
- JSON_ATTRS = ['value_fmt', 'value_separator', 'parameter_separator', 'parameter_dict', 'file_name', 'base_directory', 'runfile_dict', 'p_prime_type', 'parameter_map']#
- add_parameter_func(parameter_key=None, parameter_func=None, parameter_kwargs=None)[source]#
Applies function
parameter_func(pyro, **kwargs)on pyro object each time after parameter_key is set in a scanparameter_key: string to access variable parameter_func: function that take in a pyro object applies modification parameter_kwargs: Dictionary of kwargs to apply to function
- add_parameter_key(parameter_key=None, parameter_attr=None, parameter_location=None)[source]#
parameter_key: string to access variable parameter_attr: string of attribute storing value in pyro parameter_location: list of strings showing path to value in pyro
- property base_directory#
- convert_gk_code(gk_code)[source]#
Converts all gyrokinetics codes to the code type ‘gk_code’. This can be any viable GKInput type (GS2, CGYRO, GENE,…)
- create_single_run(parameters)[source]#
Create a new Pyro instance from the PyroScan base with new run parameters
- Parameters:
parameters (dict)
- property file_name#
- format_single_run_name(parameters)[source]#
Concatenate parameter names/values with separator. Handles both tuple-style and string-style runfile_dict keys for backward compatibility.
- property gk_code#
- load_default_parameter_keys()[source]#
Loads default parameters name into parameter_map
{param : [“attribute”, [“key_to_location_1”, “key_to_location_2” ]] }
for example
- {‘electron_temp_gradient’: [
“local_species”, [‘electron’,’inverse_lt’]] }
- load_gk_output(output_convention='pyrokinetics', tolerance_time_range=0.8, netcdf_file=None, load_fields=True, load_fluxes=True, load_moments=False, sum_ky=True, drop_nan=False, **kwargs)[source]#
Loads PyroScanGKOutput into self.gk_output
- Parameters:
output_convention (str default
'pyrokinetics') – ConventionNormalisation to convert output totolerance_time_range (
float default 0.8) – Time window over which to calculate growth rate tolerancenetcdf_file (
PathLike default None) – If supplied then load PyroScanGKOutput from existing netCDF(bool (drop_nan)
not (default False) – Flag to load moments or)
(bool
not
(bool
not
(bool
default (default False) – If NaNs are found in the output then that data is dropped. Off by)
GKOutputReader. (**kwargs – Arguments to pass to the)
- Return type: