Difference between revisions of "Equations of Motion"

From WikiROMS
Jump to navigationJump to search
 
(12 intermediate revisions by 4 users not shown)
Line 1: Line 1:
='''Equations of Motion'''==
<div class="title">Equations of Motion</div>
The primitive equations in Cartesian coordinates are shown here. The momentum balance in  
__TOC__
the <math>\,\!x</math>- and <math>\,\!y</math>-directions are:
The primitive equations in Cartesian coordinates are shown here. The momentum balance in the <math>x</math>- and <math>y</math>-directions are:


:<math>\frac{\partial u}{\partial t} + \vec{v} \cdot \nabla u - fv = - \frac{\partial \phi}{\partial x} + {F}_u + {D}_u</math>
{| class="eqno"
|<math display="block">\frac{\partial u}{\partial t} + \vec{v} \cdot \nabla u - fv = - \frac{\partial \phi}{\partial x} - {\partial \over \partial z} \left( \overline{u'w'} - \nu {\partial u \over \partial z} \right)+ {\cal F}_u + {\cal D}_u </math><!--\eqno{(1)}-->
|(1)
|}


:<math>\frac{\partial v}{\partial t} + \vec{v} \cdot \nabla v + fu = - \frac{\partial \phi}{\partial y} + {F}_v + {D}_v</math>
{| class="eqno"
|<math display="block">\frac{\partial v}{\partial t} + \vec{v} \cdot \nabla v + fu = - \frac{\partial \phi}{\partial y} - {\partial \over \partial z} \left( \overline{v'w'} - \nu {\partial v \over \partial z} \right) + {\cal F}_v + {\cal D}_v </math><!--\eqno{(2)}-->
|(2)
|}


The time evolution of the
The time evolution of a scalar concentration field, <math>C(x,y,z,t)</math> (e.g. salinity, temperature, or nutrients), is governed by the advective-diffusive equation:
potential temperature and salinity fields, <math>\,\!T(x,y,z,t)</math> and
<math>\,\!S(x,y,z,t)</math>, are governed by the advective-diffusive equations:
 
:<math>\frac{\partial T}{\partial t} + \vec{v} \cdot \nabla T ={F}_T + {D}_T</math>
 
:<math>\frac{\partial S}{\partial t} + \vec{v} \cdot \nabla S ={F}_S + {D}_S</math>


{| class="eqno"
|<math display="block">\frac{\partial C}{\partial t} + \vec{v} \cdot \nabla C = -{\partial \over \partial z} \left( \overline{C'w'} - \nu_\theta {\partial C \over \partial z} \right) + {\cal F}_C + {\cal D}_C </math> <!--\eqno{(3)}-->
|(3)
|}
The equation of state is given by:
The equation of state is given by:


:<math>\rho = \rho(T,S,P)\,\!</math>
{| class="eqno"
|<math display="block">\rho = \rho(T,S,P) </math><!--\eqno{(4)}-->
|(4)
|}


In the Boussinesq approximation, density
In the Boussinesq approximation, density variations are neglected in the momentum equations except in their
variations are neglected in the momentum equations except in their
contribution to the buoyancy force in the vertical momentum equation.  
contribution to the buoyancy force in the vertical momentum equation.  
Under the hydrostatic approximation, it is further
Under the hydrostatic approximation, it is further
Line 26: Line 32:
force:
force:


:<math>\frac{\partial \phi}{\partial z} = \frac{-\rho g}{\rho_o}</math>
{| class="eqno"
|<math display="block">\frac{\partial \phi}{\partial z} = -\frac{\rho g}{\rho_o} </math><!--\eqno{(5)}-->
|(5)
|}


The final equation expresses the continuity equation
The final equation expresses the continuity equation
for an incompressible fluid:
for an incompressible fluid:


