3D model options

This page lists all available options for the 3D model.

See also Turbulence model options and Equation of State options.

CommonModelOptions.atmospheric_pressureFiredrakeScalarExpression

Atmospheric pressure at free surface, in pascals

Default:

UFL scalar expression

CommonModelOptions.cfl_2dPositiveFloat

Factor to scale the 2d time step OBSOLETE

Default:

1.0

CommonModelOptions.cfl_3dPositiveFloat

Factor to scale the 2d time step OBSOLETE

Default:

1.0

CommonModelOptions.check_volume_conservation_2dBool

Compute volume of the 2D mode at every export

2D volume is defined as the integral of the water elevation field. Prints deviation from the initial volume to stdout.

Default:

False

CommonModelOptions.coriolis_frequencyFiredrakeScalarExpression

2D Coriolis parameter

Default:

UFL scalar expression

CommonModelOptions.element_family‘dg-dg’|’rt-dg’|’dg-cg’

Finite element family

2D solver supports ‘dg-dg’, ‘rt-dg’, or ‘dg-cg’ velocity-pressure pairs. 3D solver supports ‘dg-dg’, or ‘rt-dg’ velocity-pressure pairs.

Default:

‘dg-dg’

CommonModelOptions.export_diagnosticsBool

Store diagnostic variables to disk in HDF5 format

Default:

True

CommonModelOptions.fields_to_exportList

Fields to export in VTK format

Default:

[‘elev_2d’, ‘uv_2d’, ‘uv_3d’, ‘w_3d’]

CommonModelOptions.fields_to_export_hdf5List

Fields to export in HDF5 format

Default:

[]

CommonModelOptions.horizontal_diffusivityFiredrakeCoefficient

Horizontal diffusivity for tracers

Default:

Function

CommonModelOptions.horizontal_velocity_scaleFiredrakeConstantTraitlet

Maximum horizontal velocity magnitude

Used to compute max stable advection time step.

Default:

Constant(0.1)

CommonModelOptions.horizontal_viscosityFiredrakeScalarExpression

Horizontal viscosity

Default:

UFL scalar expression

CommonModelOptions.horizontal_viscosity_scaleFiredrakeConstantTraitlet

Maximum horizontal viscosity

Used to compute max stable diffusion time step.

Default:

Constant(1.0)

CommonModelOptions.lax_friedrichs_tracer_scaling_factorFiredrakeConstantTraitlet

Scaling factor for tracer Lax Friedrichs stability term.

Default:

Constant(1.0)

CommonModelOptions.lax_friedrichs_velocity_scaling_factorFiredrakeConstantTraitlet

Scaling factor for Lax Friedrichs stabilisation term in horizontal momentum advection.

Default:

Constant(1.0)

CommonModelOptions.linear_drag_coefficientFiredrakeScalarExpression

2D linear drag parameter \(L\)

Bottom stress is \(\tau_b/\rho_0 = -L \mathbf{u} H\)

Default:

UFL scalar expression

CommonModelOptions.log_outputBool

Redirect all output to log file in output directory

Default:

True

CommonModelOptions.manning_drag_coefficientFiredrakeScalarExpression

Manning-Strickler 2D quadratic drag parameter \(\mu\)

Bottom stress is \(\tau_b/\rho_0 = -g \mu^2 |\mathbf{u}|\mathbf{u}/H^{1/3}\)

Default:

UFL scalar expression

CommonModelOptions.momentum_source_2dFiredrakeVectorExpression

Source term for 2D momentum equation

Default:

UFL vector expression

CommonModelOptions.no_exportsBool

Do not store any outputs to disk

Disables VTK and HDF5 field outputs. and HDF5 diagnostic outputs. Used in CI test suite.

Default:

False

CommonModelOptions.output_directoryUnicode

Directory where model output files are stored

Default:

‘outputs’

CommonModelOptions.polynomial_degreeNonNegativeInteger

Polynomial degree of elements

Default:

1

CommonModelOptions.quadratic_drag_coefficientFiredrakeScalarExpression

