1 |
\section{Gridalt - Alternate Grid Package} |
\subsection{Gridalt - Alternate Grid Package} |
2 |
|
\label{sec:pkg:gridalt} |
3 |
|
\begin{rawhtml} |
4 |
|
<!-- CMIREDIR:package_gridalt: --> |
5 |
|
\end{rawhtml} |
6 |
|
|
7 |
|
\subsubsection {Introduction} |
8 |
|
|
9 |
|
The gridalt package is designed to allow different components of the MITgcm to |
10 |
|
be run using horizontal and/or vertical grids which are different from the main |
11 |
|
model grid. The gridalt routines handle the definition of the all the various |
12 |
|
alternative grid(s) and the mappings between them and the MITgcm grid. |
13 |
|
The implementation of the gridalt package which allows the high end atmospheric |
14 |
|
physics (fizhi) to be run on a high resolution and quasi terrain-following vertical |
15 |
|
grid is documented here. The package has also (with some user modifications) been used |
16 |
|
for other calculations within the GCM. |
17 |
|
|
18 |
|
The rationale for implementing the atmospheric physics on a high resolution vertical |
19 |
|
grid involves the fact that the MITgcm $p^*$ (or any pressure-type) coordinate cannot |
20 |
|
maintain the vertical resolution near the surface as the bottom topography rises above |
21 |
|
sea level. The vertical length scales near the ground are small and can vary |
22 |
|
on small time scales, and the vertical grid must be adequate to resolve them. |
23 |
|
Many studies with both regional and global atmospheric models have demonstrated the |
24 |
|
improvements in the simulations when the vertical resolution near the surface is |
25 |
|
increased (\cite{bm:99,Inn:01,wo:98,breth:99}). Some of the benefit of increased resolution |
26 |
|
near the surface is realized by employing the higher resolution for the computation of the |
27 |
|
forcing due to turbulent and convective processes in the atmosphere. |
28 |
|
|
29 |
|
The parameterizations of atmospheric subgrid scale processes are all essentially |
30 |
|
one-dimensional in nature, and the computation of the terms in the equations of |
31 |
|
motion due to these processes can be performed for the air column over one grid point |
32 |
|
at a time. The vertical grid on which these computations take place can therefore be |
33 |
|
entirely independant of the grid on which the equations of motion are integrated, and |
34 |
|
the 'tendency' terms can be interpolated to the vertical grid on which the equations |
35 |
|
of motion are integrated. A modified $p^*$ coordinate, which adjusts to the local |
36 |
|
terrain and adds additional levels between the lower levels of the existing $p^*$ grid |
37 |
|
(and perhaps between the levels near the tropopause as well), is implemented. The |
38 |
|
vertical discretization is different for each grid point, although it consist of the |
39 |
|
same number of levels. Additional 'sponge' levels aloft are added when needed. The levels |
40 |
|
of the physics grid are constrained to fit exactly into the existing $p^*$ grid, simplifying |
41 |
|
the mapping between the two vertical coordinates. This is illustrated as follows: |
42 |
|
|
|
\subsection {Introduction} |
|
|
To take advantage of a `high end' turbulence parameterization |
|
|
(and convection parameterization), the vertical resolution near the surface |
|
|
must be increased substantially as compared to the vertical resolution needed |
|
|
aloft. This cannot be accomplished if the high end physics is computed using |
|
|
the $p^*$ coordinate currently in use in the MIT gcm. |
|
|
|
|
|
The gridalt package was developed to allow the high end atmospheric physics |
|
|
(fizhi) physics to be run on a separate grid from the hydrodynamics. The package |
|
|
could (with some user modification) be used in conjunction with other packages |
|
|
or for other calculations within the GCM. For the case of the atmospheric |
|
|
physics, a modified $p^*$ coordinate, which adds additional levels between |
|
|
the lower levels of the existing $p^*$ grid (and perhaps between the levels near |
|
|
the tropopause as well), is implemented. The vertical discretization is |
|
|
different for each grid point, although it consist of the same number of |
|
|
levels. This is illustrated as follows: |
|
43 |
\begin{figure}[htbp] |
\begin{figure}[htbp] |
44 |
\vspace*{-0.4in} |
\vspace*{-0.4in} |
45 |
\begin{center} |
\begin{center} |
46 |
\includegraphics[height=2.4in]{vertical.eps} |
\includegraphics[height=2.4in]{part6/vertical.eps} |
47 |
|
\caption{Vertical discretization for the MITgcm (dark grey lines) and for the |
48 |
|
atmospheric physics (light grey lines). In this implementation, all MITgcm level |
49 |
|
interfaces must coincide with atmospheric physics level interfaces.} |
50 |
\end{center} |
\end{center} |
51 |
\end{figure} |
\end{figure} |
52 |
|
|
53 |
\vspace*{-0.5in} |
The algorithm presented here retains the state variables on the high resolution 'physics' |
54 |
In addition to computing the physical forcing terms of the momentum, |
grid as well as on the coarser resolution 'dynamics` grid, and ensures that the two |
55 |
thermodynamic and humidity equations on the modified (higher resolution) |
estimates of the state 'agree' on the coarse resolution grid. It would have been possible |
56 |
grid, the higher resolution structure of the atmosphere (the boundary |
to implement a technique in which the tendencies due to atmospheric physics are computed |
57 |
layer) is retained between calculations. This neccessitates a second |
on the high resolution grid and the state variables are retained at low resolution only. |
58 |
set of evolution equations for the atmospheric state variables on the |
This, however, for the case of the turbulence parameterization, would mean that the |
59 |
modified grid. If the equations for the evolution of the state |
turbulent kinetic energy source terms, and all the turbulence terms that are written |
60 |
on $p^*$ can be expressed as: |
in terms of gradients of the mean flow, cannot really be computed making use of the fine |
61 |
|
structure in the vertical. |
62 |
|
|
63 |
|
\subsubsection{Equations on Both Grids} |
64 |
|
|
65 |
|
In addition to computing the physical forcing terms of the momentum, thermodynamic and humidity |
66 |
|
equations on the modified (higher resolution) grid, the higher resolution structure of the |
67 |
|
atmosphere (the boundary layer) is retained between physics calculations. This neccessitates |
68 |
|
a second set of evolution equations for the atmospheric state variables on the modified grid. |
69 |
|
If the equation for the evolution of $U$ on $p^*$ can be expressed as: |
70 |
\[ |
\[ |
71 |
\left . {\partial U \over {\partial t}} \right |_{p^*}^{total} = |
\left . {\partial U \over {\partial t}} \right |_{p^*}^{total} = |
72 |
\left . {\partial U \over {\partial t}} \right |_{p^*}^{dynamics} + |
\left . {\partial U \over {\partial t}} \right |_{p^*}^{dynamics} + |
73 |
\left . {\partial U \over {\partial t}} \right |_{p^*}^{physics} |
\left . {\partial U \over {\partial t}} \right |_{p^*}^{physics} |
74 |
\] |
\] |
75 |
where the physics forcing terms on $p^*$ have been computed from a |
where the physics forcing terms on $p^*$ have been mapped from the modified grid, then an additional |
76 |
mapping from the modified grid, then an additional set of equations |
equation to govern the evolution of $U$ (for example) on the modified grid is written: |
|
to govern the evolution of $U$ on the modified grid are written: |
|
77 |
\[ |
\[ |
78 |
\left . {\partial U \over {\partial t}} \right |_{p^{*m}}^{total} = |
\left . {\partial U \over {\partial t}} \right |_{p^{*m}}^{total} = |
79 |
\left . {\partial U \over {\partial t}} \right |_{p^{*m}}^{dynamics} + |
\left . {\partial U \over {\partial t}} \right |_{p^{*m}}^{dynamics} + |
80 |
\left . {\partial U \over {\partial t}} \right |_{p^{*m}}^{physics} + |
\left . {\partial U \over {\partial t}} \right |_{p^{*m}}^{physics} + |
81 |
\gamma ({\left . U \right |_{p^*}} - {\left . U \right |_{p^{*m}}}) |
\gamma ({\left . U \right |_{p^*}} - {\left . U \right |_{p^{*m}}}) |
82 |
\] |
\] |
83 |
where $p^{*m}$ refers to the modified higher resolution grid, and |
where $p^{*m}$ refers to the modified higher resolution grid, and the dynamics forcing terms have |
84 |
the dynamics forcing terms have been mapped from the $p^*$ space. |
been mapped from $p^*$ space. The last term on the RHS is a relaxation term, meant to constrain |
85 |
The last term on the RHS is a relaxation term, meant to constrain |
the state variables on the modified vertical grid to `track' the state variables on the $p^*$ grid |
86 |
the state variables on the modified vertical grid to `track' the |
on some time scale, governed by $\gamma$. In the present implementation, $\gamma = 1$, requiring |
87 |
state variables on the $p^*$ grid on some time scale, $\gamma$. |
an immediate agreement between the two 'states'. |
|
|
|
|
\subsection {Key subroutines, parameters and files } |
|
|
|
|
|
\subsection {Dos and donts} |
|
|
|
|
|
In the context of a Held-Suarez type of model experiment (located |
|
|
in the fizhi-hs.cs-32x32x10 verification experiment) with |
|
|
topography, the forcing terms which represent the physics are computed on |
|
|
the modified grid. The forcing terms are computed as functions of the |
|
|
state variables on the modified grid. The tendencies are then interpolated |
|
|
to the standard grid |
|
88 |
|
|
89 |
\subsection {Gridalt Reference} |
\subsubsection{Time stepping Sequence} |
90 |
|
If we write $T_{phys}$ as the temperature (or any other state variable) on the high |
91 |
|
resolution physics grid, and $T_{dyn}$ as the temperature on the coarse vertical resolution |
92 |
|
dynamics grid, then: |
93 |
|
|
94 |
|
\begin{enumerate} |
95 |
|
%\itemsep{-0.05in} |
96 |
|
|
97 |
|
\item{Compute the tendency due to physics processes.} |
98 |
|
|
99 |
|
\item{Advance the physics state: ${{T^{n+1}}^{**}}_{phys}(l) = {T^n}_{phys}(l) + \delta T_{phys}$.} |
100 |
|
|
101 |
|
\item{Interpolate the physics tendency to the dynamics grid, and advance the dynamics |
102 |
|
state by physics and dynamics tendencies: |
103 |
|
${T^{n+1}}_{dyn}(L) = {T^n}_{dyn}(L) + \delta T_{dyn}(L) + [\delta T _{phys}(l)](L)$.} |
104 |
|
|
105 |
|
\item{Interpolate the dynamics tendency to the physics grid, and update the physics |
106 |
|
grid due to dynamics tendencies: |
107 |
|
${{T^{n+1}}^*}_{phys}(l)$ = ${{T^{n+1}}^{**}}_{phys}(l) + {\delta T_{dyn}(L)}(l)$.} |
108 |
|
|
109 |
|
\item{Apply correction term to physics state to account for divergence from dynamics state: |
110 |
|
${T^{n+1}}_{phys}(l)$ = ${{T^{n+1}}^*}_{phys}(l) + \gamma \{ T_{dyn}(L) - [T_{phys}(l)](L) \}(l)$.} \\ |
111 |
|
Where $\gamma=1$ here. |
112 |
|
|
113 |
|
\end{enumerate} |
114 |
|
|
115 |
|
\subsubsection{Interpolation} |
116 |
|
In order to minimize the correction terms for the state variables on the alternative, |
117 |
|
higher resolution grid, the vertical interpolation scheme must be constructed so that |
118 |
|
a dynamics-to-physics interpolation can be exactly reversed with a physics-to-dynamics mapping. |
119 |
|
The simple scheme employed to achieve this is: |
120 |
|
|
121 |
|
Coarse to fine:\ |
122 |
|
For all physics layers l in dynamics layer L, $ T_{phys}(l) = \{T_{dyn}(L)\} = T_{dyn}(L) $. |
123 |
|
|
124 |
|
Fine to coarse:\ |
125 |
|
For all physics layers l in dynamics layer L, $T_{dyn}(L) = [T_{phys}(l)] = \int{T_{phys} dp } $. |
126 |
|
|
127 |
|
Where $\{\}$ is defined as the dynamics-to-physics operator and $[ ]$ is the physics-to-dynamics operator, $T$ stands for any state variable, and the subscripts $phys$ and $dyn$ stand for variables on |
128 |
|
the physics and dynamics grids, respectively. |
129 |
|
|
130 |
|
\subsubsection {Key subroutines, parameters and files } |
131 |
|
|
132 |
|
\subsubsection {Dos and donts} |
133 |
|
|
134 |
|
\subsubsection {Gridalt Reference} |