polaris.mesh.IcosahedralMeshStep

class polaris.mesh.IcosahedralMeshStep(component, name='base_mesh', subdir=None, cell_width=None, subdivisions=None)[source]

A step for creating an icosahedral JIGSAW mesh

Variables
  • cell_width (float) – The approximate cell width in km of the mesh if constant resolution

  • subdivisions (int) – The number of subdivisions of the icosahedral mesh to perform

__init__(component, name='base_mesh', subdir=None, cell_width=None, subdivisions=None)[source]

Create a new step

Parameters
  • component (polaris.Component) – The component the step belongs to

  • name (str, optional) – the name of the step

  • subdir ({str, None}, optional) – the subdirectory for the step

  • cell_width (float, optional) – The approximate cell width in km of the mesh if constant resolution

  • subdivisions (int, optional) – The number of subdivisions of the icosahedral mesh to perform

Methods

__init__(component[, name, subdir, ...])

Create a new step

add_dependency(step[, name])

Add step as a dependency of this step (i.e.

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 that must be produced by this step and may be made available as an input to steps, perhaps in other tasks.

build_subdivisions_cell_width_lat_lon()

A function for creating cell width array for this mesh on a regular latitude-longitude grid.

constrain_resources(available_resources)

Constrain cpus_per_task and ntasks based on the number of cores available to this step

get_cell_width(subdivisions)

Get the approximate cell width for an icosahedral mesh given either a number of subdivisions of the icosahedron.

get_subdivisions(cell_width)

Find the number of subdivisions of an icosahedron to achieve a resolution as close as possible to cell_width.

make_jigsaw_mesh(subdivisions)

Make the JIGSAW mesh.

process_inputs_and_outputs()

Process the inputs to and outputs from a step added with polaris.Step.add_input_file() and polaris.Step.add_output_file().

run()

Run this step of the task

runtime_setup()

Update attributes of the step at runtime before calling the run() method.

save_and_plot_cell_width(lon, lat, cell_width)

Save the cell width field on a lon/lat grid to self.cell_width_filename and plot

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()

Add JIGSAW options based on config options

validate_baselines()

Compare variables between output files in this step and in the same step from a baseline run if one was provided.