Dimensionless 2D quadratic drag parameter \(C_D\)

Bottom stress is \(\tau_b/\rho_0 = -C_D |\mathbf{u}|\mathbf{u}\)

Default:

UFL scalar expression

CommonModelOptions.simulation_end_timePositiveFloat

Simulation duration in seconds

Default:

1000.0

CommonModelOptions.simulation_export_timePositiveFloat

Export interval in seconds

All fields in fields_to_export list will be stored to disk and diagnostics will be computed

Default:

100.0

CommonModelOptions.timestepPositiveFloat

Time step

Default:

10.0

CommonModelOptions.tracer_source_2dFiredrakeScalarExpression

Source term for 2D tracer equation

Default:

UFL scalar expression

CommonModelOptions.use_grad_depth_viscosity_termBool

Include \(\nabla H\) term in the depth-averaged viscosity

See shallowwater_eq.HorizontalViscosityTerm for details.

Default:

True

CommonModelOptions.use_grad_div_viscosity_termBool

Include \(\nabla (\nu_h \nabla \cdot \bar{\textbf{u}})\) term in the depth-averaged viscosity

See shallowwater_eq.HorizontalViscosityTerm for details.

Default:

False

CommonModelOptions.use_lax_friedrichs_tracerBool

Use Lax Friedrichs stabilisation in tracer advection.

Default:

False

CommonModelOptions.use_lax_friedrichs_velocityBool

use Lax Friedrichs stabilisation in horizontal momentum advection.

Default:

True

CommonModelOptions.use_limiter_for_tracersBool

Apply P1DG limiter for tracer fields

Default:

True

CommonModelOptions.use_nonlinear_equationsBool

Use nonlinear shallow water equations

Default:

True

CommonModelOptions.verboseInt

Verbosity level

Default:

0

CommonModelOptions.volume_source_2dFiredrakeScalarExpression

Source term for 2D continuity equation

Default:

UFL scalar expression

CommonModelOptions.wind_stressFiredrakeVectorExpression

Stress at free surface (2D vector function)

Default:

UFL vector expression

ModelOptions3d.check_salinity_conservationBool

Compute total salinity mass at every export

Prints deviation from the initial mass to stdout.

Default:

False

ModelOptions3d.check_salinity_overshootBool

Compute salinity overshoots at every export

Prints overshoot values that exceed the initial range to stdout.

Default:

False

ModelOptions3d.check_temperature_conservationBool

Compute total temperature mass at every export

Prints deviation from the initial mass to stdout.

Default:

False

ModelOptions3d.check_temperature_overshootBool

Compute temperature overshoots at every export

Prints overshoot values that exceed the initial range to stdout.

Default:

False

ModelOptions3d.check_volume_conservation_3dBool

Compute volume of the 3D domain at every export

Prints deviation from the initial volume to stdout.

Default:

False

ModelOptions3d.constant_salinityFiredrakeConstantTraitlet

Constant salinity if salinity is not solved

Default:

Constant(0.0)

ModelOptions3d.constant_temperatureFiredrakeConstantTraitlet

Constant temperature if temperature is not solved

Default:

Constant(10.0)

ModelOptions3d.equation_of_state_type‘full’|’linear’

Type of equation of state

Default:

‘full’

Setting value implies configuration of sub-tree ModelOptions3d.equation_of_state_options:

‘full’:

‘linear’:

ModelOptions3d.equation_of_state_options.alphaFloat

Thermal expansion coefficient of ocean water

Default:

0.2

ModelOptions3d.equation_of_state_options.betaFloat

Saline contraction coefficient of ocean water

Default:

0.77

ModelOptions3d.equation_of_state_options.rho_refNonNegativeFloat

Reference water density

Default:

1000.0

ModelOptions3d.equation_of_state_options.s_refNonNegativeFloat

Reference water salinity

Default:

35.0

ModelOptions3d.equation_of_state_options.th_refFloat

Reference water temperature

Default:

15.0

ModelOptions3d.horizontal_diffusivityFiredrakeScalarExpression

