polaris.tasks.ocean.realistic_global.init.forcing.ForcingStep
- class polaris.tasks.ocean.realistic_global.init.forcing.ForcingStep(component, subdir, remap_jra55_step)[source]
A step that reads the remapped JRA55-do wind stress and writes the model-specific surface forcing file.
Both models take zonal and meridional stress components at cell centers and project onto edges themselves, so no vector rotation happens here. The field is authored in MPAS-Ocean names and renamed on write by
polaris.ocean.model.OceanIOStep.write_forcing_dataset(), which also adds theTimedimension MPAS-Ocean’s Registry requires and Omega forbids.Only wind stress is written. Surface restoring, thermal and freshwater fluxes, and time-varying forcing are future work.
- Variables:
remap_jra55_step (polaris.Step) – The upstream step that produces
jra55_on_mesh.nc.
- __init__(component, subdir, remap_jra55_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.
remap_jra55_step (polaris.Step) – The step that produces
jra55_on_mesh.nc.
Methods
__init__(component, subdir, remap_jra55_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_horiz_mesh_input_file(**kwargs)Add the horizontal-mesh input file using a placeholder that is resolved to the configured filename at
process_inputs_and_outputs()time.add_init_input_file(**kwargs)Add the initial-condition input file using a placeholder that is resolved to the configured filename at
process_inputs_and_outputs()time.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 an output file, optionally resolving
validate_classto a pre-defined list of variables from the Ocean component.add_output_files_for_ocean_model_input([...])Register output files that will be consumed by the ocean model as inputs (horizontal mesh, initial condition, and model-specific files).
add_produced_file(filename)Register a file the step has just written as one of its outputs
add_property_check(filename, check_properties)Add a single conservation comparison for an output file
add_vert_coord_input_file([filename])Add the vertical-coordinate input 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 stepget_forcing_filename()Get the configured local filename for the surface forcing file.
get_horiz_mesh_filename()Get the configured local filename for the horizontal mesh file.
get_init_filename()Get the configured local filename for the initial-condition file.
get_vert_coord_filename()Get the configured local filename for the vertical coordinate file.
map_from_native_model_vars(ds)If the model is Omega, rename dimensions and variables in a dataset from their Omega names to the MPAS-Ocean equivalent (appropriate for datasets that are output from the model)
map_to_native_model_vars(ds)If the model is Omega, rename dimensions and variables in a dataset from their MPAS-Ocean names to the Omega equivalent (appropriate for input datasets like an initial condition)
open_model_dataset(filename[, config, ...])Open the given dataset, mapping variable and dimension names from Omega to MPAS-Ocean names if appropriate
open_vert_coord_dataset(ds_init[, ...])Return the dataset containing vertical-coordinate variables (
bottomDepth,minLevelCell,maxLevelCell,vertCoordMovementWeightsand eitherrestingThicknessorRefPseudoThickness).process_inputs_and_outputs()Resolve
<<<placeholder>>>filenames to configured names and drop<<<vert_coord>>>entries for MPAS-Ocean before delegating to the baseStepprocessing.run()Write the model-specific
forcing.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 input and output 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
write_forcing_dataset(ds, filename, config)Write a surface forcing dataset, renaming to the native model's variable names and adding a
Timedimension for MPAS-Ocean.write_horiz_mesh_dataset(ds, filename, config)Write a horizontal mesh dataset, validating that all expected mesh variables are present before writing.
write_initial_state_dataset(ds, filename, config)Write an initial-state dataset, converting the tracers to the convention the model expects and omitting horizontal mesh fields and (for Omega) vertical coordinate fields.
write_model_dataset(ds, filename, config)Write out the given dataset, mapping dimension and variable names from MPAS-Ocean to Omega names if appropriate
write_vert_coord_dataset(ds, filename, config)Write a vertical-coordinate dataset for Omega's
InitialVertCoordstream.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
componentconfiginput_datalogger