nondivergent_2d
The polaris.ocean.tasks.sphere_transport.SphereTransport
nondivergent_2d
test performs a 12-day run on the sphere that has a periodic
deforming flow which affects tracer distributions. The resolution of the
sphere varies (by default, between 60 and 240 km). After one period, the
tracer distributions are compared the initial condition to evaluate numerical
errors associated with the horizontal advection scheme and determine the rate
of convergence.
framework
The config options for the nondivergent_2d
test is described in
nondivergent 2-d in the User’s Guide.
Additionally, the test uses a forward.yaml
file with a few common
model config options related to drag and default horizontal and
vertical momentum and tracer diffusion, as well as defining mesh
, input
,
restart
, and output
streams. This file has Jinja templating that is
used to update model config options based on Polaris config options, see
Convergence Tests.
base_mesh
Sphere transport tasks use shared base_mesh
steps for creating
Quasi-uniform and Icosahedral Spherical Meshes at a sequence of resolutions.
init
The class polaris.ocean.tasks.sphere_transport.init.Init
defines a step for setting up the initial state at each resolution. The
initial state is differentiated between nondivergent_2d
and the other tests
set up by the class.
forward
The class polaris.ocean.tasks.sphere_transport.forward.Forward
descends from polaris.ocean.convergence.spherical.SphericalConvergenceForward
,
and defines a step for running MPAS-Ocean from an initial condition produced in
an init
step. See Convergence Tests for some relevant
discussion of the parent class. The time step is determined from the resolution
based on the dt_per_km
config option in the [convergence_forward]
section. Other model config options are taken from forward.yaml
.
analysis
The class polaris.ocean.tasks.sphere_transport.analysis.Analysis
descends from
polaris.ocean.convergence.ConvergenceAnalysis
,
and defines a step for computing the error norm (L2) for the results
at each resolution for tracers and layer thickness, saving them in
convergence_*.csv
and plotting them in convergence_*.png
.
filament_analysis
The class polaris.ocean.tasks.sphere_transport.filament_analysis.FilamentAnalysis
computes a filament diagnostic for each threshold value and each resolution
and plots that diagnostic in filament.png
.
viz
Visualization step is available only in the nondivergent_2d/with_viz
tasks. It is not included in the nondivergent_2d
in order to keep regression
as fast as possible when visualization isn’t needed.
The class polaris.ocean.tasks.sphere_transport.viz.Viz
is a step for plotting the initial and final states of the advection test for
each resolution. The colormap is controlled by these options:
# options for visualization for the sphere transport test case
[sphere_transport_viz_*]
# colormap options
# colormap
colormap_name = viridis
# [optional] colormap set_under and set_over options
under_color = k
over_color = orange
# the type of norm used in the colormap
norm_type = linear
# colorbar limits
colorbar_limits = 0., 1.
See global lat/lon plots for more details.