You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: components/omega/doc/design/OmegaV1GoverningEqns.md
+66-50Lines changed: 66 additions & 50 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,7 +11,7 @@ Add later, if it seems necessary. There is a toc on the left bar.
11
11
-->
12
12
13
13
14
-
## Overview
14
+
## 1. Overview
15
15
16
16
This design document describes the governing equations for Omega, the Ocean Model for E3SM Global Applications. Overall, Omega is an unstructured-mesh ocean model based on TRiSK numerical methods ([Thuburn et al. 2009](https://www.sciencedirect.com/science/article/pii/S0021999109004434)) that is specifically designed for modern exascale computing architectures. The algorithms in Omega will be mostly identical to those in MPAS-Ocean, but it will be written in c++ rather than Fortran in order to take advantage of libraries to run on GPUs, such as Kokkos ([Trott et al. 2022](https://ieeexplore.ieee.org/document/9485033)). Significant differences between MPAS-Ocean and Omega are:
17
17
@@ -24,28 +24,28 @@ The planned versions of Omega are:
24
24
-**Omega-1.0: Layered ocean, idealized, no surface fluxes.** This adds active temperature, salinity, and density as a function of pressure in the vertical. Vertical advection and diffusion terms are added to the momentum and tracer equations. An equation of state and simple vertical mixing, such as constant coefficient, are needed. Capability and testing are similar to [Petersen et al. 2015](http://www.sciencedirect.com/science/article/pii/S1463500314001796). Tests include overflow, internal gravity wave, baroclinic channel, seamount, and vertical merry-go-round.
25
25
-**Omega-1.1: Layered ocean, idealized, with surface fluxes.** Addition of simple vertical mixing scheme such as Pacanowski & Philander; nonlinear equation of state (TEOS10); tracer surface restoring to a constant field; constant wind forcing; and flux-corrected transport for horizontal advection. Testing will be with the baroclinic gyre and single column tests of surface fluxes and vertical mixing.
26
26
-**Omega-2.0: Coupled within E3SM, ocean only.** Ability to run C cases (active ocean only) within E3SM. Requires addition of E3SM coupling infrastructure; simple analysis (time-averaged output of mean, min, max); split baroclinic-barotropic time; global bounds checking on state. Testing and analysis similar to [Ringler et al. 2013](https://www.sciencedirect.com/science/article/pii/S1463500313000760), except Omega uses a non-Boussinesq formulation.
27
-
-**Omega-2.1: E3SM fully coupled** Ability to run G cases (active ocean and sea ice) and B cases (all components active) within E3SM. This will include: a full vertical mixing scheme, such as KPP; frazil ice formation in the ocean; and a submosescale parameterization. Parameterizations mean for lower resolutions, such as Gent-McWilliams and Redi mixing, will not be in this version. Simulations can be run at high resolution and compared to previous E3SM simulations, including [Petersen et al. 2019](https://agupubs.onlinelibrary.wiley.com/doi/abs/10.1029/2018MS001373) and [Caldwell et al. 2019](https://agupubs.onlinelibrary.wiley.com/doi/10.1029/2019MS001870).
27
+
-**Omega-2.1: E3SM fully coupled** Ability to run G cases (active ocean and sea ice) and B cases (all components active) within E3SM. This will include: a full vertical mixing scheme, such as KPP; frazil ice formation in the ocean; and a submosescale parameterization. Omega 2.1 will mostly be run at eddy-resolving resolutions, and will not include parameterizations for lower resolutions such as Gent-McWilliams and Redi mixing. Simulations will be compared to previous E3SM simulations, including [Caldwell et al. 2019](https://agupubs.onlinelibrary.wiley.com/doi/10.1029/2019MS001870) and [Petersen et al. 2019](https://agupubs.onlinelibrary.wiley.com/doi/abs/10.1029/2018MS001373).
28
28
29
29
This document describes the governing equations for the layered ocean model, which are applicable for Omega-1.0 onwards. Specific terms, such as the pressure gradient, vertical mixing, and parameterizations, are left in their general form here but are described in more detail in other design documents.
30
30
31
-
## Requirements
31
+
## 2. Requirements
32
32
33
33
The requirements in the [Omega-0 design document](OmegaV0ShallowWater) still apply. Additional design requirements for Omega-1 are:
34
34
35
35
### Omega will be an incompressible, hydrostatic, non-Boussinesq ocean model.
36
36
See discussion in introduction. Non-Boussinesq changes the independant vertical variable to pressure, and mass conservation equation to be pressure-thickness, $h=\Delta p$.
37
37
38
38
### Omega will use TEOS10 for the equation of state.
39
-
See additional EOS design document.
39
+
See additional [EOS design document](EOS)
40
40
41
41
### Omega-1.0 will add new terms for the pressure gradient, vertical mixing, and vertical advection.
42
42
See individual design documents for each term.
43
43
44
-
## Governing Equations
44
+
## 3. Governing Equations
45
45
46
46
### MPAS-Ocean Equations of Motion
47
47
48
-
The MPAS-Ocean layered formulation solves the following equations for momentum, thickness, and tracers at layer $k$. These are continuous in the horizontal and discrete in the vertical.
48
+
The MPAS-Ocean layered formulation are provided here for reference. MPAS-Ocean solves for momentum, thickness, and tracers at layer $k$. These are continuous in the horizontal and discrete in the vertical.
49
49
50
50
$$
51
51
\frac{\partial {\mathbf u}_k}{\partial t}
@@ -74,17 +74,15 @@ $$ (mpaso-continuous-tracer)
74
74
The layer thickness $h$, vertical velocity $w$, pressure $p$, and tracer $\varphi$, are cell-centered quantities, while the horizontal velocity ${\mathbf u}$ and $e$ superscript are variables interpolated to the cell edges.
75
75
76
76
### Continuous Equations
77
-
The continuous form of the conservation equations are as follows [Kundu et al. 2024](https://www.amazon.com/Fluid-Mechanics-Pijush-K-Kundu/dp/012405935X), chapter 4, eqns 4.7 and 4.22. This is before any assumptions are made, so this is a compressible, non-hydrostatic, non-Boussinesq fluid. Here all variables are a function of $(x,y,z)$, $\bf u$ denotes the horizontal velocity vector, $w$ is the vertical velocity, ${\bf u} \otimes {\bf u} = {\bf u}{\bf u}^T$ is the tensor product, $\nabla$ is the horizontal gradient, and other variables defined in the [section below](#variable-definitions).
77
+
The continuous form of the conservation equations are as follows [Kundu et al. 2024](https://www.amazon.com/Fluid-Mechanics-Pijush-K-Kundu/dp/012405935X), chapter 4, eqns 4.7 and 4.22. This is before any assumptions are made, so this is a compressible, non-hydrostatic, non-Boussinesq fluid. Here all variables are a function of $(x,y,z)$, ${\bf u}_{3D}$ denotes the three-dimensional velocity vector, ${\bf u}_{3D} \otimes {\bf u}_{3D} = {\bf u}_{3D}{\bf u}_{3D}^T$ is the tensor product, $\nabla_{3D}$ is the three-dimensional gradient, $D/Dt$ is the material derivative, and other variables defined in the [Variable Defitionion Section below](#variable-definitions).
Here we have express the following terms as a general operators, with examples of specific forms provided below: the dissipation ${\bf D}^u$, momemtum forcing ${\bf F}^u$, tracer diffusion $D^\varphi$, and tracer sources and sinks $S^\varphi$. The momentum equation can be rewritten using the product rule on $\rho {\bf u}$, mass conservation, and dividing by $\rho$, as:
Note that the advective term may be replaced with the vector identity
117
+
Geophysical fluids such as the ocean and atmosphere are rotating and stratified, and horizontal velocities are orders of magnitude larger than vertical velocities. It is therefore convenient to separate the horizontal and vertical as ${\bf u}_{3D} = \left( {\bf u}, w \right)$ and $\nabla_{3D} = \left( \nabla, d/dz \right)$ where $z$ is the vertical direction in a local coordinate frame on the earth's surface and $w$ is the vertical velocity. The gravitational force $g {\bf k}$ is added in the vertical. The rotating frame of reference results in the Coriolis force $f {\bf k} \times {\bf u} \equiv f {\bf u}^\perp$, where $f$ is the Coriolis parameter and ${\bf u}^\perp$ is the horizontal velocity rotated $90^o$ from $\bf u$. See any textbook in the [References](#references) for a full derivation.
118
+
119
+
The horizontal parts of the advective term may be replaced with the vector identity
where $\zeta$ is relative vorticity and $K$ is kinetic energy. This is used to produce the final formulation below.
128
+
where $\zeta$ is relative vorticity and $K$ is kinetic energy. This step separates the horizontal advection into non-divergent and non-rotational components, which is useful in the final TRiSK formulation.
133
129
134
130
For a primitive equation ocean model, we assume the fluid is incompressible and hydrostatic. For Omega we are not making the Boussinesq assumption, so all density terms are the full density. In particular, the density coefficient of the pressure gradient in [](#continuous-momentum-R13App) is not a constant, as it is in primitive equation models like POP and MPAS-Ocean.
assume that advection of vertical momentum $Dw/Dt$, dissipation, and forcing are small, and that the first order balance is between pressure gradient and gravity,
146
+
assume that advection of vertical momentum $Dw/Dt$, dissipation, and forcing are small, and that the first order balance is between pressure gradient and buoyancy,
151
147
152
148
$$
153
149
\frac{\partial p}{\partial z}
@@ -164,35 +160,56 @@ The constitutive equation is the equation of state,
164
160
$$
165
161
\rho = f_{eos}(p,T,S).
166
162
$$ (continuous-eos-R13App)
167
-
where are temperature and salinity ($T$ and $S$) are examples of tracers $\varphi$.
163
+
where temperature and salinity ($T$ and $S$) are examples of tracers $\varphi$.
168
164
169
-
Momentum diffusion terms include
165
+
The final form of the continuous conservations equations for a non-Boussinesq, incompressible, non-hydrostatic ocean are
and may also include a Rayleigh drag and eventually parameterizations. Momentum forcing is due to wind stress and bottom drag. Similarly, the tracer diffusion terms include Laplacian (del2), and vertical viscosity,
and may also include a del-4 term. Sources and sinks include surface fluxes from the atmosphere and land, and bio-geo-chemical reactions.
211
+
and may also include a biharmonic (del4) term and parameterizations such as Redi mixing. Sources and sinks include surface fluxes from the atmosphere and land, and bio-geo-chemical reactions.
212
+
All of the diffusion and forcing terms are written in more detail with the [Discrete Equations](#discrete-equations) below.
196
213
197
214
### Layered Equations
198
215
@@ -365,11 +382,10 @@ Table 1. Definition of variables
@@ -415,7 +431,7 @@ Table 1. Definition of variables
415
431
### Operator Formulation
416
432
The horizontal operator stencils remain the same as those given in [Omega-0 design document](OmegaV0ShallowWater.md#operator-formulation).
417
433
418
-
## Verification and Testing
434
+
## 4. Verification and Testing
419
435
420
436
Capability and testing are similar to [Petersen et al. 2015](http://www.sciencedirect.com/science/article/pii/S1463500314001796). The following tests are in idealized domains and do not require surface fluxes or surface restoring. For the following tests to show results comparable to those published with other models, the full dynamic sequence of density, pressure, momentum, and advection must work correctly. The successful completion of the following tests is a validation of the primitive equation functions in Omega 1.0. All of the following tests may exercise a linear equation of state or the nonlinear TEOS10. The first four tests quantify the anomalous mixing caused by the numerical schemes. The first five are on cartesian planes with regular hexagon meshes.
0 commit comments