:<math>\frac{\partial u}{\partial x} + \frac{\partial v}{\partial y} + \frac{\partial w}{\partial z} = 0</math>
{| class="eqno"
|<math display="block">\frac{\partial u}{\partial x} + \frac{\partial v}{\partial y} + \frac{\partial w}{\partial z} = 0 </math><!--\eqno{(6)}-->
|(6)
|}


For the moment, the effects of forcing
For the moment, the effects of forcing
and dissipation will be represented by the schematic terms <math>F\,\!</math>
and horizontal dissipation will be represented by the schematic terms <math>{\cal F}</math>
and <math>D\,\!</math>, respectively.  The horizontal and vertical mixing will
and <math>{\cal D}</math>, respectively.  The horizontal and vertical mixing will
be described more fully in [[Horizontal Mixing]] and [[Vertical Mixing Parameterizations]].
be described more fully in [[Horizontal Mixing]] and [[Vertical Mixing Parameterizations]].
The variables used are shown here:
The variables used are shown here:
{| border="1" cellspacing="0" cellpadding="5" align="center"
{| border="1" cellspacing="0" cellpadding="5" align="center"
| <math>{D}_u, {D}_v, {D}_T, {D}_S\,\!</math>
| <math>{\cal D}_u, {\cal D}_v, {\cal D}_C</math>
| diffusive terms
|style="width: 350px;"| horizontal diffusive terms
|-
|-
| <math>{F}_u, {F}_v, {F}_T, {F}_S\,\!</math>
| <math>{\cal F}_u, {\cal F}_v, {\cal F}_C</math>
| forcing terms
| forcing terms
|-
|-
| <math>f(x,y)\,\!</math>
| <math>f(x,y)</math>
| Coriolis parameter
| Coriolis parameter
|-
|-
| <math>g\,\!</math>
| <math>g</math>
| acceleration of gravity
| acceleration of gravity
|-
|-
| <math>h(x,y)\,\!</math>
| <math>h(x,y)</math>
| bottom depth
| bottom depth
|-
|-
| <math>\nu, \kappa\,\!</math>
| <math>\nu, \nu_\theta</math>
| horizontal viscosity and diffusivity
| molecular viscosity and diffusivity
|-
|-
| <math>K_m, K_T, K_S\,\!</math>
| <math>K_m, K_C</math>
| vertical viscosity and diffusivity
| vertical eddy viscosity and diffusivity
|-
|-
| <math>P\,\!</math>
| <math>P</math>
| total pressure <math>P \approx -\rho_o gz</math>
| total pressure <math>P \approx -\rho_o gz</math>
|-
|-
| <math>\phi(x,y,z,t)\,\!</math>
| <math>\phi(x,y,z,t)</math>
| dynamic pressure <math>\phi = \left(P/\rho_o \right)</math>
| dynamic pressure <math>\phi = \left(P/\rho_o \right)</math>
|-
|-
| <math>\rho_o + \rho(x,y,z,t)\,\!</math>
| <math>\rho_o + \rho(x,y,z,t)</math>
| total ''in situ'' density
| total ''in situ'' density
|-
|-
| <math>S(x,y,z,t)\,\!</math>
| <math>S(x,y,z,t)</math>
| salinity
| salinity
|-
|-
| <math>t\,\!</math>
| <math>t</math>
| time  
| time  
|-
|-
| <math>T(x,y,z,t)\,\!</math>
| <math>T(x,y,z,t)</math>
| potential temperature
| potential temperature
|-
|-
| <math>u,v,w\,\!</math>
| <math>u,v,w</math>
| the (<math>x,y,z\,\!</math>) components of vector velocity <math>\vec{v}\,\!</math>
| the (<math>x,y,z</math>) components of vector velocity <math>\vec{v}</math>
|-
|-
| <math>x,y\,\!</math>
| <math>x,y</math>
| horizontal coordinates
| horizontal coordinates
|-
|-
| <math>z\,\!</math>
| <math>z</math>
| vertical coordinate
| vertical coordinate
|-
|-
| <math>\zeta(x,y,t)\,\!</math>
| <math>\zeta(x,y,t)</math>
| the surface elevation
| the surface elevation
|-
|}
|}
In the ocean, vertical mixing due to molecular viscosity is extremely weak compared to the turbulent mixing, so the terms involving <math>\nu</math> and <math>\nu_\theta</math> can be neglected.
To close these equations, parameterizations of the Reynolds stresses and turbulent tracer fluxes are introduced as functions of the other variables and vertical turbulent eddy viscosity and eddy diffusivity coefficients, <math>K_M</math> and <math>K_C</math>, respectively.
{| class="eqno"
|<math display="block">\overline{u'w'} = -K_M {\partial u \over \partial z};\qquad
\overline{v'w'} = -K_M {\partial v \over \partial z};\qquad
\overline{C'w'} = -K_C {\partial C \over \partial z}. </math> <!--\eqno{(7)}-->
|(7)
|}
An overbar represents a time average and a prime represents a fluctuation about the mean.
Details on ROMS options for computing <math>K_M</math> and <math>K_C</math> are described in [[Vertical Mixing Parameterizations]].


