/[MITgcm]/manual/s_examples/tracer_adjsens/co2sens.tex
ViewVC logotype

Contents of /manual/s_examples/tracer_adjsens/co2sens.tex

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


Revision 1.10 - (show annotations) (download) (as text)
Tue Jun 27 19:08:22 2006 UTC (19 years ago) by molod
Branch: MAIN
Changes since 1.9: +3 -2 lines
File MIME type: application/x-tex
Add cross references between tutorials and verification file system directories

1 % $Header: /u/gcmpack/manual/part3/case_studies/carbon_outgassing_sensitivity/co2sens.tex,v 1.9 2006/04/08 01:50:49 edhill Exp $
2 % $Name: $
3
4 \section{Centennial Time Scale Tracer Injection}
5 \label{www:tutorials}
6 \label{sect:eg-simple-tracer}
7 \begin{rawhtml}
8 <!-- CMIREDIR:eg-simple-tracer: -->
9 \end{rawhtml}
10
11 \bodytext{bgcolor="#FFFFFFFF"}
12
13 %\begin{center}
14 %{\Large \bf Using MITgcm to Look at Centennial Time Scale
15 %Sensitivities}
16 %
17 %\vspace*{4mm}
18 %
19 %\vspace*{3mm}
20 %{\large May 2001}
21 %\end{center}
22
23 \subsection{Introduction}
24 \label{www:tutorials}
25
26 This example illustrates the use of
27 the MITgcm to perform sensitivity analysis in a
28 large scale ocean circulation simulation.
29 The files for this experiment can be found in the
30 verification directory under tutorial\_tracer\_adjsens.
31
32 \subsection{Overview}
33 \label{www:tutorials}
34
35 This example experiment demonstrates using the MITgcm to simulate
36 the planetary ocean circulation. The simulation is configured
37 with realistic geography and bathymetry on a
38 $4^{\circ} \times 4^{\circ}$ spherical polar grid.
39 Twenty vertical layers are used in the vertical, ranging in thickness
40 from $50\,{\rm m}$ at the surface to $815\,{\rm m}$ at depth,
41 giving a maximum model depth of $6\,{\rm km}$.
42 At this resolution, the configuration
43 can be integrated forward for thousands of years on a single
44 processor desktop computer.
45 \\
46
47 The model is forced with climatological wind stress data and surface
48 flux data from Da Silva \cite{DaSilva94}. Climatological data
49 from Levitus \cite{Levitus94} is used to initialize the model hydrography.
50 Levitus data is also used throughout the calculation
51 to derive air-sea fluxes of heat at the ocean surface.
52 These fluxes are combined with climatological estimates of
53 surface heat flux and fresh water, resulting in a mixed boundary
54 condition of the style described in Haney \cite{Haney}.
55 Altogether, this yields the following forcing applied
56 in the model surface layer.
57
58 \begin{eqnarray}
59 \label{EQ:eg-simple-tracer-global_forcing}
60 \label{EQ:eg-simple-tracer-global_forcing_fu}
61 {\cal F}_{u} & = & \frac{\tau_{x}}{\rho_{0} \Delta z_{s}}
62 \\
63 \label{EQ:eg-simple-tracer-global_forcing_fv}
64 {\cal F}_{v} & = & \frac{\tau_{y}}{\rho_{0} \Delta z_{s}}
65 \\
66 \label{EQ:eg-simple-tracer-global_forcing_ft}
67 {\cal F}_{\theta} & = & - \lambda_{\theta} ( \theta - \theta^{\ast} )
68 - \frac{1}{C_{p} \rho_{0} \Delta z_{s}}{\cal Q}
69 \\
70 \label{EQ:eg-simple-tracer-global_forcing_fs}
71 {\cal F}_{s} & = & - \lambda_{s} ( S - S^{\ast} )
72 + \frac{S_{0}}{\Delta z_{s}}({\cal E} - {\cal P} - {\cal R})
73 \end{eqnarray}
74
75 \noindent where ${\cal F}_{u}$, ${\cal F}_{v}$, ${\cal F}_{\theta}$,
76 ${\cal F}_{s}$ are the forcing terms in the zonal and meridional
77 momentum and in the potential temperature and salinity
78 equations respectively.
79 The term $\Delta z_{s}$ represents the top ocean layer thickness.
80 It is used in conjunction with the reference density, $\rho_{0}$
81 (here set to $999.8\,{\rm kg\,m^{-3}}$), the
82 reference salinity, $S_{0}$ (here set to 35ppt),
83 and a specific heat capacity $C_{p}$ to convert
84 wind-stress fluxes given in ${\rm N}\,m^{-2}$,
85 \\
86
87
88 The configuration is illustrated in figure \ref{simulation_config}.
89
90
91 \subsection{Discrete Numerical Configuration}
92 \label{www:tutorials}
93
94
95 The model is configured in hydrostatic form. The domain is discretised with
96 a uniform grid spacing in latitude and longitude of
97 $\Delta x=\Delta y=4^{\circ}$, so
98 that there are ninety grid cells in the $x$ and forty in the
99 $y$ direction (Arctic polar regions are not
100 included in this experiment). Vertically the
101 model is configured with twenty layers with the following thicknesses
102 $\Delta z_{1} = 50\,{\rm m},\,
103 \Delta z_{2} = 50\,{\rm m},\,
104 \Delta z_{3} = 55\,{\rm m},\,
105 \Delta z_{4} = 60\,{\rm m},\,
106 \Delta z_{5} = 65\,{\rm m},\,
107 $
108 $
109 \Delta z_{6}~=~70\,{\rm m},\,
110 \Delta z_{7}~=~80\,{\rm m},\,
111 \Delta z_{8}~=95\,{\rm m},\,
112 \Delta z_{9}=120\,{\rm m},\,
113 \Delta z_{10}=155\,{\rm m},\,
114 $
115 $
116 \Delta z_{11}=200\,{\rm m},\,
117 \Delta z_{12}=260\,{\rm m},\,
118 \Delta z_{13}=320\,{\rm m},\,
119 \Delta z_{14}=400\,{\rm m},\,
120 \Delta z_{15}=480\,{\rm m},\,
121 $
122 $
123 \Delta z_{16}=570\,{\rm m},\,
124 \Delta z_{17}=655\,{\rm m},\,
125 \Delta z_{18}=725\,{\rm m},\,
126 \Delta z_{19}=775\,{\rm m},\,
127 \Delta z_{20}=815\,{\rm m}
128 $ (here the numeric subscript indicates the model level index number, ${\tt k}$).
129 The implicit free surface form of the pressure equation described in Marshall et. al
130 \cite{marshall:97a} is employed. A Laplacian operator, $\nabla^2$, provides viscous
131 dissipation. Thermal and haline diffusion is also represented by a Laplacian operator.
132 \\
133
134 Wind-stress momentum inputs are added to the momentum equations for both
135 the zonal flow, $u$ and the meridional flow $v$, according to equations
136 (\ref{EQ:eg-simple-tracer-global_forcing_fu}) and (\ref{EQ:eg-simple-tracer-global_forcing_fv}).
137 Thermodynamic forcing inputs are added to the equations for
138 potential temperature, $\theta$, and salinity, $S$, according to equations
139 (\ref{EQ:eg-simple-tracer-global_forcing_ft}) and (\ref{EQ:eg-simple-tracer-global_forcing_fs}).
140 This produces a set of equations solved in this configuration as follows:
141 % {\fracktur}
142
143
144 \begin{eqnarray}
145 \label{EQ:eg-simple-tracer-model_equations}
146 \frac{Du}{Dt} - fv +
147 \frac{1}{\rho}\frac{\partial p^{'}}{\partial x} -
148 A_{h}\nabla_{h}^2u - A_{z}\frac{\partial^{2}u}{\partial z^{2}}
149 & = &
150 {\cal F}_{u}
151 \\
152 \frac{Dv}{Dt} + fu +
153 \frac{1}{\rho}\frac{\partial p^{'}}{\partial y} -
154 A_{h}\nabla_{h}^2v - A_{z}\frac{\partial^{2}v}{\partial z^{2}}
155 & = &
156 {\cal F}_{v}
157 \\
158 \frac{\partial \eta}{\partial t} + \nabla_{h}\cdot \vec{u}
159 &=&
160 0
161 \\
162 \frac{D\theta}{Dt} -
163 K_{h}\nabla_{h}^2\theta - \Gamma(K_{z})\frac{\partial^{2}\theta}{\partial z^{2}}
164 & = &
165 {\cal F}_{\theta}
166 \\
167 \frac{D s}{Dt} -
168 K_{h}\nabla_{h}^2 s - \Gamma(K_{z})\frac{\partial^{2} s}{\partial z^{2}}
169 & = &
170 {\cal F}_{s}
171 \\
172 g\rho_{0} \eta + \int^{0}_{-z}\rho^{'} dz & = & p^{'}
173 \\
174 \end{eqnarray}
175
176 \noindent where $u$ and $v$ are the $x$ and $y$ components of the
177 flow vector $\vec{u}$. The suffices ${s},{i}$ indicate surface and
178 interior model levels respectively. As described in
179 MITgcm Numerical Solution Procedure \ref{chap:discretization}, the time
180 evolution of potential temperature, $\theta$, equation is solved prognostically.
181 The total pressure, $p$, is diagnosed by summing pressure due to surface
182 elevation $\eta$ and the hydrostatic pressure.
183 \\
184
185 \subsubsection{Numerical Stability Criteria}
186 \label{www:tutorials}
187
188 The Laplacian dissipation coefficient, $A_{h}$, is set to $400 m s^{-1}$.
189 This value is chosen to yield a Munk layer width \cite{adcroft:95},
190
191 \begin{eqnarray}
192 \label{EQ:eg-simple-tracer-munk_layer}
193 M_{w} = \pi ( \frac { A_{h} }{ \beta } )^{\frac{1}{3}}
194 \end{eqnarray}
195
196 \noindent of $\approx 100$km. This is greater than the model
197 resolution in mid-latitudes $\Delta x$, ensuring that the frictional
198 boundary layer is well resolved.
199 \\
200
201 \noindent The model is stepped forward with a
202 time step $\delta t=1200$secs. With this time step the stability
203 parameter to the horizontal Laplacian friction \cite{adcroft:95}
204
205 \begin{eqnarray}
206 \label{EQ:eg-simple-tracer-laplacian_stability}
207 S_{l} = 4 \frac{A_{h} \delta t}{{\Delta x}^2}
208 \end{eqnarray}
209
210 \noindent evaluates to 0.012, which is well below the 0.3 upper limit
211 for stability.
212 \\
213
214 \noindent The vertical dissipation coefficient, $A_{z}$, is set to
215 $1\times10^{-2} {\rm m}^2{\rm s}^{-1}$. The associated stability limit
216
217 \begin{eqnarray}
218 \label{EQ:eg-simple-tracer-laplacian_stability_z}
219 S_{l} = 4 \frac{A_{z} \delta t}{{\Delta z}^2}
220 \end{eqnarray}
221
222 \noindent evaluates to $4.8 \times 10^{-5}$ which is again well below
223 the upper limit.
224 The values of $A_{h}$ and $A_{z}$ are also used for the horizontal ($K_{h}$)
225 and vertical ($K_{z}$) diffusion coefficients for temperature respectively.
226 \\
227
228 \noindent The numerical stability for inertial oscillations
229 \cite{adcroft:95}
230
231 \begin{eqnarray}
232 \label{EQ:eg-simple-tracer-inertial_stability}
233 S_{i} = f^{2} {\delta t}^2
234 \end{eqnarray}
235
236 \noindent evaluates to $0.0144$, which is well below the $0.5$ upper
237 limit for stability.
238 \\
239
240 \noindent The advective CFL \cite{adcroft:95} for a extreme maximum
241 horizontal flow
242 speed of $ | \vec{u} | = 2 ms^{-1}$
243
244 \begin{eqnarray}
245 \label{EQ:eg-simple-tracer-cfl_stability}
246 S_{a} = \frac{| \vec{u} | \delta t}{ \Delta x}
247 \end{eqnarray}
248
249 \noindent evaluates to $5 \times 10^{-2}$. This is well below the stability
250 limit of 0.5.
251 \\
252
253 \noindent The stability parameter for internal gravity waves
254 \cite{adcroft:95}
255
256 \begin{eqnarray}
257 \label{EQ:eg-simple-tracer-igw_stability}
258 S_{c} = \frac{c_{g} \delta t}{ \Delta x}
259 \end{eqnarray}
260
261 \noindent evaluates to $5 \times 10^{-2}$. This is well below the linear
262 stability limit of 0.25.
263
264 \subsection{Code Configuration}
265 \label{www:tutorials}
266 \label{SEC:code_config}
267
268 The model configuration for this experiment resides under the
269 directory {\it verification/exp1/}. The experiment files
270 \begin{itemize}
271 \item {\it input/data}
272 \item {\it input/data.pkg}
273 \item {\it input/eedata},
274 \item {\it input/windx.sin\_y},
275 \item {\it input/topog.box},
276 \item {\it code/CPP\_EEOPTIONS.h}
277 \item {\it code/CPP\_OPTIONS.h},
278 \item {\it code/SIZE.h}.
279 \end{itemize}
280 contain the code customizations and parameter settings for this
281 experiments. Below we describe the customizations
282 to these files associated with this experiment.
283
284 \subsubsection{File {\it input/data}}
285 \label{www:tutorials}
286
287 This file, reproduced completely below, specifies the main parameters
288 for the experiment. The parameters that are significant for this configuration
289 are
290
291 \begin{itemize}
292
293 \item Line 4,
294 \begin{verbatim} tRef=20.,10.,8.,6., \end{verbatim}
295 this line sets
296 the initial and reference values of potential temperature at each model
297 level in units of $^{\circ}\mathrm{C}$.
298 The entries are ordered from surface to depth. For each
299 depth level the initial and reference profiles will be uniform in
300 $x$ and $y$.
301
302 \fbox{
303 \begin{minipage}{5.0in}
304 {\it S/R INI\_THETA}({\it ini\_theta.F})
305 \end{minipage}
306 }
307
308
309 \item Line 6,
310 \begin{verbatim} viscAz=1.E-2, \end{verbatim}
311 this line sets the vertical Laplacian dissipation coefficient to
312 $1 \times 10^{-2} {\rm m^{2}s^{-1}}$. Boundary conditions
313 for this operator are specified later. This variable is copied into
314 model general vertical coordinate variable {\bf viscAr}.
315
316 \fbox{
317 \begin{minipage}{5.0in}
318 {\it S/R CALC\_DIFFUSIVITY}({\it calc\_diffusivity.F})
319 \end{minipage}
320 }
321
322 \item Line 7,
323 \begin{verbatim}
324 viscAh=4.E2,
325 \end{verbatim}
326 this line sets the horizontal Laplacian frictional dissipation coefficient to
327 $1 \times 10^{-2} {\rm m^{2}s^{-1}}$. Boundary conditions
328 for this operator are specified later.
329
330 \item Lines 8,
331 \begin{verbatim}
332 no_slip_sides=.FALSE.
333 \end{verbatim}
334 this line selects a free-slip lateral boundary condition for
335 the horizontal Laplacian friction operator
336 e.g. $\frac{\partial u}{\partial y}$=0 along boundaries in $y$ and
337 $\frac{\partial v}{\partial x}$=0 along boundaries in $x$.
338
339 \item Lines 9,
340 \begin{verbatim}
341 no_slip_bottom=.TRUE.
342 \end{verbatim}
343 this line selects a no-slip boundary condition for bottom
344 boundary condition in the vertical Laplacian friction operator
345 e.g. $u=v=0$ at $z=-H$, where $H$ is the local depth of the domain.
346
347 \item Line 10,
348 \begin{verbatim}
349 diffKhT=4.E2,
350 \end{verbatim}
351 this line sets the horizontal diffusion coefficient for temperature
352 to $400\,{\rm m^{2}s^{-1}}$. The boundary condition on this
353 operator is $\frac{\partial}{\partial x}=\frac{\partial}{\partial y}=0$ at
354 all boundaries.
355
356 \item Line 11,
357 \begin{verbatim}
358 diffKzT=1.E-2,
359 \end{verbatim}
360 this line sets the vertical diffusion coefficient for temperature
361 to $10^{-2}\,{\rm m^{2}s^{-1}}$. The boundary condition on this
362 operator is $\frac{\partial}{\partial z}$ = 0 on all boundaries.
363
364 \item Line 13,
365 \begin{verbatim}
366 tAlpha=2.E-4,
367 \end{verbatim}
368 This line sets the thermal expansion coefficient for the fluid
369 to $2 \times 10^{-4}\,{\rm degrees}^{-1}$
370
371 \fbox{
372 \begin{minipage}{5.0in}
373 {\it S/R FIND\_RHO}({\it find\_rho.F})
374 \end{minipage}
375 }
376
377 \item Line 18,
378 \begin{verbatim}
379 eosType='LINEAR'
380 \end{verbatim}
381 This line selects the linear form of the equation of state.
382
383 \fbox{
384 \begin{minipage}{5.0in}
385 {\it S/R FIND\_RHO}({\it find\_rho.F})
386 \end{minipage}
387 }
388
389
390
391 \item Line 40,
392 \begin{verbatim}
393 usingSphericalPolarGrid=.TRUE.,
394 \end{verbatim}
395 This line requests that the simulation be performed in a
396 spherical polar coordinate system. It affects the interpretation of
397 grid input parameters, for example {\bf delX} and {\bf delY} and
398 causes the grid generation routines to initialize an internal grid based
399 on spherical polar geometry.
400
401 \fbox{
402 \begin{minipage}{5.0in}
403 {\it S/R INI\_SPEHRICAL\_POLAR\_GRID}({\it ini\_spherical\_polar\_grid.F})
404 \end{minipage}
405 }
406
407 \item Line 41,
408 \begin{verbatim}
409 phiMin=0.,
410 \end{verbatim}
411 This line sets the southern boundary of the modeled
412 domain to $0^{\circ}$ latitude. This value affects both the
413 generation of the locally orthogonal grid that the model
414 uses internally and affects the initialization of the coriolis force.
415 Note - it is not required to set
416 a longitude boundary, since the absolute longitude does
417 not alter the kernel equation discretisation.
418
419 \item Line 42,
420 \begin{verbatim}
421 delX=60*1.,
422 \end{verbatim}
423 This line sets the horizontal grid spacing between each y-coordinate line
424 in the discrete grid to $1^{\circ}$ in longitude.
425
426 \item Line 43,
427 \begin{verbatim}
428 delY=60*1.,
429 \end{verbatim}
430 This line sets the horizontal grid spacing between each y-coordinate line
431 in the discrete grid to $1^{\circ}$ in latitude.
432
433 \item Line 44,
434 \begin{verbatim}
435 delZ=500.,500.,500.,500.,
436 \end{verbatim}
437 This line sets the vertical grid spacing between each z-coordinate line
438 in the discrete grid to $500\,{\rm m}$, so that the total model depth
439 is $2\,{\rm km}$. The variable {\bf delZ} is copied into the internal
440 model coordinate variable {\bf delR}
441
442 \fbox{
443 \begin{minipage}{5.0in}
444 {\it S/R INI\_VERTICAL\_GRID}({\it ini\_vertical\_grid.F})
445 \end{minipage}
446 }
447
448 \item Line 47,
449 \begin{verbatim}
450 bathyFile='topog.box'
451 \end{verbatim}
452 This line specifies the name of the file from which the domain
453 bathymetry is read. This file is a two-dimensional ($x,y$) map of
454 depths. This file is assumed to contain 64-bit binary numbers
455 giving the depth of the model at each grid cell, ordered with the x
456 coordinate varying fastest. The points are ordered from low coordinate
457 to high coordinate for both axes. The units and orientation of the
458 depths in this file are the same as used in the MITgcm code. In this
459 experiment, a depth of $0m$ indicates a solid wall and a depth
460 of $-2000m$ indicates open ocean. The matlab program
461 {\it input/gendata.m} shows an example of how to generate a
462 bathymetry file.
463
464
465 \item Line 50,
466 \begin{verbatim}
467 zonalWindFile='windx.sin_y'
468 \end{verbatim}
469 This line specifies the name of the file from which the x-direction
470 surface wind stress is read. This file is also a two-dimensional
471 ($x,y$) map and is enumerated and formatted in the same manner as the
472 bathymetry file. The matlab program {\it input/gendata.m} includes example
473 code to generate a valid
474 {\bf zonalWindFile}
475 file.
476
477 \end{itemize}
478
479 \noindent other lines in the file {\it input/data} are standard values
480 that are described in the MITgcm Getting Started and MITgcm Parameters
481 notes.
482
483 \begin{small}
484 % \input{part3/case_studies/carbon_outgassing_sensitivity/input/data}
485 \end{small}
486
487 \subsubsection{File {\it input/data.pkg}}
488 \label{www:tutorials}
489
490 This file uses standard default values and does not contain
491 customizations for this experiment.
492
493 \subsubsection{File {\it input/eedata}}
494 \label{www:tutorials}
495
496 This file uses standard default values and does not contain
497 customizations for this experiment.
498
499 \subsubsection{File {\it input/windx.sin\_y}}
500 \label{www:tutorials}
501
502 The {\it input/windx.sin\_y} file specifies a two-dimensional ($x,y$)
503 map of wind stress ,$\tau_{x}$, values. The units used are $Nm^{-2}$.
504 Although $\tau_{x}$ is only a function of $y$n in this experiment
505 this file must still define a complete two-dimensional map in order
506 to be compatible with the standard code for loading forcing fields
507 in MITgcm. The included matlab program {\it input/gendata.m} gives a complete
508 code for creating the {\it input/windx.sin\_y} file.
509
510 \subsubsection{File {\it input/topog.box}}
511 \label{www:tutorials}
512
513
514 The {\it input/topog.box} file specifies a two-dimensional ($x,y$)
515 map of depth values. For this experiment values are either
516 $0m$ or $-2000\,{\rm m}$, corresponding respectively to a wall or to deep
517 ocean. The file contains a raw binary stream of data that is enumerated
518 in the same way as standard MITgcm two-dimensional, horizontal arrays.
519 The included matlab program {\it input/gendata.m} gives a complete
520 code for creating the {\it input/topog.box} file.
521
522 \subsubsection{File {\it code/SIZE.h}}
523 \label{www:tutorials}
524
525 Two lines are customized in this file for the current experiment
526
527 \begin{itemize}
528
529 \item Line 39,
530 \begin{verbatim} sNx=60, \end{verbatim} this line sets
531 the lateral domain extent in grid points for the
532 axis aligned with the x-coordinate.
533
534 \item Line 40,
535 \begin{verbatim} sNy=60, \end{verbatim} this line sets
536 the lateral domain extent in grid points for the
537 axis aligned with the y-coordinate.
538
539 \item Line 49,
540 \begin{verbatim} Nr=4, \end{verbatim} this line sets
541 the vertical domain extent in grid points.
542
543 \end{itemize}
544
545 \begin{small}
546 % \include{code/SIZE.h}
547 \end{small}
548
549 \subsubsection{File {\it code/CPP\_OPTIONS.h}}
550 \label{www:tutorials}
551
552 This file uses standard default values and does not contain
553 customizations for this experiment.
554
555
556 \subsubsection{File {\it code/CPP\_EEOPTIONS.h}}
557 \label{www:tutorials}
558
559 This file uses standard default values and does not contain
560 customizations for this experiment.
561
562 \subsubsection{Other Files }
563 \label{www:tutorials}
564
565 Other files relevant to this experiment are
566 \begin{itemize}
567 \item {\it model/src/ini\_cori.F}. This file initializes the model
568 coriolis variables {\bf fCorU}.
569 \item {\it model/src/ini\_spherical\_polar\_grid.F}
570 \item {\it model/src/ini\_parms.F},
571 \item {\it input/windx.sin\_y},
572 \end{itemize}
573 contain the code customizations and parameter settings for this
574 experiments. Below we describe the customizations
575 to these files associated with this experiment.

  ViewVC Help
Powered by ViewVC 1.1.22