/[MITgcm]/manual/s_examples/barotropic_gyre/baro.tex
ViewVC logotype

Annotation of /manual/s_examples/barotropic_gyre/baro.tex

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.12 - (hide annotations) (download) (as text)
Sat Oct 16 03:40:13 2004 UTC (20 years, 9 months ago) by edhill
Branch: MAIN
CVS Tags: checkpoint57l_post
Changes since 1.11: +4 -1 lines
File MIME type: application/x-tex
 o add HTML comments as a step towards "URL permanence" which will help
   solve:
   - stale links from the CMI web site
   - rotten indexing by bonniefy.pl
 o also cleanup a merge-mangle in diagnostics.tex

1 edhill 1.12 % $Header: /u/gcmpack/manual/part3/case_studies/barotropic_gyre/baro.tex,v 1.11 2004/10/13 05:06:26 cnh Exp $
2 cnh 1.2 % $Name: $
3 adcroft 1.1
4     \bodytext{bgcolor="#FFFFFFFF"}
5    
6     %\begin{center}
7     %{\Large \bf Using MITgcm to Simulate a Barotropic Ocean Gyre In Cartesian
8     %Coordinates}
9     %
10     %\vspace*{4mm}
11     %
12     %\vspace*{3mm}
13     %{\large May 2001}
14     %\end{center}
15    
16 cnh 1.8 This is the first in a series of tutorials describing
17 adcroft 1.1 example MITgcm numerical experiments. The example experiments
18 cnh 1.4 include both straightforward examples of idealized geophysical
19 adcroft 1.1 fluid simulations and more involved cases encompassing
20     large scale modeling and
21     automatic differentiation. Both hydrostatic and non-hydrostatic
22 cnh 1.3 experiments are presented, as well as experiments employing
23 cnh 1.4 Cartesian, spherical-polar and cube-sphere coordinate systems.
24 adcroft 1.1 These ``case study'' documents include information describing
25     the experimental configuration and detailed information on how to
26     configure the MITgcm code and input files for each experiment.
27    
28 cnh 1.11 \section[Barotropic Gyre MITgcm Example]{Barotropic Ocean Gyre In Cartesian Coordinates}
29 cnh 1.8 \label{sect:eg-baro}
30 adcroft 1.9 \label{www:tutorials}
31 edhill 1.12 \begin{rawhtml}
32     <!-- CMIREDIR:eg-baro: -->
33     \end{rawhtml}
34 cnh 1.8
35 adcroft 1.1
36     This example experiment demonstrates using the MITgcm to simulate
37 cnh 1.4 a Barotropic, wind-forced, ocean gyre circulation. The experiment
38     is a numerical rendition of the gyre circulation problem similar
39 adcroft 1.1 to the problems described analytically by Stommel in 1966
40     \cite{Stommel66} and numerically in Holland et. al \cite{Holland75}.
41    
42     In this experiment the model
43     is configured to represent a rectangular enclosed box of fluid,
44     $1200 \times 1200 $~km in lateral extent. The fluid is $5$~km deep and is forced
45     by a constant in time zonal wind stress, $\tau_x$, that varies sinusoidally
46 cnh 1.4 in the ``north-south'' direction. Topologically the grid is Cartesian and
47 adcroft 1.1 the coriolis parameter $f$ is defined according to a mid-latitude beta-plane
48     equation
49    
50     \begin{equation}
51 cnh 1.8 \label{EQ:eg-baro-fcori}
52 adcroft 1.1 f(y) = f_{0}+\beta y
53     \end{equation}
54    
55     \noindent where $y$ is the distance along the ``north-south'' axis of the
56     simulated domain. For this experiment $f_{0}$ is set to $10^{-4}s^{-1}$ in
57 cnh 1.8 (\ref{EQ:eg-baro-fcori}) and $\beta = 10^{-11}s^{-1}m^{-1}$.
58 adcroft 1.1 \\
59     \\
60     The sinusoidal wind-stress variations are defined according to
61    
62     \begin{equation}
63 cnh 1.8 \label{EQ:eg-baro-taux}
64 adcroft 1.1 \tau_x(y) = \tau_{0}\sin(\pi \frac{y}{L_y})
65     \end{equation}
66    
67     \noindent where $L_{y}$ is the lateral domain extent ($1200$~km) and
68     $\tau_0$ is set to $0.1N m^{-2}$.
69     \\
70     \\
71 cnh 1.8 Figure \ref{FIG:eg-baro-simulation_config}
72 cnh 1.4 summarizes the configuration simulated.
73 adcroft 1.1
74 edhill 1.10 %% === eh3 ===
75 adcroft 1.1 \begin{figure}
76 edhill 1.10 %% \begin{center}
77     %% \resizebox{7.5in}{5.5in}{
78     %% \includegraphics*[0.2in,0.7in][10.5in,10.5in]
79     %% {part3/case_studies/barotropic_gyre/simulation_config.eps} }
80     %% \end{center}
81     \centerline{
82     \scalefig{.95}
83     \epsfbox{part3/case_studies/barotropic_gyre/simulation_config.eps}
84     }
85 adcroft 1.1 \caption{Schematic of simulation domain and wind-stress forcing function
86     for barotropic gyre numerical experiment. The domain is enclosed bu solid
87     walls at $x=$~0,1200km and at $y=$~0,1200km.}
88 cnh 1.8 \label{FIG:eg-baro-simulation_config}
89 adcroft 1.1 \end{figure}
90    
91 cnh 1.3 \subsection{Equations Solved}
92 adcroft 1.9 \label{www:tutorials}
93 cnh 1.3 The model is configured in hydrostatic form. The implicit free surface form of the
94 adcroft 1.6 pressure equation described in Marshall et. al \cite{marshall:97a} is
95 cnh 1.3 employed.
96 cnh 1.4 A horizontal Laplacian operator $\nabla_{h}^2$ provides viscous
97 adcroft 1.1 dissipation. The wind-stress momentum input is added to the momentum equation
98     for the ``zonal flow'', $u$. Other terms in the model
99 cnh 1.4 are explicitly switched off for this experiment configuration (see section
100 cnh 1.3 \ref{SEC:code_config} ), yielding an active set of equations solved in this
101     configuration as follows
102 adcroft 1.1
103     \begin{eqnarray}
104 cnh 1.8 \label{EQ:eg-baro-model_equations}
105 cnh 1.3 \frac{Du}{Dt} - fv +
106     g\frac{\partial \eta}{\partial x} -
107     A_{h}\nabla_{h}^2u
108 adcroft 1.1 & = &
109     \frac{\tau_{x}}{\rho_{0}\Delta z}
110     \\
111     \frac{Dv}{Dt} + fu + g\frac{\partial \eta}{\partial y} -
112 cnh 1.3 A_{h}\nabla_{h}^2v
113 adcroft 1.1 & = &
114     0
115     \\
116     \frac{\partial \eta}{\partial t} + \nabla_{h}\cdot \vec{u}
117     &=&
118     0
119     \end{eqnarray}
120    
121     \noindent where $u$ and $v$ and the $x$ and $y$ components of the
122 cnh 1.3 flow vector $\vec{u}$.
123 adcroft 1.1 \\
124 cnh 1.3
125    
126     \subsection{Discrete Numerical Configuration}
127 adcroft 1.9 \label{www:tutorials}
128 cnh 1.3
129     The domain is discretised with
130     a uniform grid spacing in the horizontal set to
131     $\Delta x=\Delta y=20$~km, so
132     that there are sixty grid cells in the $x$ and $y$ directions. Vertically the
133     model is configured with a single layer with depth, $\Delta z$, of $5000$~m.
134 adcroft 1.1
135     \subsubsection{Numerical Stability Criteria}
136 adcroft 1.9 \label{www:tutorials}
137 adcroft 1.1
138 cnh 1.4 The Laplacian dissipation coefficient, $A_{h}$, is set to $400 m s^{-1}$.
139 adcroft 1.5 This value is chosen to yield a Munk layer width \cite{adcroft:95},
140 adcroft 1.1
141     \begin{eqnarray}
142 cnh 1.8 \label{EQ:eg-baro-munk_layer}
143 adcroft 1.1 M_{w} = \pi ( \frac { A_{h} }{ \beta } )^{\frac{1}{3}}
144     \end{eqnarray}
145    
146     \noindent of $\approx 100$km. This is greater than the model
147     resolution $\Delta x$, ensuring that the frictional boundary
148     layer is well resolved.
149     \\
150    
151     \noindent The model is stepped forward with a
152     time step $\delta t=1200$secs. With this time step the stability
153 adcroft 1.5 parameter to the horizontal Laplacian friction \cite{adcroft:95}
154 adcroft 1.1
155    
156    
157     \begin{eqnarray}
158 cnh 1.8 \label{EQ:eg-baro-laplacian_stability}
159 adcroft 1.1 S_{l} = 4 \frac{A_{h} \delta t}{{\Delta x}^2}
160     \end{eqnarray}
161    
162     \noindent evaluates to 0.012, which is well below the 0.3 upper limit
163     for stability.
164     \\
165    
166     \noindent The numerical stability for inertial oscillations
167 adcroft 1.5 \cite{adcroft:95}
168 adcroft 1.1
169     \begin{eqnarray}
170 cnh 1.8 \label{EQ:eg-baro-inertial_stability}
171 adcroft 1.1 S_{i} = f^{2} {\delta t}^2
172     \end{eqnarray}
173    
174     \noindent evaluates to $0.0144$, which is well below the $0.5$ upper
175     limit for stability.
176     \\
177    
178 adcroft 1.5 \noindent The advective CFL \cite{adcroft:95} for an extreme maximum
179 adcroft 1.1 horizontal flow speed of $ | \vec{u} | = 2 ms^{-1}$
180    
181     \begin{eqnarray}
182 cnh 1.8 \label{EQ:eg-baro-cfl_stability}
183 adcroft 1.1 S_{a} = \frac{| \vec{u} | \delta t}{ \Delta x}
184     \end{eqnarray}
185    
186     \noindent evaluates to 0.12. This is approaching the stability limit
187     of 0.5 and limits $\delta t$ to $1200s$.
188    
189     \subsection{Code Configuration}
190 adcroft 1.9 \label{www:tutorials}
191 cnh 1.8 \label{SEC:eg-baro-code_config}
192 adcroft 1.1
193     The model configuration for this experiment resides under the
194     directory {\it verification/exp0/}. The experiment files
195     \begin{itemize}
196     \item {\it input/data}
197     \item {\it input/data.pkg}
198     \item {\it input/eedata},
199     \item {\it input/windx.sin\_y},
200     \item {\it input/topog.box},
201     \item {\it code/CPP\_EEOPTIONS.h}
202     \item {\it code/CPP\_OPTIONS.h},
203     \item {\it code/SIZE.h}.
204     \end{itemize}
205 cnh 1.4 contain the code customizations and parameter settings for this
206     experiments. Below we describe the customizations
207 adcroft 1.1 to these files associated with this experiment.
208    
209     \subsubsection{File {\it input/data}}
210 adcroft 1.9 \label{www:tutorials}
211 adcroft 1.1
212     This file, reproduced completely below, specifies the main parameters
213     for the experiment. The parameters that are significant for this configuration
214     are
215    
216     \begin{itemize}
217    
218     \item Line 7, \begin{verbatim} viscAh=4.E2, \end{verbatim} this line sets
219 cnh 1.4 the Laplacian friction coefficient to $400 m^2s^{-1}$
220 adcroft 1.1 \item Line 10, \begin{verbatim} beta=1.E-11, \end{verbatim} this line sets
221     $\beta$ (the gradient of the coriolis parameter, $f$) to $10^{-11} s^{-1}m^{-1}$
222    
223     \item Lines 15 and 16
224     \begin{verbatim}
225     rigidLid=.FALSE.,
226     implicitFreeSurface=.TRUE.,
227     \end{verbatim}
228     these lines suppress the rigid lid formulation of the surface
229     pressure inverter and activate the implicit free surface form
230     of the pressure inverter.
231    
232     \item Line 27,
233     \begin{verbatim}
234     startTime=0,
235     \end{verbatim}
236     this line indicates that the experiment should start from $t=0$
237 cnh 1.4 and implicitly suppresses searching for checkpoint files associated
238 adcroft 1.1 with restarting an numerical integration from a previously saved state.
239    
240     \item Line 29,
241     \begin{verbatim}
242     endTime=12000,
243     \end{verbatim}
244     this line indicates that the experiment should start finish at $t=12000s$.
245     A restart file will be written at this time that will enable the
246     simulation to be continued from this point.
247    
248     \item Line 30,
249     \begin{verbatim}
250     deltaTmom=1200,
251     \end{verbatim}
252     This line sets the momentum equation timestep to $1200s$.
253    
254     \item Line 39,
255     \begin{verbatim}
256     usingCartesianGrid=.TRUE.,
257     \end{verbatim}
258     This line requests that the simulation be performed in a
259 cnh 1.4 Cartesian coordinate system.
260 adcroft 1.1
261     \item Line 41,
262     \begin{verbatim}
263     delX=60*20E3,
264     \end{verbatim}
265     This line sets the horizontal grid spacing between each x-coordinate line
266     in the discrete grid. The syntax indicates that the discrete grid
267     should be comprise of $60$ grid lines each separated by $20 \times 10^{3}m$
268     ($20$~km).
269    
270     \item Line 42,
271     \begin{verbatim}
272     delY=60*20E3,
273     \end{verbatim}
274     This line sets the horizontal grid spacing between each y-coordinate line
275     in the discrete grid to $20 \times 10^{3}m$ ($20$~km).
276    
277     \item Line 43,
278     \begin{verbatim}
279     delZ=5000,
280     \end{verbatim}
281     This line sets the vertical grid spacing between each z-coordinate line
282     in the discrete grid to $5000m$ ($5$~km).
283    
284     \item Line 46,
285     \begin{verbatim}
286     bathyFile='topog.box'
287     \end{verbatim}
288     This line specifies the name of the file from which the domain
289     bathymetry is read. This file is a two-dimensional ($x,y$) map of
290     depths. This file is assumed to contain 64-bit binary numbers
291     giving the depth of the model at each grid cell, ordered with the x
292     coordinate varying fastest. The points are ordered from low coordinate
293     to high coordinate for both axes. The units and orientation of the
294     depths in this file are the same as used in the MITgcm code. In this
295     experiment, a depth of $0m$ indicates a solid wall and a depth
296     of $-5000m$ indicates open ocean. The matlab program
297     {\it input/gendata.m} shows an example of how to generate a
298     bathymetry file.
299    
300    
301     \item Line 49,
302     \begin{verbatim}
303     zonalWindFile='windx.sin_y'
304     \end{verbatim}
305     This line specifies the name of the file from which the x-direction
306     surface wind stress is read. This file is also a two-dimensional
307     ($x,y$) map and is enumerated and formatted in the same manner as the
308     bathymetry file. The matlab program {\it input/gendata.m} includes example
309     code to generate a valid {\bf zonalWindFile} file.
310    
311     \end{itemize}
312    
313     \noindent other lines in the file {\it input/data} are standard values
314     that are described in the MITgcm Getting Started and MITgcm Parameters
315     notes.
316    
317     \begin{small}
318     \input{part3/case_studies/barotropic_gyre/input/data}
319     \end{small}
320    
321     \subsubsection{File {\it input/data.pkg}}
322 adcroft 1.9 \label{www:tutorials}
323 adcroft 1.1
324     This file uses standard default values and does not contain
325 cnh 1.4 customizations for this experiment.
326 adcroft 1.1
327     \subsubsection{File {\it input/eedata}}
328 adcroft 1.9 \label{www:tutorials}
329 adcroft 1.1
330     This file uses standard default values and does not contain
331 cnh 1.4 customizations for this experiment.
332 adcroft 1.1
333     \subsubsection{File {\it input/windx.sin\_y}}
334 adcroft 1.9 \label{www:tutorials}
335 adcroft 1.1
336     The {\it input/windx.sin\_y} file specifies a two-dimensional ($x,y$)
337     map of wind stress ,$\tau_{x}$, values. The units used are $Nm^{-2}$.
338     Although $\tau_{x}$ is only a function of $y$n in this experiment
339     this file must still define a complete two-dimensional map in order
340     to be compatible with the standard code for loading forcing fields
341     in MITgcm. The included matlab program {\it input/gendata.m} gives a complete
342     code for creating the {\it input/windx.sin\_y} file.
343    
344     \subsubsection{File {\it input/topog.box}}
345 adcroft 1.9 \label{www:tutorials}
346 adcroft 1.1
347    
348     The {\it input/topog.box} file specifies a two-dimensional ($x,y$)
349     map of depth values. For this experiment values are either
350     $0m$ or {\bf -delZ}m, corresponding respectively to a wall or to deep
351     ocean. The file contains a raw binary stream of data that is enumerated
352     in the same way as standard MITgcm two-dimensional, horizontal arrays.
353     The included matlab program {\it input/gendata.m} gives a complete
354     code for creating the {\it input/topog.box} file.
355    
356     \subsubsection{File {\it code/SIZE.h}}
357 adcroft 1.9 \label{www:tutorials}
358 adcroft 1.1
359     Two lines are customized in this file for the current experiment
360    
361     \begin{itemize}
362    
363     \item Line 39,
364     \begin{verbatim} sNx=60, \end{verbatim} this line sets
365     the lateral domain extent in grid points for the
366     axis aligned with the x-coordinate.
367    
368     \item Line 40,
369     \begin{verbatim} sNy=60, \end{verbatim} this line sets
370     the lateral domain extent in grid points for the
371     axis aligned with the y-coordinate.
372    
373     \end{itemize}
374    
375     \begin{small}
376     \input{part3/case_studies/barotropic_gyre/code/SIZE.h}
377     \end{small}
378    
379     \subsubsection{File {\it code/CPP\_OPTIONS.h}}
380 adcroft 1.9 \label{www:tutorials}
381 adcroft 1.1
382     This file uses standard default values and does not contain
383 cnh 1.4 customizations for this experiment.
384 adcroft 1.1
385    
386     \subsubsection{File {\it code/CPP\_EEOPTIONS.h}}
387 adcroft 1.9 \label{www:tutorials}
388 adcroft 1.1
389     This file uses standard default values and does not contain
390 cnh 1.4 customizations for this experiment.
391 adcroft 1.1

  ViewVC Help
Powered by ViewVC 1.1.22