| 1 | 
 % $Header$ | 
 % $Header$ | 
| 2 | 
 % $Name$ | 
 % $Name$ | 
| 3 | 
  | 
  | 
| 4 | 
 \section{Example: Four layer Baroclinic Ocean Gyre In Spherical Coordinates} | 
 \section{Four Layer Baroclinic Ocean Gyre In Spherical Coordinates} | 
| 5 | 
 \label{sec:eg-fourlayer} | 
 \label{www:tutorials} | 
| 6 | 
  | 
 \label{sect:eg-fourlayer} | 
| 7 | 
  | 
  | 
| 8 | 
 \bodytext{bgcolor="#FFFFFFFF"} | 
 \bodytext{bgcolor="#FFFFFFFF"} | 
| 9 | 
  | 
  | 
| 20 | 
 This document describes an example experiment using MITgcm | 
 This document describes an example experiment using MITgcm | 
| 21 | 
 to simulate a baroclinic ocean gyre in spherical | 
 to simulate a baroclinic ocean gyre in spherical | 
| 22 | 
 polar coordinates. The barotropic | 
 polar coordinates. The barotropic | 
| 23 | 
 example experiment in section \ref{sec:eg-baro} | 
 example experiment in section \ref{sect:eg-baro} | 
| 24 | 
 illustrated how to configure the code for a single layer  | 
 illustrated how to configure the code for a single layer  | 
| 25 | 
 simulation in a Cartesian grid. In this example a similar physical problem | 
 simulation in a Cartesian grid. In this example a similar physical problem | 
| 26 | 
 is simulated, but the code is now configured | 
 is simulated, but the code is now configured | 
| 27 | 
 for four layers and in a spherical polar coordinate system. | 
 for four layers and in a spherical polar coordinate system. | 
| 28 | 
  | 
  | 
| 29 | 
 \subsection{Overview} | 
 \subsection{Overview} | 
| 30 | 
  | 
 \label{www:tutorials} | 
| 31 | 
  | 
  | 
| 32 | 
 This example experiment demonstrates using the MITgcm to simulate | 
 This example experiment demonstrates using the MITgcm to simulate | 
| 33 | 
 a baroclinic, wind-forced, ocean gyre circulation. The experiment  | 
 a baroclinic, wind-forced, ocean gyre circulation. The experiment  | 
| 45 | 
 according to latitude, $\varphi$ | 
 according to latitude, $\varphi$ | 
| 46 | 
  | 
  | 
| 47 | 
 \begin{equation} | 
 \begin{equation} | 
| 48 | 
 \label{EQ:fcori} | 
 \label{EQ:eg-fourlayer-fcori} | 
| 49 | 
 f(\varphi) = 2 \Omega \sin( \varphi ) | 
 f(\varphi) = 2 \Omega \sin( \varphi ) | 
| 50 | 
 \end{equation} | 
 \end{equation} | 
| 51 | 
   | 
   | 
| 63 | 
 $\tau_0$ is set to $0.1N m^{-2}$.  | 
 $\tau_0$ is set to $0.1N m^{-2}$.  | 
| 64 | 
 \\ | 
 \\ | 
| 65 | 
  | 
  | 
| 66 | 
 Figure \ref{FIG:simulation_config} | 
 Figure \ref{FIG:eg-fourlayer-simulation_config} | 
| 67 | 
 summarizes the configuration simulated. | 
 summarizes the configuration simulated. | 
| 68 | 
 In contrast to the example in section \ref{sec:eg-baro}, the  | 
 In contrast to the example in section \ref{sect:eg-baro}, the  | 
| 69 | 
 current experiment simulates a spherical polar domain. As indicated | 
 current experiment simulates a spherical polar domain. As indicated | 
| 70 | 
 by the axes in the lower left of the figure the model code works internally | 
 by the axes in the lower left of the figure the model code works internally | 
| 71 | 
 in a locally orthogonal coordinate $(x,y,z)$. For this experiment description  | 
 in a locally orthogonal coordinate $(x,y,z)$. For this experiment description  | 
