/[MITgcm]/manual/s_examples/rotating_tank/tank.tex
ViewVC logotype

Contents of /manual/s_examples/rotating_tank/tank.tex

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


Revision 1.8 - (show annotations) (download) (as text)
Mon Jul 26 21:25:34 2004 UTC (20 years, 11 months ago) by afe
Branch: MAIN
Changes since 1.7: +1 -85 lines
File MIME type: application/x-tex
some older stuff snipped

1 % $Header: /u/gcmpack/manual/part3/case_studies/rotating_tank/tank.tex,v 1.7 2004/07/26 21:09:47 afe Exp $
2 % $Name: $
3
4 \bodytext{bgcolor="#FFFFFFFF"}
5
6 %\begin{center}
7 %{\Large \bf Using MITgcm to Simulate a Rotating Tank in Cylindrical
8 %Coordinates}
9 %
10 %\vspace*{4mm}
11 %
12 %\vspace*{3mm}
13 %{\large May 2001}
14 %\end{center}
15
16 \section{A Rotating Tank in Cylindrical Coordinates}
17 \label{sect:eg-tank}
18 \label{www:tutorials}
19
20 This section illustrates an example of MITgcm simulating a laboratory
21 experiment on much smaller scales than those common to geophysical
22 fluid dynamics.
23
24 \subsection{Overview}
25 \label{www:tutorials}
26
27
28 This example experiment demonstrates using the MITgcm to simulate
29 a laboratory experiment with a rotating tank of water with an ice
30 bucket in the center. The simulation is configured for a laboratory
31 scale on a
32 $3^{\circ}$ $\times$ 20cm
33 cyclindrical grid with twenty-nine vertical
34 levels.
35 \\
36
37
38
39
40
41 \subsection{Equations Solved}
42 \label{www:tutorials}
43
44
45 \subsection{Discrete Numerical Configuration}
46 \label{www:tutorials}
47
48 The domain is discretised with
49 a uniform grid spacing in the horizontal set to
50 $\Delta x=\Delta y=20$~km, so
51 that there are sixty grid cells in the $x$ and $y$ directions. Vertically the
52 model is configured with a single layer with depth, $\Delta z$, of $5000$~m.
53
54 \subsubsection{Numerical Stability Criteria}
55 \label{www:tutorials}
56
57 The Laplacian dissipation coefficient, $A_{h}$, is set to $400 m s^{-1}$.
58 This value is chosen to yield a Munk layer width \cite{adcroft:95},
59
60 \begin{eqnarray}
61 \label{EQ:eg-baro-munk_layer}
62 M_{w} = \pi ( \frac { A_{h} }{ \beta } )^{\frac{1}{3}}
63 \end{eqnarray}
64
65 \noindent of $\approx 100$km. This is greater than the model
66 resolution $\Delta x$, ensuring that the frictional boundary
67 layer is well resolved.
68 \\
69
70 \noindent The model is stepped forward with a
71 time step $\delta t=1200$secs. With this time step the stability
72 parameter to the horizontal Laplacian friction \cite{adcroft:95}
73
74
75
76 \begin{eqnarray}
77 \label{EQ:eg-baro-laplacian_stability}
78 S_{l} = 4 \frac{A_{h} \delta t}{{\Delta x}^2}
79 \end{eqnarray}
80
81 \noindent evaluates to 0.012, which is well below the 0.3 upper limit
82 for stability.
83 \\
84
85 \noindent The numerical stability for inertial oscillations
86 \cite{adcroft:95}
87
88 \begin{eqnarray}
89 \label{EQ:eg-baro-inertial_stability}
90 S_{i} = f^{2} {\delta t}^2
91 \end{eqnarray}
92
93 \noindent evaluates to $0.0144$, which is well below the $0.5$ upper
94 limit for stability.
95 \\
96
97 \noindent The advective CFL \cite{adcroft:95} for an extreme maximum
98 horizontal flow speed of $ | \vec{u} | = 2 ms^{-1}$
99
100 \begin{eqnarray}
101 \label{EQ:eg-baro-cfl_stability}
102 S_{a} = \frac{| \vec{u} | \delta t}{ \Delta x}
103 \end{eqnarray}
104
105 \noindent evaluates to 0.12. This is approaching the stability limit
106 of 0.5 and limits $\delta t$ to $1200s$.
107
108 \subsection{Code Configuration}
109 \label{www:tutorials}
110 \label{SEC:eg-baro-code_config}
111
112 The model configuration for this experiment resides under the
113 directory {\it verification/rotatingi\_tank/}. The experiment files
114 \begin{itemize}
115 \item {\it input/data}
116 \item {\it input/data.pkg}
117 \item {\it input/eedata},
118 \item {\it input/bathyPol.bin},
119 \item {\it input/thetaPol.bin},
120 \item {\it code/CPP\_EEOPTIONS.h}
121 \item {\it code/CPP\_OPTIONS.h},
122 \item {\it code/SIZE.h}.
123 \end{itemize}
124
125 contain the code customizations and parameter settings for this
126 experiments. Below we describe the customizations
127 to these files associated with this experiment.
128
129 \subsubsection{File {\it input/data}}
130 \label{www:tutorials}
131
132 This file, reproduced completely below, specifies the main parameters
133 for the experiment. The parameters that are significant for this configuration
134 are
135
136 \begin{itemize}
137
138 \item Line X, \begin{verbatim} viscAh=5.0E-6, \end{verbatim} this line sets
139 the Laplacian friction coefficient to $0.000006 m^2s^{-1}$, which is ususally
140 low because of the small scale, presumably.... qqq
141
142 \item Line X, \begin{verbatim}f0=0.5 , \end{verbatim} this line sets the
143 coriolis term, and represents a tank spinning at qqq
144 \item Line 10, \begin{verbatim} beta=1.E-11, \end{verbatim} this line sets
145 $\beta$ (the gradient of the coriolis parameter, $f$) to $10^{-11} s^{-1}m^{-1}$
146
147 \item Lines 15 and 16
148 \begin{verbatim}
149 rigidLid=.TRUE.,
150 implicitFreeSurface=.FALSE.,
151 \end{verbatim}
152
153 these lines do the opposite of the following:
154 suppress the rigid lid formulation of the surface
155 pressure inverter and activate the implicit free surface form
156 of the pressure inverter.
157
158 \item Line 27,
159 \begin{verbatim}
160 startTime=0,
161 \end{verbatim}
162 this line indicates that the experiment should start from $t=0$
163 and implicitly suppresses searching for checkpoint files associated
164 with restarting an numerical integration from a previously saved state.
165
166 \item Line 30,
167 \begin{verbatim}
168 deltaT=0.1,
169 \end{verbatim}
170 This line sets the integration timestep to $0.1s$. This is an unsually
171 small value among the examples due to the small physical scale of the
172 experiment.
173
174 \item Line 39,
175 \begin{verbatim}
176 usingCylindricalGrid=.TRUE.,
177 \end{verbatim}
178 This line requests that the simulation be performed in a
179 cylindrical coordinate system.
180
181 \item Line qqq,
182 \begin{verbatim}
183 dXspacing=3,
184 \end{verbatim}
185 This line sets the azimuthal grid spacing between each x-coordinate line
186 in the discrete grid. The syntax indicates that the discrete grid
187 should be comprise of $120$ grid lines each separated by $3^{\circ}$.
188
189
190
191 \item Line qqq,
192 \begin{verbatim}
193 dYspacing=0.01,
194 \end{verbatim}
195 This line sets the radial grid spacing between each $\rho$-coordinate line
196 in the discrete grid to $1cm$.
197
198 \item Line 43,
199 \begin{verbatim}
200 delZ=29*0.005,
201 \end{verbatim}
202 This line sets the vertical grid spacing between each z-coordinate line
203 in the discrete grid to $5000m$ ($5$~km).
204
205 \item Line 46,
206 \begin{verbatim}
207 bathyFile='bathyPol.bin',
208 \end{verbatim}
209 This line specifies the name of the file from which the domain
210 ``bathymetry'' (tank depth) is read. This file is a two-dimensional
211 ($x,y$) map of
212 depths. This file is assumed to contain 64-bit binary numbers
213 giving the depth of the model at each grid cell, ordered with the $x$
214 coordinate varying fastest. The points are ordered from low coordinate
215 to high coordinate for both axes. The units and orientation of the
216 depths in this file are the same as used in the MITgcm code. In this
217 experiment, a depth of $0m$ indicates an area outside of the tank
218 and a depth
219 f $-0.145m$ indicates the tank itself.
220
221 \item Line 49,
222 \begin{verbatim}
223 hydrogThetaFile='thetaPol.bin',
224 \end{verbatim}
225 This line specifies the name of the file from which the initial values
226 of $\theta$
227 are read. This file is a three-dimensional
228 ($x,y,z$) map and is enumerated and formatted in the same manner as the
229 bathymetry file.
230
231 \item Line qqq
232 \begin{verbatim}
233 tCyl = 0
234 \end{verbatim}
235 This line specifies the temperature in degrees Celsius of the interior
236 wall of the tank -- usually a bucket of ice water.
237
238
239 \end{itemize}
240
241 \noindent other lines in the file {\it input/data} are standard values
242 that are described in the MITgcm Getting Started and MITgcm Parameters
243 notes.
244
245 \begin{small}
246 \input{part3/case_studies/rotating_tank/input/data}
247 \end{small}
248
249 \subsubsection{File {\it input/data.pkg}}
250 \label{www:tutorials}
251
252 This file uses standard default values and does not contain
253 customizations for this experiment.
254
255 \subsubsection{File {\it input/eedata}}
256 \label{www:tutorials}
257
258 This file uses standard default values and does not contain
259 customizations for this experiment.
260
261 \subsubsection{File {\it input/thetaPol.bin}}
262 \label{www:tutorials}
263
264 The {\it input/thetaPol.bin} file specifies a three-dimensional ($x,y,z$)
265 map of initial values of $\theta$ in degrees Celsius.
266
267 \subsubsection{File {\it input/bathyPol.bin}}
268 \label{www:tutorials}
269
270
271 The {\it input/bathyPol.bin} file specifies a two-dimensional ($x,y$)
272 map of depth values. For this experiment values are either
273 $0m$ or {\bf -delZ}m, corresponding respectively to outside or inside of
274 the tank. The file contains a raw binary stream of data that is enumerated
275 in the same way as standard MITgcm two-dimensional, horizontal arrays.
276
277 \subsubsection{File {\it code/SIZE.h}}
278 \label{www:tutorials}
279
280 Two lines are customized in this file for the current experiment
281
282 \begin{itemize}
283
284 \item Line 39,
285 \begin{verbatim} sNx=120, \end{verbatim} this line sets
286 the lateral domain extent in grid points for the
287 axis aligned with the x-coordinate.
288
289 \item Line 40,
290 \begin{verbatim} sNy=31, \end{verbatim} this line sets
291 the lateral domain extent in grid points for the
292 axis aligned with the y-coordinate.
293
294 \end{itemize}
295
296 \begin{small}
297 \input{part3/case_studies/rotating_tank/code/SIZE.h}
298 \end{small}
299
300 \subsubsection{File {\it code/CPP\_OPTIONS.h}}
301 \label{www:tutorials}
302
303 This file uses standard default values and does not contain
304 customizations for this experiment.
305
306
307 \subsubsection{File {\it code/CPP\_EEOPTIONS.h}}
308 \label{www:tutorials}
309
310 This file uses standard default values and does not contain
311 customizations for this experiment.
312

  ViewVC Help
Powered by ViewVC 1.1.22