Horizontal diffusivity for tracers

Default:

UFL scalar expression

ModelOptions3d.momentum_source_3dFiredrakeVectorExpression

Source term for 3D momentum equation

Default:

UFL vector expression

ModelOptions3d.salinity_source_3dFiredrakeScalarExpression

Source term for salinity equation

Default:

UFL scalar expression

ModelOptions3d.smagorinsky_coefficientFiredrakeConstantTraitlet

Smagorinsky viscosity coefficient \(C_S\)

See SmagorinskyViscosity.

Default:

Constant(0.1)

ModelOptions3d.solve_salinityBool

Solve salinity transport

Default:

True

ModelOptions3d.solve_temperatureBool

Solve temperature transport

Default:

True

ModelOptions3d.temperature_source_3dFiredrakeScalarExpression

Source term for temperature equation

Default:

UFL scalar expression

ModelOptions3d.timestep_2dPositiveFloat

Time step of the 2d mode

This option is only used in the 3d solver, if 2d mode is solved explicitly.

Default:

10.0

ModelOptions3d.timestepper_type‘LeapFrog’|’SSPRK22’

Name of the time integrator

Default:

‘SSPRK22’

Setting value implies configuration of sub-tree ModelOptions3d.timestepper_options:

‘LeapFrog’:

ModelOptions3d.timestepper_options.solver_parameters_2d_swePETScSolverParameters

No description

Default:

{‘ksp_type’: ‘gmres’, ‘pc_type’: ‘fieldsplit’, ‘pc_fieldsplit_type’: ‘multiplicative’}

ModelOptions3d.timestepper_options.solver_parameters_momentum_explicitPETScSolverParameters

No description

Default:

{‘snes_type’: ‘ksponly’, ‘ksp_type’: ‘cg’, ‘pc_type’: ‘bjacobi’, ‘sub_ksp_type’: ‘preonly’, ‘sub_pc_type’: ‘ilu’}

ModelOptions3d.timestepper_options.solver_parameters_momentum_implicitPETScSolverParameters

No description

Default:

{‘snes_type’: ‘ksponly’, ‘ksp_type’: ‘preonly’, ‘pc_type’: ‘bjacobi’, ‘sub_ksp_type’: ‘preonly’, ‘sub_pc_type’: ‘ilu’}

ModelOptions3d.timestepper_options.solver_parameters_tracer_explicitPETScSolverParameters

No description

Default:

{‘snes_type’: ‘ksponly’, ‘ksp_type’: ‘cg’, ‘pc_type’: ‘bjacobi’, ‘sub_ksp_type’: ‘preonly’, ‘sub_pc_type’: ‘ilu’}

ModelOptions3d.timestepper_options.solver_parameters_tracer_implicitPETScSolverParameters

No description

Default:

{‘snes_type’: ‘ksponly’, ‘ksp_type’: ‘preonly’, ‘pc_type’: ‘bjacobi’, ‘sub_ksp_type’: ‘preonly’, ‘sub_pc_type’: ‘ilu’}

‘SSPRK22’:

ModelOptions3d.timestepper_options.solver_parameters_2d_swePETScSolverParameters

No description

Default:

{‘ksp_type’: ‘gmres’, ‘pc_type’: ‘fieldsplit’, ‘pc_fieldsplit_type’: ‘multiplicative’}

ModelOptions3d.timestepper_options.solver_parameters_momentum_explicitPETScSolverParameters

No description

Default:

{‘snes_type’: ‘ksponly’, ‘ksp_type’: ‘cg’, ‘pc_type’: ‘bjacobi’, ‘sub_ksp_type’: ‘preonly’, ‘sub_pc_type’: ‘ilu’}

ModelOptions3d.timestepper_options.solver_parameters_momentum_implicitPETScSolverParameters

No description

Default:

{‘snes_type’: ‘ksponly’, ‘ksp_type’: ‘preonly’, ‘pc_type’: ‘bjacobi’, ‘sub_ksp_type’: ‘preonly’, ‘sub_pc_type’: ‘ilu’}

