compass.landice.tests.ensemble_generator.ensemble_member.EnsembleMember¶
- class compass.landice.tests.ensemble_generator.ensemble_member.EnsembleMember(test_case, run_num, basal_fric_exp=None, mu_scale=None, stiff_scale=None, von_mises_threshold=None, calv_spd_lim=None, gamma0=None, meltflux=None, deltaT=None)[source]¶
A step for setting up a single ensemble member
- Variables:
run_num (integer) – the run number for this ensemble member
name (str) – the name of the run being set up in this step
ntasks (integer) – the number of parallel (MPI) tasks the step would ideally use
input_file_name (str) – name of the input file that was read from the config
basal_fric_exp (float) – value of basal friction exponent to use
mu_scale (float) – value to scale muFriction by
stiff_scale (float) – value to scale stiffnessFactor by
von_mises_threshold (float) – value of von Mises stress threshold to use
calv_spd_lim (float) – value of calving speed limit to use
gamma0 (float) – value of gamma0 to use in ISMIP6 ice-shelf basal melt param.
deltaT (float) – value of deltaT to use in ISMIP6 ice-shelf basal melt param.
- __init__(test_case, run_num, basal_fric_exp=None, mu_scale=None, stiff_scale=None, von_mises_threshold=None, calv_spd_lim=None, gamma0=None, meltflux=None, deltaT=None)[source]¶
Creates a new run within an ensemble
- Parameters:
test_case (compass.TestCase) – The test case this step belongs to
run_num (integer) – the run number for this ensemble member
basal_fric_exp (float) – value of basal friction exponent to use
mu_scale (float) – value to scale muFriction by
stiff_scale (float) – value to scale stiffnessFactor by
von_mises_threshold (float) – value of von Mises stress threshold to use assumes same value for grounded and floating ice
calv_spd_lim (float) – value of calving speed limit to use
gamma0 (float) – value of gamma0 to use in ISMIP6 ice-shelf basal melt param.
deltaT (float) – value of deltaT to use in ISMIP6 ice-shelf basal melt param.
Methods
__init__
(test_case, run_num[, ...])Creates a new run within an ensemble
add_input_file
([filename, target, database, ...])Add an input file to the step (but not necessarily to the MPAS model).
add_model_as_input
()make a link to the model executable and add it to the inputs
add_namelist_file
(package, namelist[, ...])Add a file with updates to namelist options to the step to be parsed when generating a complete namelist file if and when the step gets set up.
add_namelist_options
(options[, out_name, mode])Add the namelist replacements to be parsed when generating a namelist file if and when the step gets set up.
add_output_file
(filename)Add the output file that must be produced by this step and may be made available as an input to steps, perhaps in other test cases.
add_streams_file
(package, streams[, ...])Add a streams file to the step to be parsed when generating a complete streams file if and when the step gets set up.
constrain_resources
(available_resources)Constrain
cpus_per_task
andntasks
based on the number of cores available to this stepprocess_inputs_and_outputs
()Process the inputs to and outputs from a step added with
compass.Step.add_input_file()
andcompass.Step.add_output_file()
.run
()Run this member of the ensemble.
runtime_setup
()Update attributes of the step at runtime before calling the
run()
method.set_resources
([cpus_per_task, ...])Update the resources for the subtask.
setup
()Set up this run by setting up a baseline run configuration and then modifying parameters for this ensemble member based on an externally provided unit parameter vector
update_namelist_at_runtime
(options[, out_name])Update an existing namelist file with additional options.
update_namelist_pio
([out_name])Modify the namelist so the number of PIO tasks and the stride between them consistent with the number of nodes and cores (one PIO task per node).
update_streams_at_runtime
(package, streams, ...)Update the streams files during the run phase of this step using the given template and replacements.