/[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.12 - (show annotations) (download) (as text)
Tue Jan 15 20:00:38 2008 UTC (17 years, 6 months ago) by jmc
Branch: MAIN
CVS Tags: HEAD
Changes since 1.11: +1 -1 lines
File MIME type: application/x-tex
FILE REMOVED
removed duplicated doc (keep sens_airsea_tracer/doc_ad_examples.tex :
 "Global Ocean State Estimate at 4o resolution"

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

  ViewVC Help
Powered by ViewVC 1.1.22