polaris.tasks.ocean.realistic_global.init.viz.VizInitStep

class polaris.tasks.ocean.realistic_global.init.viz.VizInitStep(component, subdir, init_step, cull_mesh_step, remap_jra55_step)[source]

A step for visualizing the realistic global ocean initial condition and vertical-coordinate datasets for either MPAS-Ocean or Omega.

The step is model-agnostic: it reads through open_model_dataset() (which maps Omega variable names to their MPAS-Ocean equivalents) and open_vert_coord_dataset(). Omega’s initial state has no geometric layerThickness, so the step derives one from PseudoThickness and the equation of state.

Titles and labels use each model’s own variable names, and say which quantity temperature and salinity hold: conservative temperature and absolute salinity for Omega, potential temperature and practical salinity for MPAS-Ocean. Output filenames use the MPAS-Ocean names for both models, so the two sets of plots line up.

It produces:

  • a summary figure of histograms (a port of Compass’ plot_initial_state without its Haney-number panel),

  • a vertical-coordinate structure figure,

  • global native-mesh maps of temperature and salinity at several depths plus surface and bottom, and topography/column diagnostics,

  • global native-mesh maps of the wind stress components and magnitude,

  • multi-basin vertical transects of temperature and salinity,

  • (Omega only) a stratification check using the TEOS-10 in-situ density, and

  • XDMF/HDF5 exports of the init and (Omega) vert_coord datasets for ParaView.

Variables:
  • init_step (polaris.Step) – The step that produces init.nc (and vert_coord.nc for Omega).

  • cull_mesh_step (polaris.Step) – The cull-mesh step that produces the MPAS horizontal mesh.

  • remap_jra55_step (polaris.Step) – The step that produces the remapped wind stress on the mesh.

__init__(component, subdir, init_step, cull_mesh_step, 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.

  • init_step (polaris.Step) – The step that produces init.nc (and vert_coord.nc for Omega).

  • cull_mesh_step (polaris.Step) – The step that produces culled_ocean_mesh.nc.

  • remap_jra55_step (polaris.Step) – The step that produces jra55_on_mesh.nc.

Methods

__init__(component, subdir, init_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_class to 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_task and ntasks based on the number of cores available to this step

get_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, vertCoordMovementWeights and either restingThickness or RefPseudoThickness).

process_inputs_and_outputs()

Resolve <<<placeholder>>> filenames to configured names and drop <<<vert_coord>>> entries for MPAS-Ocean before delegating to the base Step processing.

run()

Create the visualizations and ParaView exports.

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 input and output files based on the configured ocean model.

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 Time dimension 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 InitialVertCoord stream.

Attributes

cores

the number of cores this step needs, in total

gpus

the number of GPUs this step needs, in total

may_span_nodes

whether this step's cores and GPUs may come from several nodes

min_cores

the number of cores this step needs in order to run at all

min_gpus

the number of GPUs this step requires, in total

component

config

input_data

logger