ModelOptions3d.timestepper_options.solver_parameters_tracer_explicitPETScSolverParameters

No description

Default:

{‘snes_type’: ‘ksponly’, ‘ksp_type’: ‘cg’, ‘pc_type’: ‘bjacobi’, ‘sub_ksp_type’: ‘preonly’, ‘sub_pc_type’: ‘ilu’}

ModelOptions3d.timestepper_options.solver_parameters_tracer_implicitPETScSolverParameters

No description

Default:

{‘snes_type’: ‘ksponly’, ‘ksp_type’: ‘preonly’, ‘pc_type’: ‘bjacobi’, ‘sub_ksp_type’: ‘preonly’, ‘sub_pc_type’: ‘ilu’}

ModelOptions3d.turbulence_model_type‘gls’|’pacanowski’

Type of vertical turbulence model

Default:

‘gls’

Setting value implies configuration of sub-tree ModelOptions3d.turbulence_model_options:

‘gls’:

ModelOptions3d.turbulence_model_options.c1Float

float: c1 parameter for Psi equations

Default:

1.44

ModelOptions3d.turbulence_model_options.c2Float

float: c2 parameter for Psi equations

Default:

1.92

ModelOptions3d.turbulence_model_options.c3_minusFloat

float: c3 parameter for Psi equations, stable stratification

If compute_c3_minus is True this value will be overriden

Default:

-0.52

ModelOptions3d.turbulence_model_options.c3_plusFloat

float: c3 parameter for Psi equations, unstable stratification

Default:

1.0

ModelOptions3d.turbulence_model_options.closure_name‘k-epsilon’|’k-omega’|’Generic Lenght Scale’

Name of two-equation closure

Default:

‘k-epsilon’

ModelOptions3d.turbulence_model_options.cmu0PositiveFloat

float: cmu0 parameter

Default:

0.5477

ModelOptions3d.turbulence_model_options.compute_c3_minusBool

bool: compute c3_minus from ri_st

Default:

True

ModelOptions3d.turbulence_model_options.compute_cmu0Bool

bool: compute cmu0 from stability function parameters

If compute_cmu0 is True, this value will be overriden

Default:

True

ModelOptions3d.turbulence_model_options.compute_kappaBool

bool: compute von Karman constant from schmidt_nb_psi

Default:

True

ModelOptions3d.turbulence_model_options.compute_len_minBool

bool: compute min_len from k_min and psi_min

Default:

True

ModelOptions3d.turbulence_model_options.compute_psi_minBool

bool: compute psi_len from k_min and eps_min

Default:

True

ModelOptions3d.turbulence_model_options.diff_minPositiveFloat

float: minimum value for eddy diffusivity

Default:

1e-08

ModelOptions3d.turbulence_model_options.eps_minPositiveFloat

float: minimum value for epsilon

Default:

1e-10

ModelOptions3d.turbulence_model_options.f_wallFloat

float: wall function parameter

Default:

1.0

ModelOptions3d.turbulence_model_options.galperin_limPositiveFloat

float: Galperin lenght scale limitation parameter

Default:

0.56

ModelOptions3d.turbulence_model_options.k_minPositiveFloat

float: minimum value for turbulent kinetic energy

Default:

3.7e-08

ModelOptions3d.turbulence_model_options.kappaFloat

float: von Karman constant

If compute_kappa is True this value will be overriden

Default:

0.4

ModelOptions3d.turbulence_model_options.len_minPositiveFloat

float: minimum value for turbulent lenght scale

Default:

1e-10

ModelOptions3d.turbulence_model_options.limit_epsBool

bool: apply Galperin lenght scale limit on epsilon

Default:

False

ModelOptions3d.turbulence_model_options.limit_lenBool

bool: apply Galperin lenght scale limit

Default:

False

ModelOptions3d.turbulence_model_options.limit_len_minBool

bool: limit minimum turbulent length scale to len_min

Default:

True

ModelOptions3d.turbulence_model_options.limit_psiBool

bool: apply Galperin lenght scale limit on psi

