polaris.ocean.convergence.ConvergenceAnalysis
- class polaris.ocean.convergence.ConvergenceAnalysis(component, resolutions, subdir, dependencies, convergence_vars)[source]
A step for analyzing the output from convergence tests
- Variables
resolutions (list of float) – The resolutions of the meshes that have been run
dependencies_dict (dict of dict of polaris.Steps) –
The dependencies of this step must be given as separate keys in the dict:
- meshdict of polaris.Steps
Keys of the dict correspond to resolutions Values of the dict are polaris.Steps, which must have the attribute path, the path to base_mesh.nc of that resolution
- initdict of polaris.Steps
Keys of the dict correspond to resolutions Values of the dict are polaris.Steps, which must have the attribute path, the path to initial_state.nc of that resolution
- forwarddict of polaris.Steps
Keys of the dict correspond to resolutions Values of the dict are polaris.Steps, which must have the attribute path, the path to forward.nc of that resolution
convergence_vars (list of dict) –
The attributes for each variable for which to analyze the convergence rate. Each dict must contain the following keys:
- namestr
The name of the variable as given in the output netcdf file
- titlestr
The name of the variable to use in the plot title
- zidxint
The z-index to use for variables that have an nVertLevels dimension, which should be None for variables that don’t
- __init__(component, resolutions, subdir, dependencies, convergence_vars)[source]
Create the step
- Parameters
component (polaris.Component) – The component the step belongs to
resolutions (list of float) – The resolutions of the meshes that have been run
subdir (str) – The subdirectory that the step resides in
dependencies (dict of dict of polaris.Steps) –
The dependencies of this step must be given as separate keys in the dict:
- meshdict of polaris.Steps
Keys of the dict correspond to resolutions Values of the dict are polaris.Steps, which must have the attribute path, the path to base_mesh.nc of that resolution
- initdict of polaris.Steps
Keys of the dict correspond to resolutions Values of the dict are polaris.Steps, which must have the attribute path, the path to initial_state.nc of that resolution
- forwarddict of polaris.Steps
Keys of the dict correspond to resolutions Values of the dict are polaris.Steps, which must have the attribute path, the path to forward.nc of that resolution
convergence_vars (list of dict) –
The convergence attributes for each variable. Each dict must contain the following keys:
- namestr
The name of the variable as given in the output netcdf file
- titlestr
The name of the variable to use in the plot title
- zidxint
The z-index to use for variables that have an nVertLevels dimension, which should be None for variables that don’t
Methods
__init__
(component, resolutions, subdir, ...)Create the 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.
compute_error
(mesh_name, variable_name[, ...])Compute the error for a given resolution
constrain_resources
(available_resources)Constrain
cpus_per_task
andntasks
based on the number of cores available to this stepconvergence_parameters
([field_name])Get convergence parameters
exact_solution
(mesh_name, field_name, time)Get the exact solution
get_output_field
(mesh_name, field_name, time)Get the model output field at the given time and z index
plot_convergence
(variable_name, title, zidx)Compute the error norm for each resolution and produce a convergence plot
process_inputs_and_outputs
()Process the inputs to and outputs from a step added with
polaris.Step.add_input_file()
andpolaris.Step.add_output_file()
.run
()Run this step of the test case
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
()Add input files based on resolutions, which may have been changed by user 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.