polaris.tasks.e3sm.init.component_inputs.ScripStep
- class polaris.tasks.e3sm.init.component_inputs.ScripStep(component, subdir, cull_mesh_step, name='scrip')[source]
A step for staging the SCRIP descriptions of the culled meshes.
The cull step already writes these, so no grid description is recomputed here. What this step does is restamp the
mesh_nameattribute: the cull step names the mesh for how it was built (u-oi30-lr10_ocean), and a file headed for E3SM’s inputdata server should identify the released mesh (u02-oi30-lr10_ocean) instead – the same argument that decides the staged filenames.The attribute is edited with
ncattedrather than by reading and rewriting the file. These are NETCDF3_64BIT_DATA files that the cull step already found prohibitively slow to write directly, and rewriting the grid corners to change one string would be all of that cost for none of the benefit.- Variables:
cull_mesh_step (polaris.tasks.e3sm.init.topo.cull.CullMeshStep) – The step that wrote the SCRIP files.
mesh_short_name (str or None) – The E3SM short name, resolved at setup.
- __init__(component, subdir, cull_mesh_step, name='scrip')[source]
Create a new step.
- Parameters:
component (polaris.Component) – The component the step belongs to.
subdir (str) – The subdirectory for the step.
cull_mesh_step (polaris.tasks.e3sm.init.topo.cull.CullMeshStep) – The step that wrote the SCRIP files.
name (str, optional) – The name of the step.
Methods
__init__(component, subdir, cull_mesh_step)Create a new step.
add_cf_check([filename])Check an output file for CF compliance after the step runs.
add_dependency(step[, name])Add step as a dependency of this step (i.e. this step can't run until the dependency has finished).
add_input_file([filename, target, database, ...])Add an input file to the step (but not necessarily to the MPAS model).
add_output_file(filename[, validate_vars, ...])Add the output file to the step
add_property_check(filename, check_properties)Add a single conservation comparison for an output file
check_cf()Check the files added with
add_cf_check()for CF compliance.check_properties()Check conservation properties of the output files of this step.
constrain_resources(available_resources)Constrain
cpus_per_taskandntasksbased on the number of cores available to this stepprocess_inputs_and_outputs()Process the inputs to and outputs from a step added with
polaris.Step.add_input_file()andpolaris.Step.add_output_file().run()Restamp each SCRIP file with the E3SM mesh name.
runtime_setup()Update attributes of the step at runtime before calling the
run()method.scrip_filename(region)The file this step writes for one culled-mesh region.
set_resources([cpus_per_task, ...])Update the resources for the subtask.
set_shared_config(config[, link])Replace the step's config parser with the shared config parser
setup()Resolve the E3SM short name, so that a mesh with none assigned fails here rather than after the workflow has run.
validate_baselines()Compare variables between output files in this step and in the same step from a baseline run if one was provided.
work_path(*filenames)Get the absolute path to a file or directory in the step's work directory
Attributes
coresthe number of cores this step needs, in total
gpusthe number of GPUs this step needs, in total
may_span_nodeswhether this step's cores and GPUs may come from several nodes
min_coresthe number of cores this step needs in order to run at all
min_gpusthe number of GPUs this step requires, in total