polaris.tasks.ocean.realistic_global.init.remap_jra55.RemapJra55Step
- class polaris.tasks.ocean.realistic_global.init.remap_jra55.RemapJra55Step(component, subdir, stress_step, jra55_map_step, cull_mesh_step)[source]
A step for applying the JRA55-do mapping weights built by
Jra55MapStep, remapping the wind-stress product from the native TL319 grid to MPAS cell centers.The stress is a vector, and the local east/north basis its components are given in rotates with position, most quickly near the poles. The step therefore remaps the three Cartesian components of the stress as scalars and rotates them back to east/north at each cell center, rather than remapping the zonal and meridional components independently. This makes the result independent of how the mapping tool treats the pole.
Every cell of the culled mesh has to be covered by the weights.
ncremapwrites zero rather than a missing value to a cell the weights do not reach, so the step checks the coverage recorded in the mapping file and fails rather than let a gap reach the forcing file as zero stress.- Variables:
stress_step (polaris.Step) – The upstream step that produces the JRA55-do wind-stress product.
jra55_map_step (polaris.Step) – The upstream step that builds the JRA55-to-mesh mapping file.
cull_mesh_step (polaris.tasks.e3sm.init.topo.cull.cull.CullMeshStep) – The upstream step that produces the culled MPAS mesh, whose cell centers the stress is rotated to.
- __init__(component, subdir, stress_step, jra55_map_step, cull_mesh_step)[source]
Create the step.
- Parameters:
component (polaris.tasks.ocean.Ocean) – The ocean component the step belongs to.
subdir (str) – The subdirectory for the step.
stress_step (polaris.Step) – The step that produces the JRA55-do wind-stress product.
jra55_map_step (polaris.Step) – The step that builds the JRA55-to-mesh mapping file.
cull_mesh_step (polaris.tasks.e3sm.init.topo.cull.cull.CullMeshStep) – The step that produces the culled ocean mesh files.
Methods
__init__(component, subdir, stress_step, ...)Create the 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()Remap the wind stress to MPAS cell centers in Cartesian components, rotate it back to zonal and meridional components, check that no cell is missing, and write
jra55_on_mesh.nc.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.
set_shared_config(config[, link])Replace the step's config parser with the shared config parser
setup()Declare the JRA55-do and culled-mesh input files.
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