==Vertical Boundary Conditions==
==Vertical Boundary Conditions==
The vertical boundary conditions can be prescribed as follows:


The vertical boundary conditions can be prescribed as follows:
:top (<math>z = \zeta(x,y,t))</math>:
 
{| class="eqno"
|<math display="block">\begin{align}&K_m \, \frac{\partial u}{\partial z} = \tau^x_s (x,y,t) \\
&K_m \, \frac{\partial v}{\partial z} = \tau_s^y(x,y,t) \\
&K_C \, \frac{\partial C}{\partial z} = {Q_C \over \rho_o c_P} \\
&w = {\partial \zeta \over \partial t} \end{align}</math> <!--\eqno{(8)}-->
|(8)
|}


:top (<math>z = \zeta(x,y,t))\,\!</math>:
:and bottom (<math>z = -h(x,y)</math>):
::<math>K_m \, \frac{\partial u}{\partial z} = \tau^x_s (x,y,t)</math>
:: <math>K_m \, \frac{\partial v}{\partial z} = \tau_s^y(x,y,t)</math>
::<math>K_T \, \frac{\partial T}{\partial z} = {Q_T \over \rho_o c_P} + {1 \over \rho_o c_P} {dQ_T \over dT} (T - T_{\rm ref})</math>
::<math>K_S \, \frac{\partial S}{\partial z} = {(E-P)S \over \rho_o}</math>
::<math>w = {\partial \zeta \over \partial t}</math>


:and bottom (<math>z = -h(x,y)\,\!</math>):
{| class="eqno"
::<math>K_m \, \frac{\partial u}{\partial z} = \tau_b^x (x,y,t)</math>
|<math display="block">\begin{align}&K_m \, \frac{\partial u}{\partial z} = \tau_b^x (x,y,t) \\
::<math>K_m \, \frac{\partial v}{\partial z} = \tau_b^y (x,y,t)</math>
&K_m \, \frac{\partial v}{\partial z} = \tau_b^y (x,y,t) \\
::<math>K_T \, \frac{\partial T}{\partial z} = 0</math>
&K_C \, \frac{\partial C}{\partial z} = 0 \\
::<math>K_S \, \frac{\partial S}{\partial z} = 0</math>
&- w + \vec{v} \cdot \nabla h = 0 \end{align}</math> <!-- \eqno{(9)}-->
::<math>- w + \vec{v} \cdot \nabla h = 0</math>
|(9)
|}


The new variables above are:
The new variables above are:
Line 115: Line 146:
! Description
! Description
|-
|-
| <math>E-P\,\!</math>
| <math>Q_C</math>
| evaporation minus precipitation
| surface concentration flux
|-
|-
| <math>\gamma_1, \gamma_2\,\!</math>
| <math>\tau_s^x , \tau_s^y</math>
| linear and quadratic bottom stress coefficients
|-
| <math>Q_T\,\!</math>
| surface heat flux
|-
| <math>\tau_s^x , \tau_s^y\,\!</math>
| surface wind stress
| surface wind stress
|-
|-
| <math>\tau_b^x , \tau_b^y\,\!</math>
| <math>\tau_b^x , \tau_b^y</math>
| bottom stress
| bottom stress
|-
| <math>T_{\rm ref}\,\!</math>
| surface reference temperature
|-
|-
|}
|}


