/[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.14 - (hide annotations) (download) (as text)
Tue Jun 27 19:08:22 2006 UTC (19 years ago) by molod
Branch: MAIN
Changes since 1.13: +4 -3 lines
File MIME type: application/x-tex
Add cross references between tutorials and verification file system directories

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

  ViewVC Help
Powered by ViewVC 1.1.22