zoomy_core.systemmodel.model_builders

zoomy_core.systemmodel.model_builders#

Per-model SystemModel builders, dispatched from SystemModel.from_model on the model’s _system_model_kind. Sits between the declarative Model and the SystemModel that the NumericalSystemModel consumes.

Module Contents#

Functions#

build_swe

Shallow-water-equations SystemModel built straight from the model.

build_sme

Shallow-moment-equations SystemModel with hydrostatic pressure tagged for well-balanced reconstruction.

build_vam

Vertically-averaged-and-moment SystemModel with pressure modes appended to the state.

build_mlswe

Multilayer shallow-water SystemModel (bed, total depth, per-layer momenta).

build_mlsme

Multilayer shallow-moment SystemModel (per-layer hydrostatic pressure is tagged in the derivation).

build_mlvam

Multilayer vertically-averaged-and-moment SystemModel (state adds the per-layer r and pressure P modes).

build_sigma3d

Sigma-coordinate 3-D SystemModel; the closure-derived bed/surface conditions become BCs on the zeta faces.

build_kesme

SME SystemModel with the k and epsilon moments flagged positivity-constrained.

build_qrkesme

SME SystemModel with the sqrt(k) and sqrt(epsilon) moments flagged positivity-constrained.

build_system_model

Build the SystemModel of model with the builder for its _system_model_kind, through the sm_cache tiers when the cache is enabled. Parameter values are not part of the cache identity; the cache is off by default (ZOOMY_DERIVATION_CACHE=1 enables it, ZOOMY_DERIVATION_REBUILD=1 forces a rebuild).

API#

zoomy_core.systemmodel.model_builders.build_swe(model) → zoomy_core.systemmodel.system_model.SystemModel#

Shallow-water-equations SystemModel built straight from the model.

zoomy_core.systemmodel.model_builders.build_sme(model) → zoomy_core.systemmodel.system_model.SystemModel#

Shallow-moment-equations SystemModel with hydrostatic pressure tagged for well-balanced reconstruction.

References

  • Kowalski, Torrilhon 2019, https://doi.org/10.4208/cicp.OA-2017-0263

zoomy_core.systemmodel.model_builders.build_vam(model) → zoomy_core.systemmodel.system_model.SystemModel#

Vertically-averaged-and-moment SystemModel with pressure modes appended to the state.

References

  • Escalante et al. 2024, https://doi.org/10.1016/j.jcp.2024.112882

zoomy_core.systemmodel.model_builders.build_mlswe(model) → zoomy_core.systemmodel.system_model.SystemModel#

Multilayer shallow-water SystemModel (bed, total depth, per-layer momenta).

zoomy_core.systemmodel.model_builders.build_mlsme(model) → zoomy_core.systemmodel.system_model.SystemModel#

Multilayer shallow-moment SystemModel (per-layer hydrostatic pressure is tagged in the derivation).

zoomy_core.systemmodel.model_builders.build_mlvam(model) → zoomy_core.systemmodel.system_model.SystemModel#

Multilayer vertically-averaged-and-moment SystemModel (state adds the per-layer r and pressure P modes).

zoomy_core.systemmodel.model_builders.build_sigma3d(model) → zoomy_core.systemmodel.system_model.SystemModel#

Sigma-coordinate 3-D SystemModel; the closure-derived bed/surface conditions become BCs on the zeta faces.

zoomy_core.systemmodel.model_builders.build_kesme(model) → zoomy_core.systemmodel.system_model.SystemModel#

SME SystemModel with the k and epsilon moments flagged positivity-constrained.

zoomy_core.systemmodel.model_builders.build_qrkesme(model) → zoomy_core.systemmodel.system_model.SystemModel#

SME SystemModel with the sqrt(k) and sqrt(epsilon) moments flagged positivity-constrained.

zoomy_core.systemmodel.model_builders.build_system_model(model) → zoomy_core.systemmodel.system_model.SystemModel#

Build the SystemModel of model with the builder for its _system_model_kind, through the sm_cache tiers when the cache is enabled. Parameter values are not part of the cache identity; the cache is off by default (ZOOMY_DERIVATION_CACHE=1 enables it, ZOOMY_DERIVATION_REBUILD=1 forces a rebuild).