The surface boundary condition variables are defined in the table above.
The surface boundary condition variables are defined in the table above.
Since <math>Q_T\,\!</math> is a strong function of the surface
Since <math>Q_T</math> is a strong function of the surface
temperature, it is also prudent to include a correction term for the
temperature, we usually choose to compute <math>Q_T</math> using the surface
change in <math>Q\,\!</math> as the surface temperature drifts away from the reference
temperature and the atmospheric fields in an atmospheric bulk flux
temperature that was used in computing <math>Q_T\,\!</math>. On the variable bottom,
parameterization. This bulk flux routine also computes the wind
<math>z = -h(x,y)\,\!</math>, the horizontal velocity components are constrained to
stress from the winds.
accommodate a prescribed bottom stress which is a sum of linear and
quadratic terms (actually one or the other, or a log layer, depending on the cpp options):
 
:<math>\tau_b^x = (\gamma_1 + \gamma_2 \sqrt{u^2 + v^2} ) u</math>


:<math>\tau_b^y = (\gamma_1 + \gamma_2 \sqrt{u^2 + v^2} ) v</math>
On the variable bottom, <math>z = -h(x,y)</math>, the horizontal velocity components are constrained to
 
accommodate a prescribed bottom stress which is a choice of linear, quadratic, or a log layer, depending on the [[Options]]. The vertical scalar concentration fluxes may also be prescribed at the bottom, although they are usually set to zero.
The vertical heat and salt flux may also be prescribed at the bottom,
although they are usually set to zero.


==Horizontal Boundary Conditions==
==Horizontal Boundary Conditions==
As distributed, the model can easily be configured for a periodic
As distributed, the model can easily be configured for a periodic
channel, a doubly periodic domain, or a closed basin.  Code is also
channel, a doubly periodic domain, or a closed basin.  Code is also
included for open boundaries which may or may not work for your
included for open boundaries which may or may not work for your
particular application.  Appropriate boundary conditions are
particular application.  Appropriate boundary conditions are
provided for <math>u,v,T,S,\,\!</math> and <math>\zeta\,\!</math>.
provided for <math>u,v,C</math>, and <math>\zeta</math>, as described in [[Boundary Conditions]].
At every timestep the subroutines '''xxxx''' and
'''yyyy''' are called to fill in the necessary boundary values.


The model domain is logically rectangular, but it is possible to
The model domain is logically rectangular, but it is possible to mask out land areas on the boundary and in the interior. Boundary conditions on these masked regions are straightforward, with a choice of no-slip or free-slip walls.
mask out land areas on the boundary and in the interior. Boundary
conditions on these masked regions are straightforward,
with a choice of no-slip or free-slip walls.


If biharmonic friction is used, a higher order boundary condition
If biharmonic friction is used, a higher order boundary condition must also be provided. The model currently has this built into the code where the biharmonic terms are calculated.  The high order boundary conditions used for <math>u</math> are <math>\frac{\partial}{\partial x} \left(
must also be provided. The model currently has this built into the
\frac{h\nu}{mn} \frac{\partial ^2 u}{\partial x^2} \right) = 0</math> on the eastern and western boundaries and <math>\frac{\partial}{\partial y} \left(\frac{h\nu}{mn} \frac{\partial ^2 u}{\partial y^2} \right) = 0</math> on the northern and southern boundaries.  The boundary conditions for <math>v</math> and <math>C</math> are similar.  These boundary conditions were chosen because they preserve the property of no gain or loss of volume-integrated momentum or scalar concentration.
code where the biharmonic terms are calculated.  The high order
boundary conditions used for <math>u\,\!</math> are <math>\frac{\partial}{\partial x} \left(
\frac{h\nu}{mn} \frac{\partial ^2 u}{\partial x^2} \right) = 0</math> on the
eastern and western boundaries and <math>\frac{\partial}{\partial y} \left(
\frac{h\nu}{mn} \frac{\partial ^2 u}{\partial y^2} \right) = 0\,</math> on the
northern and southern boundaries.  The boundary conditions for <math>v,T,\,\!</math>
and <math>S\,\!</math> are similar.  These boundary conditions were chosen because
they preserve the property of no gain or loss of volume-integrated
momentum, temperature, or salt.

