/[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.14 - (show annotations) (download) (as text)
Sat Apr 8 01:50:50 2006 UTC (19 years, 2 months ago) by edhill
Branch: MAIN
Changes since 1.13: +2 -2 lines
File MIME type: application/x-tex
LaTeX syntax cleanups:
 - the degree symbols ("\circ") are now properly raised after latex2html
 - don't use $...$ when it should be \textit{...}

1 % $Header: /u/gcmpack/manual/part3/case_studies/rotating_tank/tank.tex,v 1.13 2005/06/15 14:54:58 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 \begin{rawhtml}
20 <!-- CMIREDIR:eg-tank: -->
21 \end{rawhtml}
22
23 This section illustrates an example of MITgcm simulating a laboratory
24 experiment on much smaller scales than those commonly considered in
25 geophysical
26 fluid dynamics.
27
28 \subsection{Overview}
29 \label{www:tutorials}
30
31 This example configuration demonstrates using the MITgcm to simulate a
32 laboratory demonstration using a differentially heated rotating
33 annulus of water. The simulation is configured for a laboratory scale
34 on a $3^{\circ}\times1\mathrm{cm}$ cyclindrical grid with twenty-nine
35 vertical levels of 0.5cm each. This is a typical laboratory setup for
36 illustration principles of GFD, as well as for a laboratory data
37 assimilation project.
38 \\
39
40 example illustration from GFD lab here
41 \\
42
43
44
45
46
47 \subsection{Equations Solved}
48 \label{www:tutorials}
49
50
51 \subsection{Discrete Numerical Configuration}
52 \label{www:tutorials}
53
54 The domain is discretised with a uniform cylindrical grid spacing in
55 the horizontal set to $\Delta a=1$~cm and $\Delta \phi=3^{\circ}$, so
56 that there are 120 grid cells in the azimuthal direction and
57 thirty-one grid cells in the radial, representing a tank 62cm in
58 diameter. The bathymetry file sets the depth=0 in the nine lowest
59 radial rows to represent the central of the annulus. Vertically the
60 model is configured with twenty-nine layers of uniform 0.5cm
61 thickness.
62 \\
63 something about heat flux
64
65 \subsection{Code Configuration}
66 \label{www:tutorials}
67 \label{SEC:eg-baro-code_config}
68
69 The model configuration for this experiment resides under the
70 directory {\it verification/rotatingi\_tank/}. The experiment files
71 \begin{itemize}
72 \item {\it input/data}
73 \item {\it input/data.pkg}
74 \item {\it input/eedata},
75 \item {\it input/bathyPol.bin},
76 \item {\it input/thetaPol.bin},
77 \item {\it code/CPP\_EEOPTIONS.h}
78 \item {\it code/CPP\_OPTIONS.h},
79 \item {\it code/SIZE.h}.
80 \end{itemize}
81
82 contain the code customizations and parameter settings for this
83 experiments. Below we describe the customizations
84 to these files associated with this experiment.
85
86 \subsubsection{File {\it input/data}}
87 \label{www:tutorials}
88
89 This file, reproduced completely below, specifies the main parameters
90 for the experiment. The parameters that are significant for this configuration
91 are
92
93 \begin{itemize}
94
95 \item Lines 9-10, \begin{verbatim}
96 viscAh=5.0E-6,
97 viscAz=5.0E-6,
98 \end{verbatim}
99
100
101 These lines set the Laplacian friction coefficient in the horizontal
102 and vertical, respectively. Note that they are several orders of
103 magnitude smaller than the other examples due to the small scale of
104 this example.
105
106 \item Lines 13-16, \begin{verbatim}
107 diffKhT=2.5E-6,
108 diffKzT=2.5E-6,
109 diffKhS=1.0E-6,
110 diffKzS=1.0E-6,
111
112 \end{verbatim}
113
114
115 These lines set horizontal and vertical diffusion coefficients for
116 temperature and salinity. Similarly to the friction coefficients, the
117 values are a couple of orders of magnitude less than most
118 configurations.
119
120
121 \item Line 17, \begin{verbatim}f0=0.5 , \end{verbatim} this line sets the
122 coriolis term, and represents a tank spinning at about 2.4 rpm.
123
124 \item Lines 23 and 24
125 \begin{verbatim}
126 rigidLid=.TRUE.,
127 implicitFreeSurface=.FALSE.,
128 \end{verbatim}
129
130 These lines activate the rigid lid formulation of the surface
131 pressure inverter and suppress the implicit free surface form
132 of the pressure inverter.
133
134 \item Line 40,
135 \begin{verbatim}
136 nIter=0,
137 \end{verbatim}
138 This line indicates that the experiment should start from $t=0$ and
139 implicitly suppresses searching for checkpoint files associated with
140 restarting an numerical integration from a previously saved state.
141 Instead, the file thetaPol.bin will be loaded to initialized the
142 temperature fields as indicated below, and other variables will be
143 initialized to their defaults.
144
145
146 \item Line 43,
147 \begin{verbatim}
148 deltaT=0.1,
149 \end{verbatim}
150 This line sets the integration timestep to $0.1s$. This is an
151 unsually small value among the examples due to the small physical
152 scale of the experiment. Using the ensemble Kalman filter to produce
153 input fields can necessitate even shorter timesteps.
154
155 \item Line 56,
156 \begin{verbatim}
157 usingCylindricalGrid=.TRUE.,
158 \end{verbatim}
159 This line requests that the simulation be performed in a
160 cylindrical coordinate system.
161
162 \item Line 57,
163 \begin{verbatim}
164 dXspacing=3,
165 \end{verbatim}
166 This line sets the azimuthal grid spacing between each $x$-coordinate line
167 in the discrete grid. The syntax indicates that the discrete grid
168 should be comprised of $120$ grid lines each separated by $3^{\circ}$.
169
170
171 \item Line 58,
172 \begin{verbatim}
173 dYspacing=0.01,
174 \end{verbatim}
175
176 This line sets the radial cylindrical grid spacing between each
177 $a$-coordinate line in the discrete grid to $1cm$.
178
179 \item Line 59,
180 \begin{verbatim}
181 delZ=29*0.005,
182 \end{verbatim}
183
184 This line sets the vertical grid spacing between each of 29
185 z-coordinate lines in the discrete grid to $0.005m$ ($5$~mm).
186
187 \item Line 64,
188 \begin{verbatim}
189 bathyFile='bathyPol.bin',
190 \end{verbatim}
191 This line specifies the name of the file from which the domain
192 ``bathymetry'' (tank depth) is read. This file is a two-dimensional
193 ($a,\phi$) map of
194 depths. This file is assumed to contain 64-bit binary numbers
195 giving the depth of the model at each grid cell, ordered with the $\phi$
196 coordinate varying fastest. The points are ordered from low coordinate
197 to high coordinate for both axes. The units and orientation of the
198 depths in this file are the same as used in the MITgcm code. In this
199 experiment, a depth of $0m$ indicates an area outside of the tank
200 and a depth
201 f $-0.145m$ indicates the tank itself.
202
203 \item Line 65,
204 \begin{verbatim}
205 hydrogThetaFile='thetaPol.bin',
206 \end{verbatim}
207 This line specifies the name of the file from which the initial values
208 of temperature
209 are read. This file is a three-dimensional
210 ($x,y,z$) map and is enumerated and formatted in the same manner as the
211 bathymetry file.
212
213 \item Lines 66 and 67
214 \begin{verbatim}
215 tCylIn = 0
216 tCylOut = 20
217 \end{verbatim}
218 These line specify the temperatures in degrees Celsius of the interior
219 and exterior walls of the tank -- typically taken to be icewater on
220 the inside and room temperature on the outside.
221
222
223 \end{itemize}
224
225 \noindent Other lines in the file {\it input/data} are standard values
226 that are described in the MITgcm Getting Started and MITgcm Parameters
227 notes.
228
229 \begin{small}
230 \input{part3/case_studies/rotating_tank/input/data}
231 \end{small}
232
233 \subsubsection{File {\it input/data.pkg}}
234 \label{www:tutorials}
235
236 This file uses standard default values and does not contain
237 customizations for this experiment.
238
239 \subsubsection{File {\it input/eedata}}
240 \label{www:tutorials}
241
242 This file uses standard default values and does not contain
243 customizations for this experiment.
244
245 \subsubsection{File {\it input/thetaPol.bin}}
246 \label{www:tutorials}
247
248 The {\it input/thetaPol.bin} file specifies a three-dimensional ($x,y,z$)
249 map of initial values of $\theta$ in degrees Celsius. This particular
250 experiment is set to random values x around 20C to provide initial
251 perturbations.
252
253 \subsubsection{File {\it input/bathyPol.bin}}
254 \label{www:tutorials}
255
256
257 The {\it input/bathyPol.bin} file specifies a two-dimensional ($x,y$)
258 map of depth values. For this experiment values are either
259 $0m$ or {\bf -delZ}m, corresponding respectively to outside or inside of
260 the tank. The file contains a raw binary stream of data that is enumerated
261 in the same way as standard MITgcm two-dimensional, horizontal arrays.
262
263 \subsubsection{File {\it code/SIZE.h}}
264 \label{www:tutorials}
265
266 Two lines are customized in this file for the current experiment
267
268 \begin{itemize}
269
270 \item Line 39,
271 \begin{verbatim} sNx=120, \end{verbatim} this line sets
272 the lateral domain extent in grid points for the
273 axis aligned with the x-coordinate.
274
275 \item Line 40,
276 \begin{verbatim} sNy=31, \end{verbatim} this line sets
277 the lateral domain extent in grid points for the
278 axis aligned with the y-coordinate.
279
280 \end{itemize}
281
282 \begin{small}
283 \input{part3/case_studies/rotating_tank/code/SIZE.h}
284 \end{small}
285
286 \subsubsection{File {\it code/CPP\_OPTIONS.h}}
287 \label{www:tutorials}
288
289 This file uses standard default values and does not contain
290 customizations for this experiment.
291
292
293 \subsubsection{File {\it code/CPP\_EEOPTIONS.h}}
294 \label{www:tutorials}
295
296 This file uses standard default values and does not contain
297 customizations for this experiment.
298

  ViewVC Help
Powered by ViewVC 1.1.22