| 84 | 
 linear | 
 linear | 
| 85 | 
  | 
  | 
| 86 | 
 \begin{equation} | 
 \begin{equation} | 
| 87 | 
 \label{EQ:linear1_eos} | 
 \label{EQ:eg-fourlayer-linear1_eos} | 
| 88 | 
 \rho = \rho_{0} ( 1 - \alpha_{\theta}\theta^{'} ) | 
 \rho = \rho_{0} ( 1 - \alpha_{\theta}\theta^{'} ) | 
| 89 | 
 \end{equation} | 
 \end{equation} | 
| 90 | 
  | 
  | 
| 91 | 
 \noindent which is implemented in the model as a density anomaly equation | 
 \noindent which is implemented in the model as a density anomaly equation | 
| 92 | 
  | 
  | 
| 93 | 
 \begin{equation} | 
 \begin{equation} | 
| 94 | 
 \label{EQ:linear1_eos_pert} | 
 \label{EQ:eg-fourlayer-linear1_eos_pert} | 
| 95 | 
 \rho^{'} = -\rho_{0}\alpha_{\theta}\theta^{'} | 
 \rho^{'} = -\rho_{0}\alpha_{\theta}\theta^{'} | 
| 96 | 
 \end{equation} | 
 \end{equation} | 
| 97 | 
  | 
  | 
| 116 | 
 imposed by setting the potential temperature, $\theta$, in each layer. | 
 imposed by setting the potential temperature, $\theta$, in each layer. | 
| 117 | 
 The vertical spacing, $\Delta z$, is constant and equal to $500$m. | 
 The vertical spacing, $\Delta z$, is constant and equal to $500$m. | 
| 118 | 
 } | 
 } | 
| 119 | 
 \label{FIG:simulation_config} | 
 \label{FIG:eg-fourlayer-simulation_config} | 
| 120 | 
 \end{figure} | 
 \end{figure} | 
| 121 | 
  | 
  | 
| 122 | 
 \subsection{Equations solved} | 
 \subsection{Equations solved} | 
| 123 | 
  | 
 \label{www:tutorials} | 
| 124 | 
 For this problem | 
 For this problem | 
| 125 | 
 the implicit free surface, {\bf HPE} (see section \ref{sec:hydrostatic_and_quasi-hydrostatic_forms}) form of the  | 
 the implicit free surface, {\bf HPE} (see section \ref{sect:hydrostatic_and_quasi-hydrostatic_forms}) form of the  | 
| 126 | 
 equations described in Marshall et. al \cite{marshall:97a} are | 
 equations described in Marshall et. al \cite{marshall:97a} are | 
| 127 | 
 employed. The flow is three-dimensional with just temperature, $\theta$, as  | 
 employed. The flow is three-dimensional with just temperature, $\theta$, as  | 
| 128 | 
 an active tracer.  The equation of state is linear. | 
 an active tracer.  The equation of state is linear. | 
| 136 | 
 follows | 
 follows | 
| 137 | 
  | 
  | 
| 138 | 
 \begin{eqnarray} | 
 \begin{eqnarray} | 
| 139 | 
 \label{EQ:model_equations} | 
 \label{EQ:eg-fourlayer-model_equations} | 
| 140 | 
 \frac{Du}{Dt} - fv +  | 
 \frac{Du}{Dt} - fv +  | 
| 141 | 
   \frac{1}{\rho}\frac{\partial p^{\prime}}{\partial \lambda} -  | 
   \frac{1}{\rho}\frac{\partial p^{\prime}}{\partial \lambda} -  | 
| 142 | 
   A_{h}\nabla_{h}^2u - A_{z}\frac{\partial^{2}u}{\partial z^{2}}  | 
   A_{h}\nabla_{h}^2u - A_{z}\frac{\partial^{2}u}{\partial z^{2}}  | 
| 205 | 
  | 
  | 
| 206 | 
  | 
  | 
| 207 | 
 \subsection{Discrete Numerical Configuration} | 
 \subsection{Discrete Numerical Configuration} | 
| 208 | 
  | 
 \label{www:tutorials} | 
| 209 | 
  | 
  | 
| 210 | 
  The domain is discretised with  | 
  The domain is discretised with  | 
| 211 | 
 a uniform grid spacing in latitude and longitude | 
 a uniform grid spacing in latitude and longitude | 
| 225 | 
  | 
  | 
| 226 | 
 The procedure for generating a set of internal grid variables from a | 
 The procedure for generating a set of internal grid variables from a | 
| 227 | 
 spherical polar grid specification is discussed in section  | 
 spherical polar grid specification is discussed in section  | 
| 228 | 
 \ref{sec:spatial_discrete_horizontal_grid}. | 
 \ref{sect:spatial_discrete_horizontal_grid}. | 
| 229 | 
  | 
  | 
| 230 | 
 \noindent\fbox{ \begin{minipage}{5.5in} | 
 \noindent\fbox{ \begin{minipage}{5.5in} | 
| 231 | 
 {\em S/R INI\_SPHERICAL\_POLAR\_GRID} ({\em | 
 {\em S/R INI\_SPHERICAL\_POLAR\_GRID} ({\em | 
| 246 | 
  | 
  | 
| 247 | 
  | 
  | 
| 248 | 
  | 
  | 
| 249 | 
 As described in \ref{sec:tracer_equations}, the time evolution of potential  | 
 As described in \ref{sect:tracer_equations}, the time evolution of potential  | 
| 250 | 
 temperature,  | 
 temperature,  | 
| 251 | 
 $\theta$, (equation \ref{eq:eg_fourl_theta}) | 
 $\theta$, (equation \ref{eq:eg_fourl_theta}) | 
| 252 | 
 is evaluated prognostically. The centered second-order scheme with | 
 is evaluated prognostically. The centered second-order scheme with | 
| 253 | 
 Adams-Bashforth time stepping described in section  | 
 Adams-Bashforth time stepping described in section  | 
| 254 | 
 \ref{sec:tracer_equations_abII} is used to step forward the temperature  | 
 \ref{sect:tracer_equations_abII} is used to step forward the temperature  | 
| 255 | 
 equation. Prognostic terms in | 
 equation. Prognostic terms in | 
| 256 | 
 the momentum equations are solved using flux form as | 
 the momentum equations are solved using flux form as | 
| 257 | 
 described in section \ref{sec:flux-form_momentum_eqautions}. | 
 described in section \ref{sect:flux-form_momentum_eqautions}. | 
| 258 | 
 The pressure forces that drive the fluid motions, ( | 
 The pressure forces that drive the fluid motions, ( | 
| 259 | 
 $\frac{\partial p^{'}}{\partial \lambda}$ and $\frac{\partial p^{'}}{\partial \varphi}$), are found by summing pressure due to surface  | 
 $\frac{\partial p^{'}}{\partial \lambda}$ and $\frac{\partial p^{'}}{\partial \varphi}$), are found by summing pressure due to surface  | 
| 260 | 
 elevation $\eta$ and the hydrostatic pressure. The hydrostatic part of the  | 
 elevation $\eta$ and the hydrostatic pressure. The hydrostatic part of the  | 
| 262 | 
 height, $\eta$, is diagnosed using an implicit scheme. The pressure | 
 height, $\eta$, is diagnosed using an implicit scheme. The pressure | 
| 263 | 
 field solution method is described in sections | 
 field solution method is described in sections | 
| 264 | 
 \ref{sect:pressure-method-linear-backward} and  | 
 \ref{sect:pressure-method-linear-backward} and  | 
| 265 | 
 \ref{sec:finding_the_pressure_field}. | 
 \ref{sect:finding_the_pressure_field}. | 
| 266 | 
  | 
  | 
| 267 | 
 \subsubsection{Numerical Stability Criteria} | 
 \subsubsection{Numerical Stability Criteria} | 
| 268 | 
  | 
 \label{www:tutorials} | 
| 269 | 
  | 
  | 
| 270 | 
 The Laplacian viscosity coefficient, $A_{h}$, is set to $400 m s^{-1}$. | 
 The Laplacian viscosity coefficient, $A_{h}$, is set to $400 m s^{-1}$. | 
| 271 | 
 This value is chosen to yield a Munk layer width, | 
 This value is chosen to yield a Munk layer width, | 
| 272 | 
  | 
  | 
| 273 | 
 \begin{eqnarray} | 
 \begin{eqnarray} | 
| 274 | 
 \label{EQ:munk_layer} | 
 \label{EQ:eg-fourlayer-munk_layer} | 
| 275 | 
 M_{w} = \pi ( \frac { A_{h} }{ \beta } )^{\frac{1}{3}} | 
 M_{w} = \pi ( \frac { A_{h} }{ \beta } )^{\frac{1}{3}} | 
| 276 | 
 \end{eqnarray} | 
 \end{eqnarray} | 
| 277 | 
  | 
  | 
| 287 | 
 parameter to the horizontal Laplacian friction | 
 parameter to the horizontal Laplacian friction | 
| 288 | 
  | 
  | 
| 289 | 
 \begin{eqnarray} | 
 \begin{eqnarray} | 
| 290 | 
 \label{EQ:laplacian_stability} | 
 \label{EQ:eg-fourlayer-laplacian_stability} | 
| 291 | 
 S_{l} = 4 \frac{A_{h} \delta t}{{\Delta x}^2} | 
 S_{l} = 4 \frac{A_{h} \delta t}{{\Delta x}^2} | 
| 292 | 
 \end{eqnarray} | 
 \end{eqnarray} | 
| 293 | 
  | 
  | 
| 299 | 
 $1\times10^{-2} {\rm m}^2{\rm s}^{-1}$. The associated stability limit | 
 $1\times10^{-2} {\rm m}^2{\rm s}^{-1}$. The associated stability limit | 
| 300 | 
  | 
  | 
| 301 | 
 \begin{eqnarray} | 
 \begin{eqnarray} | 
| 302 | 
 \label{EQ:laplacian_stability_z} | 
 \label{EQ:eg-fourlayer-laplacian_stability_z} | 
| 303 | 
 S_{l} = 4 \frac{A_{z} \delta t}{{\Delta z}^2} | 
 S_{l} = 4 \frac{A_{z} \delta t}{{\Delta z}^2} | 
| 304 | 
 \end{eqnarray} | 
 \end{eqnarray} | 
| 305 | 
  | 
  | 
| 312 | 
 \noindent The numerical stability for inertial oscillations | 
 \noindent The numerical stability for inertial oscillations | 
| 313 | 
  | 
  | 
| 314 | 
 \begin{eqnarray} | 
 \begin{eqnarray} | 
| 315 | 
 \label{EQ:inertial_stability} | 
 \label{EQ:eg-fourlayer-inertial_stability} | 
| 316 | 
 S_{i} = f^{2} {\delta t}^2 | 
 S_{i} = f^{2} {\delta t}^2 | 
| 317 | 
 \end{eqnarray} | 
 \end{eqnarray} | 
| 318 | 
  | 
  | 
| 325 | 
 speed of $ | \vec{u} | = 2 ms^{-1}$ | 
 speed of $ | \vec{u} | = 2 ms^{-1}$ | 
| 326 | 
  | 
  | 
| 327 | 
 \begin{eqnarray} | 
 \begin{eqnarray} | 
| 328 | 
 \label{EQ:cfl_stability} | 
 \label{EQ:eg-fourlayer-cfl_stability} | 
| 329 | 
 C_{a} = \frac{| \vec{u} | \delta t}{ \Delta x} | 
 C_{a} = \frac{| \vec{u} | \delta t}{ \Delta x} | 
| 330 | 
 \end{eqnarray} | 
 \end{eqnarray} | 
| 331 | 
  | 
  | 
| 337 | 
 propagating at $2~{\rm m}~{\rm s}^{-1}$  | 
 propagating at $2~{\rm m}~{\rm s}^{-1}$  | 
| 338 | 
  | 
  | 
| 339 | 
 \begin{eqnarray} | 
 \begin{eqnarray} | 
| 340 | 
 \label{EQ:igw_stability} | 
 \label{EQ:eg-fourlayer-igw_stability} | 
| 341 | 
 S_{c} = \frac{c_{g} \delta t}{ \Delta x} | 
 S_{c} = \frac{c_{g} \delta t}{ \Delta x} | 
| 342 | 
 \end{eqnarray} | 
 \end{eqnarray} | 
| 343 | 
  | 
  | 
| 345 | 
 stability limit of 0.25. | 
 stability limit of 0.25. | 
| 346 | 
    | 
    | 
| 347 | 
 \subsection{Code Configuration} | 
 \subsection{Code Configuration} | 
| 348 | 
  | 
 \label{www:tutorials} | 
| 349 | 
 \label{SEC:eg_fourl_code_config} | 
 \label{SEC:eg_fourl_code_config} | 
| 350 | 
  | 
  | 
| 351 | 
 The model configuration for this experiment resides under the  | 
 The model configuration for this experiment resides under the  | 
| 365 | 
 to these files associated with this experiment. | 
 to these files associated with this experiment. | 
| 366 | 
  | 
  | 
| 367 | 
 \subsubsection{File {\it input/data}} | 
 \subsubsection{File {\it input/data}} | 
| 368 | 
  | 
 \label{www:tutorials} | 
| 369 | 
  | 
  | 
| 370 | 
 This file, reproduced completely below, specifies the main parameters  | 
 This file, reproduced completely below, specifies the main parameters  | 
| 371 | 
 for the experiment. The parameters that are significant for this configuration | 
 for the experiment. The parameters that are significant for this configuration | 
| 953 | 
 \begin{rawhtml}</PRE>\end{rawhtml} | 
 \begin{rawhtml}</PRE>\end{rawhtml} | 
| 954 | 
  | 
  | 
| 955 | 
 \subsubsection{File {\it input/data.pkg}} | 
 \subsubsection{File {\it input/data.pkg}} | 
| 956 | 
  | 
 \label{www:tutorials} | 
| 957 | 
  | 
  | 
| 958 | 
 This file uses standard default values and does not contain | 
 This file uses standard default values and does not contain | 
| 959 | 
 customisations for this experiment. | 
 customisations for this experiment. | 
| 960 | 
  | 
  | 
| 961 | 
 \subsubsection{File {\it input/eedata}} | 
 \subsubsection{File {\it input/eedata}} | 
| 962 | 
  | 
 \label{www:tutorials} | 
| 963 | 
  | 
  | 
| 964 | 
 This file uses standard default values and does not contain | 
 This file uses standard default values and does not contain | 
| 965 | 
 customisations for this experiment. | 
 customisations for this experiment. | 
| 966 | 
  | 
  | 
| 967 | 
 \subsubsection{File {\it input/windx.sin\_y}} | 
 \subsubsection{File {\it input/windx.sin\_y}} | 
| 968 | 
  | 
 \label{www:tutorials} | 
| 969 | 
  | 
  | 
| 970 | 
 The {\it input/windx.sin\_y} file specifies a two-dimensional ($x,y$)  | 
 The {\it input/windx.sin\_y} file specifies a two-dimensional ($x,y$)  | 
| 971 | 
 map of wind stress ,$\tau_{x}$, values. The units used are $Nm^{-2}$ (the | 
 map of wind stress ,$\tau_{x}$, values. The units used are $Nm^{-2}$ (the | 
| 979 | 
 code for creating the {\it input/windx.sin\_y} file. | 
 code for creating the {\it input/windx.sin\_y} file. | 
| 980 | 
  | 
  | 
| 981 | 
 \subsubsection{File {\it input/topog.box}} | 
 \subsubsection{File {\it input/topog.box}} | 
| 982 | 
  | 
 \label{www:tutorials} | 
| 983 | 
  | 
  | 
| 984 | 
  | 
  | 
| 985 | 
 The {\it input/topog.box} file specifies a two-dimensional ($x,y$)  | 
 The {\it input/topog.box} file specifies a two-dimensional ($x,y$)  | 
| 991 | 
 code for creating the {\it input/topog.box} file. | 
 code for creating the {\it input/topog.box} file. | 
| 992 | 
  | 
  | 
| 993 | 
 \subsubsection{File {\it code/SIZE.h}} | 
 \subsubsection{File {\it code/SIZE.h}} | 
| 994 | 
  | 
 \label{www:tutorials} | 
| 995 | 
  | 
  | 
| 996 | 
 Two lines are customized in this file for the current experiment | 
 Two lines are customized in this file for the current experiment | 
| 997 | 
  | 
  | 
| 1018 | 
 \end{small} | 
 \end{small} | 
| 1019 | 
  | 
  | 
| 1020 | 
 \subsubsection{File {\it code/CPP\_OPTIONS.h}} | 
 \subsubsection{File {\it code/CPP\_OPTIONS.h}} | 
| 1021 | 
  | 
 \label{www:tutorials} | 
| 1022 | 
  | 
  | 
| 1023 | 
 This file uses standard default values and does not contain | 
 This file uses standard default values and does not contain | 
| 1024 | 
 customisations for this experiment. | 
 customisations for this experiment. | 
| 1025 | 
  | 
  | 
| 1026 | 
  | 
  | 
| 1027 | 
 \subsubsection{File {\it code/CPP\_EEOPTIONS.h}} | 
 \subsubsection{File {\it code/CPP\_EEOPTIONS.h}} | 
| 1028 | 
  | 
 \label{www:tutorials} | 
| 1029 | 
  | 
  | 
| 1030 | 
 This file uses standard default values and does not contain | 
 This file uses standard default values and does not contain | 
| 1031 | 
 customisations for this experiment. | 
 customisations for this experiment. | 
| 1032 | 
  | 
  | 
| 1033 | 
 \subsubsection{Other Files } | 
 \subsubsection{Other Files } | 
| 1034 | 
  | 
 \label{www:tutorials} | 
| 1035 | 
  | 
  | 
| 1036 | 
 Other files relevant to this experiment are | 
 Other files relevant to this experiment are | 
| 1037 | 
 \begin{itemize} | 
 \begin{itemize} | 
| 1044 | 
 \end{itemize} | 
 \end{itemize} | 
| 1045 | 
  | 
  | 
| 1046 | 
 \subsection{Running The Example} | 
 \subsection{Running The Example} | 
| 1047 | 
  | 
 \label{www:tutorials} | 
| 1048 | 
 \label{SEC:running_the_example} | 
 \label{SEC:running_the_example} | 
| 1049 | 
  | 
  | 
| 1050 | 
 \subsubsection{Code Download} | 
 \subsubsection{Code Download} | 
| 1051 | 
  | 
 \label{www:tutorials} | 
| 1052 | 
  | 
  | 
| 1053 | 
  In order to run the examples you must first download the code distribution. | 
  In order to run the examples you must first download the code distribution. | 
| 1054 | 
 Instructions for downloading the code can be found in section | 
 Instructions for downloading the code can be found in section | 
| 1055 | 
 \ref{sect:obtainingCode}. | 
 \ref{sect:obtainingCode}. | 
| 1056 | 
  | 
  | 
| 1057 | 
 \subsubsection{Experiment Location} | 
 \subsubsection{Experiment Location} | 
| 1058 | 
  | 
 \label{www:tutorials} | 
| 1059 | 
  | 
  | 
| 1060 | 
  This example experiments is located under the release sub-directory | 
  This example experiments is located under the release sub-directory | 
| 1061 | 
  | 
  | 
| 1063 | 
 {\it verification/exp2/ } | 
 {\it verification/exp2/ } | 
| 1064 | 
  | 
  | 
| 1065 | 
 \subsubsection{Running the Experiment} | 
 \subsubsection{Running the Experiment} | 
| 1066 | 
  | 
 \label{www:tutorials} | 
| 1067 | 
  | 
  | 
| 1068 | 
  To run the experiment | 
  To run the experiment | 
| 1069 | 
  | 
  |