Latest revision as of 17:05, 20 January 2022

Equations of Motion

The primitive equations in Cartesian coordinates are shown here. The momentum balance in the - and -directions are:

(1)
(2)

The time evolution of a scalar concentration field, (e.g. salinity, temperature, or nutrients), is governed by the advective-diffusive equation:

(3)

The equation of state is given by:

(4)

In the Boussinesq approximation, density variations are neglected in the momentum equations except in their contribution to the buoyancy force in the vertical momentum equation. Under the hydrostatic approximation, it is further assumed that the vertical pressure gradient balances the buoyancy force:

(5)

The final equation expresses the continuity equation for an incompressible fluid:

(6)

For the moment, the effects of forcing and horizontal dissipation will be represented by the schematic terms and , respectively. The horizontal and vertical mixing will be described more fully in Horizontal Mixing and Vertical Mixing Parameterizations. The variables used are shown here:

horizontal diffusive terms
forcing terms
Coriolis parameter
acceleration of gravity
bottom depth
molecular viscosity and diffusivity
vertical eddy viscosity and diffusivity
total pressure
dynamic pressure
total in situ density
salinity
time
potential temperature
the () components of vector velocity
horizontal coordinates
vertical coordinate
the surface elevation

In the ocean, vertical mixing due to molecular viscosity is extremely weak compared to the turbulent mixing, so the terms involving and can be neglected.

To close these equations, parameterizations of the Reynolds stresses and turbulent tracer fluxes are introduced as functions of the other variables and vertical turbulent eddy viscosity and eddy diffusivity coefficients, and , respectively.

(7)

An overbar represents a time average and a prime represents a fluctuation about the mean.

Details on ROMS options for computing and are described in Vertical Mixing Parameterizations.

Vertical Boundary Conditions

The vertical boundary conditions can be prescribed as follows:

top (:
(8)
and bottom ():
(9)

The new variables above are:

Variable Description
surface concentration flux
surface wind stress
bottom stress

The surface boundary condition variables are defined in the table above. Since is a strong function of the surface temperature, we usually choose to compute using the surface temperature and the atmospheric fields in an atmospheric bulk flux parameterization. This bulk flux routine also computes the wind stress from the winds.

On the variable bottom, , the horizontal velocity components are constrained to accommodate a prescribed bottom stress which is a choice of linear, quadratic, or a log layer, depending on the Options. The vertical scalar concentration fluxes may also be prescribed at the bottom, although they are usually set to zero.

Horizontal Boundary Conditions

As distributed, the model can easily be configured for a periodic channel, a doubly periodic domain, or a closed basin. Code is also included for open boundaries which may or may not work for your particular application. Appropriate boundary conditions are provided for , and , as described in Boundary Conditions.

The model domain is logically rectangular, but it is possible to mask out land areas on the boundary and in the interior. Boundary conditions on these masked regions are straightforward, with a choice of no-slip or free-slip walls.

If biharmonic friction is used, a higher order boundary condition must also be provided. The model currently has this built into the code where the biharmonic terms are calculated. The high order boundary conditions used for are on the eastern and western boundaries and on the northern and southern boundaries. The boundary conditions for and are similar. These boundary conditions were chosen because they preserve the property of no gain or loss of volume-integrated momentum or scalar concentration.