barotropic_channel

The barotropic channel task group is comprised of a default task for quick testing of lateral boundary conditions and a short variant of it for the Omega regression suites.

framework

The shared config options for barotropic_channel tests are described in barotropic channel in the User’s Guide.

Additionally, the tests share a forward.yaml file with a few common model config options related to time management, time integration, and Laplacian viscosity, as well as defining mesh, input, restart, and output streams.

init

The class polaris.tasks.ocean.barotropic_channel.init.Init defines a step for setting up the initial state for each test case.

First, a mesh appropriate for the resolution is generated using mpas_tools.planar_hex.make_planar_hex_mesh(). Then, the mesh is culled to remove periodicity in the y direction. The bottom topography is defined along with a vertical grid with 3 layers by default. Next, the ocean state is generated with spatially uniform properties. The forcing stream is also generated with wind stress fields.

forward

The class polaris.tasks.ocean.barotropic_channel.forward.Forward defines a step for running the ocean from the initial condition produced in the init step. Namelist and streams files are updated in polaris.tasks.ocean.barotropic_channel.forward.Forward.dynamic_model_config(), where the run duration comes from the [barotropic_channel_<task_name>] config section for the task the step belongs to. The number of cells is approximated from config options in polaris.tasks.ocean.barotropic_channel.forward.Forward.compute_cell_count() so that this can be used to constrain the number of MPI tasks that Polaris tasks have as their target and minimum (if the resources are not explicitly prescribed). For MPAS-Ocean, PIO namelist options are modified and a graph partition is generated as part of runtime_setup(). Next, the ocean model is run.

viz

The polaris.tasks.ocean.barotropic_channel.viz.Viz plots the initial and final velocity components, relative vorticity, and circulation at the bottommost vertical layer.

default

The polaris.tasks.ocean.barotropic_channel.default.Default test runs the init step, a 2 day forward step, and the viz step.

short

The polaris.tasks.ocean.barotropic_channel.short.Short test runs the same steps with a 2 hour forward step. Omega takes an order of magnitude longer than MPAS-Ocean per time step on this mesh, so this is the variant in the omega_pr and omega_nightly suites.