/[MITgcm]/manual/s_examples/global_oce_latlon/climatalogical_ogcm.tex
ViewVC logotype

Contents of /manual/s_examples/global_oce_latlon/climatalogical_ogcm.tex

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


Revision 1.22 - (show annotations) (download) (as text)
Mon May 2 10:46:28 2011 UTC (14 years, 2 months ago) by mlosch
Branch: MAIN
Changes since 1.21: +180 -133 lines
File MIME type: application/x-tex
update description a little with help from Krishnakumar Rajagopalan,
still incomplete

1 % $Header: /u/gcmpack/manual/s_examples/global_oce_latlon/climatalogical_ogcm.tex,v 1.21 2011/04/21 21:27:16 jmc Exp $
2 % $Name: $
3
4 \section[Global Ocean MITgcm Example]{Global Ocean Simulation at $4^\circ$ Resolution}
5 %\label{www:tutorials}
6 \label{sec:eg-global}
7 \begin{rawhtml}
8 <!-- CMIREDIR:eg-global: -->
9 \end{rawhtml}
10 \begin{center}
11 (in directory: {\it verification/tutorial\_global\_oce\_latlon/})
12 \end{center}
13
14 \bodytext{bgcolor="#FFFFFFFF"}
15
16 \noindent {\bf WARNING: the description of this experiment is not complete.
17 In particular, many parameters are not yet described.}\\
18
19 %\begin{center}
20 %{\Large \bf Using MITgcm to Simulate Global Climatological Ocean Circulation
21 %At Four Degree Resolution with Asynchronous Time Stepping}
22 %
23 %\vspace*{4mm}
24 %
25 %\vspace*{3mm}
26 %{\large May 2001}
27 %\end{center}
28
29
30 This example experiment demonstrates using the MITgcm to simulate the
31 planetary ocean circulation. The simulation is configured with
32 realistic geography and bathymetry on a $4^{\circ} \times 4^{\circ}$
33 spherical polar grid. The files for this experiment are in the
34 verification directory under tutorial\_global\_oce\_latlon. Fifteen
35 levels are used in the vertical, ranging in thickness from $50\,{\rm
36 m}$ at the surface to $690\,{\rm m}$ at depth, giving a maximum
37 model depth of $5200\,{\rm m}$. At this resolution, the configuration
38 can be integrated forward for thousands of years on a single processor
39 desktop computer.
40 \\
41 \subsection{Overview}
42 %\label{www:tutorials}
43
44 The model is forced with climatological wind stress data from
45 \citet{trenberth90} and NCEP surface flux data from
46 \citet{kalnay96}. Climatological data \citep{Levitus94} is
47 used to initialize the model hydrography. \citeauthor{Levitus94} seasonal
48 climatology data is also used throughout the calculation to provide
49 additional air-sea fluxes. These fluxes are combined with the NCEP
50 climatological estimates of surface heat flux, resulting in a mixed
51 boundary condition of the style described in \citet{Haney}.
52 Altogether, this yields the following forcing applied in the model
53 surface layer.
54
55 \begin{eqnarray}
56 \label{eq:eg-global-global_forcing}
57 \label{eq:eg-global-global_forcing_fu}
58 {\cal F}_{u} & = & \frac{\tau_{x}}{\rho_{0} \Delta z_{s}}
59 \\
60 \label{eq:eg-global-global_forcing_fv}
61 {\cal F}_{v} & = & \frac{\tau_{y}}{\rho_{0} \Delta z_{s}}
62 \\
63 \label{eq:eg-global-global_forcing_ft}
64 {\cal F}_{\theta} & = & - \lambda_{\theta} ( \theta - \theta^{\ast} )
65 - \frac{1}{C_{p} \rho_{0} \Delta z_{s}}{\cal Q}
66 \\
67 \label{eq:eg-global-global_forcing_fs}
68 {\cal F}_{s} & = & - \lambda_{s} ( S - S^{\ast} )
69 + \frac{S_{0}}{\Delta z_{s}}({\cal E} - {\cal P} - {\cal R})
70 \end{eqnarray}
71
72 \noindent where ${\cal F}_{u}$, ${\cal F}_{v}$, ${\cal F}_{\theta}$,
73 ${\cal F}_{s}$ are the forcing terms in the zonal and meridional
74 momentum and in the potential temperature and salinity
75 equations respectively.
76 The term $\Delta z_{s}$ represents the top ocean layer thickness in
77 meters.
78 It is used in conjunction with a reference density, $\rho_{0}$
79 (here set to $999.8\,{\rm kg\,m^{-3}}$), a
80 reference salinity, $S_{0}$ (here set to 35~ppt),
81 and a specific heat capacity, $C_{p}$ (here set to
82 $4000~{\rm J}~^{\circ}{\rm C}^{-1}~{\rm kg}^{-1}$), to convert
83 input dataset values into time tendencies of
84 potential temperature (with units of $^{\circ}{\rm C}~{\rm s}^{-1}$),
85 salinity (with units ${\rm ppt}~s^{-1}$) and
86 velocity (with units ${\rm m}~{\rm s}^{-2}$).
87 The externally supplied forcing fields used in this
88 experiment are $\tau_{x}$, $\tau_{y}$, $\theta^{\ast}$, $S^{\ast}$,
89 $\cal{Q}$ and $\cal{E}-\cal{P}-\cal{R}$. The wind stress fields ($\tau_x$, $\tau_y$)
90 have units of ${\rm N}~{\rm m}^{-2}$. The temperature forcing fields
91 ($\theta^{\ast}$ and $Q$) have units of $^{\circ}{\rm C}$ and ${\rm W}~{\rm m}^{-2}$
92 respectively. The salinity forcing fields ($S^{\ast}$ and
93 $\cal{E}-\cal{P}-\cal{R}$) have units of ${\rm ppt}$ and ${\rm m}~{\rm s}^{-1}$
94 respectively. The source files and procedures for ingesting this data into the
95 simulation are described in the experiment configuration discussion in section
96 \ref{sec:eg-global-clim_ocn_examp_exp_config}.
97
98
99 \subsection{Discrete Numerical Configuration}
100 %\label{www:tutorials}
101
102
103 The model is configured in hydrostatic form. The domain is
104 discretised with a uniform grid spacing in latitude and longitude on
105 the sphere $\Delta \phi=\Delta \lambda=4^{\circ}$, so that there are
106 ninety grid cells in the zonal and forty in the meridional
107 direction. The internal model coordinate variables $x$ and $y$ are
108 initialized according to
109 \begin{eqnarray}
110 x=r\cos(\phi),~\Delta x & = &r\cos(\Delta \phi) \\
111 y=r\lambda,~\Delta y &= &r\Delta \lambda
112 \end{eqnarray}
113
114 Arctic polar regions are not
115 included in this experiment. Meridionally the model extends from
116 $80^{\circ}{\rm S}$ to $80^{\circ}{\rm N}$.
117 Vertically the model is configured with fifteen layers with the
118 following thicknesses
119 $\Delta z_{1} = 50\,{\rm m},\,
120 \Delta z_{2} = 70\,{\rm m},\,
121 \Delta z_{3} = 100\,{\rm m},\,
122 \Delta z_{4} = 140\,{\rm m},\,
123 \Delta z_{5} = 190\,{\rm m},\,
124 \Delta z_{6}~=~240\,{\rm m},\,
125 \Delta z_{7}~=~290\,{\rm m},\,
126 \Delta z_{8}~=340\,{\rm m},\,
127 \Delta z_{9}=390\,{\rm m},\,
128 \Delta z_{10}=440\,{\rm m},\,
129 \Delta z_{11}=490\,{\rm m},\,
130 \Delta z_{12}=540\,{\rm m},\,
131 \Delta z_{13}=590\,{\rm m},\,
132 \Delta z_{14}=640\,{\rm m},\,
133 \Delta z_{15}=690\,{\rm m}
134 $ (here the numeric subscript indicates the model level index number, ${\tt k}$) to
135 give a total depth, $H$, of $-5200{\rm m}$.
136 The implicit free surface form of the pressure equation described in
137 \citet{marshall:97a} is employed. A Laplacian operator, $\nabla^2$, provides viscous
138 dissipation. Thermal and haline diffusion is also represented by a Laplacian operator.
139
140 Wind-stress forcing is added to the momentum equations in (\ref{eq:eg-global-model_equations})
141 for both the zonal flow, $u$ and the meridional flow $v$, according to equations
142 (\ref{eq:eg-global-global_forcing_fu}) and (\ref{eq:eg-global-global_forcing_fv}).
143 Thermodynamic forcing inputs are added to the equations
144 in (\ref{eq:eg-global-model_equations}) for
145 potential temperature, $\theta$, and salinity, $S$, according to equations
146 (\ref{eq:eg-global-global_forcing_ft}) and (\ref{eq:eg-global-global_forcing_fs}).
147 This produces a set of equations solved in this configuration as follows:
148
149 \begin{eqnarray}
150 \label{eq:eg-global-model_equations}
151 \frac{Du}{Dt} - fv +
152 \frac{1}{\rho}\frac{\partial p^{'}}{\partial x} -
153 \nabla_{h}\cdot A_{h}\nabla_{h}u -
154 \frac{\partial}{\partial z}A_{z}\frac{\partial u}{\partial z}
155 & = &
156 \begin{cases}
157 {\cal F}_u & \text{(surface)} \\
158 0 & \text{(interior)}
159 \end{cases}
160 \\
161 \frac{Dv}{Dt} + fu +
162 \frac{1}{\rho}\frac{\partial p^{'}}{\partial y} -
163 \nabla_{h}\cdot A_{h}\nabla_{h}v -
164 \frac{\partial}{\partial z}A_{z}\frac{\partial v}{\partial z}
165 & = &
166 \begin{cases}
167 {\cal F}_v & \text{(surface)} \\
168 0 & \text{(interior)}
169 \end{cases}
170 \\
171 \frac{\partial \eta}{\partial t} + \nabla_{h}\cdot \vec{u}
172 &=&
173 0
174 \\
175 \frac{D\theta}{Dt} -
176 \nabla_{h}\cdot K_{h}\nabla_{h}\theta
177 - \frac{\partial}{\partial z}\Gamma(K_{z})\frac{\partial\theta}{\partial z}
178 & = &
179 \begin{cases}
180 {\cal F}_\theta & \text{(surface)} \\
181 0 & \text{(interior)}
182 \end{cases}
183 \\
184 \frac{D s}{Dt} -
185 \nabla_{h}\cdot K_{h}\nabla_{h}s
186 - \frac{\partial}{\partial z}\Gamma(K_{z})\frac{\partial s}{\partial z}
187 & = &
188 \begin{cases}
189 {\cal F}_s & \text{(surface)} \\
190 0 & \text{(interior)}
191 \end{cases}
192 \\
193 g\rho_{0} \eta + \int^{0}_{-z}\rho^{'} dz & = & p^{'}
194 \end{eqnarray}
195
196 \noindent where $u=\frac{Dx}{Dt}=r \cos(\phi)\frac{D \lambda}{Dt}$ and
197 $v=\frac{Dy}{Dt}=r \frac{D \phi}{Dt}$
198 are the zonal and meridional components of the
199 flow vector, $\vec{u}$, on the sphere. As described in
200 MITgcm Numerical Solution Procedure \ref{chap:discretization}, the time
201 evolution of potential temperature, $\theta$, equation is solved prognostically.
202 The total pressure, $p$, is diagnosed by summing pressure due to surface
203 elevation $\eta$ and the hydrostatic pressure.
204 \\
205
206 \subsubsection{Numerical Stability Criteria}
207 %\label{www:tutorials}
208
209 The Laplacian dissipation coefficient, $A_{h}$, is set to $5 \times 10^5 m s^{-1}$.
210 This value is chosen to yield a Munk layer width \citep{adcroft:95},
211 \begin{eqnarray}
212 \label{eq:eg-global-munk_layer}
213 && M_{w} = \pi ( \frac { A_{h} }{ \beta } )^{\frac{1}{3}}
214 \end{eqnarray}
215
216 \noindent of $\approx 600$km. This is greater than the model
217 resolution in low-latitudes, $\Delta x \approx 400{\rm km}$, ensuring that the frictional
218 boundary layer is adequately resolved.
219 \\
220
221 \noindent The model is stepped forward with a time step $\delta
222 t_{\theta}=24~{\rm hours}$ for thermodynamic variables and $\delta
223 t_{v}=30~{\rm minutes}$ for momentum terms. With this time step, the
224 stability parameter to the horizontal Laplacian friction
225 \citep{adcroft:95}
226 \begin{eqnarray}
227 \label{eq:eg-global-laplacian_stability}
228 && S_{l} = 4 \frac{A_{h} \delta t_{v}}{{\Delta x}^2}
229 \end{eqnarray}
230
231 \noindent evaluates to 0.6 at a latitude of $\phi=80^{\circ}$, which
232 is above the 0.3 upper limit for stability, but the zonal grid spacing
233 $\Delta x$ is smallest at $\phi=80^{\circ}$ where $\Delta
234 x=r\cos(\phi)\Delta \phi\approx 77{\rm km}$ and the stability
235 criterion is already met 1 grid cell equatorwards (at $\phi=76^{\circ}$).
236
237
238 \noindent The vertical dissipation coefficient, $A_{z}$, is set to
239 $1\times10^{-3} {\rm m}^2{\rm s}^{-1}$. The associated stability limit
240 \begin{eqnarray}
241 \label{eq:eg-global-laplacian_stability_z}
242 S_{l} = 4 \frac{A_{z} \delta t_{v}}{{\Delta z}^2}
243 \end{eqnarray}
244
245 \noindent evaluates to $0.0029$ for the smallest model
246 level spacing ($\Delta z_{1}=50{\rm m}$) which is well below
247 the upper stability limit.
248 \\
249
250 % The values of the horizontal ($K_{h}$) and vertical ($K_{z}$) diffusion coefficients
251 % for both temperature and salinity are set to $1 \times 10^{3}~{\rm m}^{2}{\rm s}^{-1}$
252 % and $3 \times 10^{-5}~{\rm m}^{2}{\rm s}^{-1}$ respectively. The stability limit
253 % related to $K_{h}$ will be at $\phi=80^{\circ}$ where $\Delta x \approx 77 {\rm km}$.
254 % Here the stability parameter
255 % \begin{eqnarray}
256 % \label{eq:eg-global-laplacian_stability_xtheta}
257 % S_{l} = \frac{4 K_{h} \delta t_{\theta}}{{\Delta x}^2}
258 % \end{eqnarray}
259 % evaluates to $0.07$, well below the stability limit of $S_{l} \approx 0.5$. The
260 % stability parameter related to $K_{z}$
261 % \begin{eqnarray}
262 % \label{eq:eg-global-laplacian_stability_ztheta}
263 % S_{l} = \frac{4 K_{z} \delta t_{\theta}}{{\Delta z}^2}
264 % \end{eqnarray}
265 % evaluates to $0.005$ for $\min(\Delta z)=50{\rm m}$, well below the stability limit
266 % of $S_{l} \approx 0.5$.
267 % \\
268
269 \noindent The numerical stability for inertial oscillations
270 \citep{adcroft:95}
271
272 \begin{eqnarray}
273 \label{eq:eg-global-inertial_stability}
274 S_{i} = f^{2} {\delta t_v}^2
275 \end{eqnarray}
276
277 \noindent evaluates to $0.07$ for
278 $f=2\omega\sin(80^{\circ})=1.43\times10^{-4}~{\rm s}^{-1}$, which is
279 below the $S_{i} < 1$ upper limit for stability.
280 \\
281
282 \noindent The advective CFL \citep{adcroft:95} for a extreme maximum
283 horizontal flow
284 speed of $ | \vec{u} | = 2 ms^{-1}$
285
286 \begin{eqnarray}
287 \label{eq:eg-global-cfl_stability}
288 S_{a} = \frac{| \vec{u} | \delta t_{v}}{ \Delta x}
289 \end{eqnarray}
290
291 \noindent evaluates to $5 \times 10^{-2}$. This is well below the stability
292 limit of 0.5.
293 \\
294
295 \noindent The stability parameter for internal gravity waves propagating
296 with a maximum speed of $c_{g}=10~{\rm ms}^{-1}$
297 \citep{adcroft:95}
298
299 \begin{eqnarray}
300 \label{eq:eg-global-gfl_stability}
301 S_{c} = \frac{c_{g} \delta t_{v}}{ \Delta x}
302 \end{eqnarray}
303
304 \noindent evaluates to $2.3 \times 10^{-1}$. This is close to the linear
305 stability limit of 0.5.
306
307 \subsection{Experiment Configuration}
308 %\label{www:tutorials}
309 \label{sec:eg-global-clim_ocn_examp_exp_config}
310
311 The model configuration for this experiment resides under the
312 directory {\it tutorial\_global\_oce\_latlon/}. The experiment files
313
314 \begin{itemize}
315 \item {\it input/data}
316 \item {\it input/data.pkg}
317 \item {\it input/eedata},
318 \item {\it input/trenberth\_taux.bin},
319 \item {\it input/trenberth\_tauy.bin},
320 \item {\it input/lev\_s.bin},
321 \item {\it input/lev\_t.bin},
322 \item {\it input/lev\_sss.bin},
323 \item {\it input/lev\_sst.bin},
324 \item {\it input/bathymetry.bin},
325 \item {\it code/CPP\_EEOPTIONS.h}
326 \item {\it code/CPP\_OPTIONS.h},
327 \item {\it code/SIZE.h}.
328 \end{itemize}
329 contain the code customizations and parameter settings for these
330 experiments. Below we describe the customizations
331 to these files associated with this experiment.
332
333 \subsubsection{Driving Datasets}
334 %\label{www:tutorials}
335
336 %% New figures are included before
337 %% Relaxation temperature
338 %\begin{figure}
339 %\centering
340 %\includegraphics[]{relax_temperature.eps}
341 %\caption{Relaxation temperature for January}
342 %\label{fig:relax_temperature}
343 %\end{figure}
344
345 %% Relaxation salinity
346 %\begin{figure}
347 %\centering
348 %\includegraphics[]{relax_salinity.eps}
349 %\caption{Relaxation salinity for January}
350 %\label{fig:relax_salinity}
351 %\end{figure}
352
353 %% tau_x
354 %\begin{figure}
355 %\centering
356 %\includegraphics[]{tau_x.eps}
357 %\caption{zonal wind stress for January}
358 %\label{fig:tau_x}
359 %\end{figure}
360
361 %% tau_y
362 %\begin{figure}
363 %\centering
364 %\includegraphics[]{tau_y.eps}
365 %\caption{meridional wind stress for January}
366 %\label{fig:tau_y}
367 %\end{figure}
368
369 %% Qnet
370 %\begin{figure}
371 %\centering
372 %\includegraphics[]{qnet.eps}
373 %\caption{Heat flux for January}
374 %\label{fig:qnet}
375 %\end{figure}
376
377 %% EmPmR
378 %\begin{figure}
379 %\centering
380 %\includegraphics[]{empmr.eps}
381 %\caption{Fresh water flux for January}
382 %\label{fig:empmr}
383 %\end{figure}
384
385 %% Bathymetry
386 %\begin{figure}
387 %\centering
388 %\includegraphics[]{bathymetry.eps}
389 %\caption{Bathymetry}
390 %\label{fig:bathymetry}
391 %\end{figure}
392
393
394 Figures (\ref{fig:sim_config_tclim_pcoord}-\ref{fig:sim_config_empmr_pcoord})
395 %(\ref{fig:sim_config_tclim}-\ref{fig:sim_config_empmr})
396 show the relaxation temperature ($\theta^{\ast}$) and salinity ($S^{\ast}$)
397 fields, the wind stress components ($\tau_x$ and $\tau_y$), the heat flux ($Q$)
398 and the net fresh water flux (${\cal E} - {\cal P} - {\cal R}$) used
399 in equations
400 (\ref{eq:eg-global-global_forcing_fu}-\ref{eq:eg-global-global_forcing_fs}).
401 The figures also indicate the lateral extent and coastline used in the
402 experiment. Figure ({\it --- missing figure --- }) %ref{fig:model_bathymetry})
403 shows the depth contours of the model domain.
404
405 \subsubsection{File {\it input/data}}
406 %\label{www:tutorials}
407
408 \input{s_examples/global_oce_latlon/inp_data}
409
410 \subsubsection{File {\it input/data.pkg}}
411 %\label{www:tutorials}
412
413 This file uses standard default values and does not contain
414 customisations for this experiment.
415
416 \subsubsection{File {\it input/eedata}}
417 %\label{www:tutorials}
418
419 This file uses standard default values and does not contain
420 customisations for this experiment.
421
422 \subsubsection{Files{\it input/trenberth\_taux.bin} and {\it
423 input/trenberth\_tauy.bin}}
424 %\label{www:tutorials}
425
426 The {\it input/trenberth\_taux.bin} and {\it
427 input/trenberth\_tauy.bin} files specify a three-dimensional
428 ($x,y,time$) map of wind stress, $(\tau_{x},\tau_{y})$, values
429 \citep{trenberth90}. The units used are $Nm^{-2}$.
430
431 \subsubsection{File {\it input/bathymetry.bin}}
432 %\label{www:tutorials}
433
434
435 The {\it input/topog.box} file specifies a two-dimensional ($x,y$)
436 map of depth values. For this experiment values are either
437 $0m$ or $-5200\,{\rm m}$, corresponding respectively to a wall or to deep
438 ocean. The file contains a raw binary stream of data that is enumerated
439 in the same way as standard MITgcm two-dimensional, horizontal arrays.
440 The included matlab program {\it input/gendata.m} gives a complete
441 code for creating the {\it input/topog.box} file.
442
443 \subsubsection{File {\it code/SIZE.h}}
444 %\label{www:tutorials}
445
446 Two lines are customized in this file for the current experiment
447
448 \begin{itemize}
449
450 \item Line 39,
451 \begin{verbatim} sNx=45, \end{verbatim} this line sets
452 the lateral domain extent in grid points for the
453 axis aligned with the x-coordinate.
454
455 \item Line 40,
456 \begin{verbatim} sNy=40, \end{verbatim} this line sets
457 the lateral domain extent in grid points for the
458 axis aligned with the y-coordinate.
459
460 \item Line 49,
461 \begin{verbatim}
462 Nr=15,
463 \end{verbatim} this line sets
464 the vertical domain extent in grid points.
465
466 \end{itemize}
467
468 \begin{small}
469 \input{s_examples/global_oce_latlon/code/SIZE.h}
470 \end{small}
471
472 \subsubsection{File {\it code/CPP\_OPTIONS.h}}
473 %\label{www:tutorials}
474
475 This file uses standard default values and does not contain
476 customisations for this experiment.
477
478
479 \subsubsection{File {\it code/CPP\_EEOPTIONS.h}}
480 %\label{www:tutorials}
481
482 This file uses standard default values and does not contain
483 customisations for this experiment.
484
485 \subsubsection{Other Files }
486 %\label{www:tutorials}
487
488 % Other files relevant to this experiment are
489 % \begin{itemize}
490 % \item {\it model/src/ini\_cori.F}. This file initializes the model
491 % coriolis variables {\bf fCorU}.
492 % \item {\it model/src/ini\_spherical\_polar\_grid.F}
493 % \item {\it model/src/ini\_parms.F},
494 % \item {\it input/windx.sin\_y},
495 % \end{itemize}
496 % contain the code customisations and parameter settings for this
497 % experiments. Below we describe the customisations
498 % to these files associated with this experiment.

  ViewVC Help
Powered by ViewVC 1.1.22