/[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.8 - (hide annotations) (download) (as text)
Thu Feb 28 19:32:19 2002 UTC (23 years, 4 months ago) by cnh
Branch: MAIN
Changes since 1.7: +16 -17 lines
File MIME type: application/x-tex
Updates for special on-line version with
hyperlinked and animated figures

Separating tutorials and reference material

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

  ViewVC Help
Powered by ViewVC 1.1.22