Default:

False

ModelOptions3d.turbulence_model_options.mFloat

float: parameter m for the definition of psi

Default:

1.5

ModelOptions3d.turbulence_model_options.nFloat

float: parameter n for the definition of psi

Default:

-1.0

ModelOptions3d.turbulence_model_options.pFloat

float: parameter p for the definition of psi

Default:

3.0

ModelOptions3d.turbulence_model_options.psi_minPositiveFloat

float: minimum value for psi

Default:

1e-10

ModelOptions3d.turbulence_model_options.ri_stFloat

steady state gradient Richardson number

Default:

0.25

ModelOptions3d.turbulence_model_options.schmidt_nb_psiPositiveFloat

float: psi Schmidt number

Default:

1.3

ModelOptions3d.turbulence_model_options.schmidt_nb_tkePositiveFloat

float: turbulent kinetic energy Schmidt number

Default:

1.0

ModelOptions3d.turbulence_model_options.stability_function_name‘Canuto A’|’Canuto B’|’Kantha-Clayson’|’Cheng’

Name of stability function family

Default:

‘Canuto A’

ModelOptions3d.turbulence_model_options.visc_minPositiveFloat

float: minimum value for eddy viscosity

Default:

1e-08

‘pacanowski’:

ModelOptions3d.turbulence_model_options.alphaPositiveFloat

float: Richardson number multiplier

Default:

10.0

ModelOptions3d.turbulence_model_options.exponentPositiveFloat

float: Exponent of viscosity numerator \(n\)

Default:

2.0

ModelOptions3d.turbulence_model_options.max_viscosityPositiveFloat

float: Constant maximum viscosity \(\nu_{max}\)

Default:

0.05

ModelOptions3d.use_ale_moving_meshBool

Use ALE formulation where 3D mesh tracks free surface

Default:

True

ModelOptions3d.use_baroclinic_formulationBool

Compute internal pressure gradient in momentum equation

Default:

False

ModelOptions3d.use_bottom_frictionBool

Apply log layer bottom stress in the 3D model

Default:

True

ModelOptions3d.use_implicit_vertical_diffusionBool

Solve vertical diffusion and viscosity implicitly

Default:

True

ModelOptions3d.use_limiter_for_velocityBool

Apply P1DG limiter for 3D horizontal velocity field

Default:

True

ModelOptions3d.use_parabolic_viscosityBool

Use idealized parabolic eddy viscosity

See ParabolicViscosity

Default:

False

ModelOptions3d.use_quadratic_densityBool

Water density is projected to P2DGxP2 space.

This reduces pressure gradient errors associated with nonlinear equation of state. If False, density is computed point-wise in the tracer space.

Default:

False

ModelOptions3d.use_quadratic_pressureBool

Use P2DGxP2 space for baroclinic head.

If element_family=’dg-dg’, P2DGxP1DG space is also used for the internal pressure gradient.

This is useful to alleviate bathymetry-induced pressure gradient errors. If False, the baroclinic head is in the tracer space, and internal pressure gradient is in the velocity space.

Default:

False

ModelOptions3d.use_smagorinsky_viscosityBool

Use Smagorinsky horisontal viscosity parametrization

Default:

False

ModelOptions3d.use_smooth_eddy_viscosityBool

Cast eddy viscosity to p1 space instead of p0

Default:

False

ModelOptions3d.use_turbulenceBool

Activate turbulence model in the 3D model

Default:

False

ModelOptions3d.use_turbulence_advectionBool

Advect TKE and Psi in the GLS turbulence model

Default:

False

ModelOptions3d.vertical_diffusivityFiredrakeScalarExpression

Vertical diffusivity for tracers

Default:

UFL scalar expression

ModelOptions3d.vertical_velocity_scaleFiredrakeConstantTraitlet

Maximum vertical velocity magnitude

Used to compute max stable advection time step.

Default:

Constant(0.0001)

ModelOptions3d.vertical_viscosityFiredrakeScalarExpression

Vertical viscosity

Default:

UFL scalar expression