cosine_bell
The polaris.ocean.tasks.cosine_bell.CosineBell
test performs a series of 24-day runs that advect a bell-shaped tracer blob
around the sphere. The resolution of the sphere varies (by default, between
60 and 240 km). Advected results are compared with a known exact solution to
determine the rate of convergence.
framework
The config options for the cosine_bell
tests are described in
cosine bell 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
Cosine bell 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.cosine_bell.init.Init
defines a step for setting up the initial state at each resolution with a
tracer distributed in a cosine-bell shape.
forward
The class polaris.ocean.tasks.cosine_bell.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.cosine_bell.analysis.Analysis
descends from
polaris.ocean.convergence.ConvergenceAnalysis
,
and defines a step for computing the error norm (L2) for the results
at each resolution, saving them in convergence_tracer1.csv
and plotting them
in convergence_tracer1.png
.
viz
The visualization step is available only in the cosine_bell/with_viz
tasks. It is not included in the cosine_bell
in order to keep regression
as fast as possible when visualization isn’t needed.
The class polaris.ocean.tasks.cosine_bell.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 cosine bell convergence test case
[cosine_bell_viz]
# colormap options
# colormap
colormap_name = viridis
# the type of norm used in the colormap
norm_type = linear
# colorbar limits
colorbar_limits = 0.0, 1.0
See global lat/lon plots for more details.