/[MITgcm]/manual/s_examples/baroclinic_gyre/fourlayer.tex
ViewVC logotype

Diff of /manual/s_examples/baroclinic_gyre/fourlayer.tex

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

revision 1.13 by adcroft, Thu May 16 15:54:37 2002 UTC revision 1.24 by cnh, Tue Jan 15 21:47:26 2008 UTC
# Line 1  Line 1 
1  % $Header$  % $Header$
2  % $Name$  % $Name$
3    
4  \section{Four Layer Baroclinic Ocean Gyre In Spherical Coordinates}  \section[Baroclinic Gyre MITgcm Example]{Four Layer Baroclinic Ocean Gyre In Spherical Coordinates}
5  \label{www:tutorials}  %%%% \label{www:tutorials}
6  \label{sect:eg-fourlayer}  \label{sect:eg-fourlayer}
7    \begin{rawhtml}
8    <!-- CMIREDIR:eg-fourlayer: -->
9    \end{rawhtml}
10    \begin{center}
11    (in directory: {\it verification/tutorial\_baroclinic\_gyre/})
12    \end{center}
13    
14  \bodytext{bgcolor="#FFFFFFFF"}  \bodytext{bgcolor="#FFFFFFFF"}
15    
# Line 18  Line 24 
24  %\end{center}  %\end{center}
25    
26  This document describes an example experiment using MITgcm  This document describes an example experiment using MITgcm
27  to simulate a baroclinic ocean gyre in spherical  to simulate a baroclinic ocean gyre for four layers in spherical
28  polar coordinates. The barotropic  polar coordinates.  The files for this experiment can be found
29  example experiment in section \ref{sect:eg-baro}  in the verification directory under tutorial\_baroclinic\_gyre.
 illustrated how to configure the code for a single layer  
 simulation in a Cartesian grid. In this example a similar physical problem  
 is simulated, but the code is now configured  
 for four layers and in a spherical polar coordinate system.  
30    
31  \subsection{Overview}  \subsection{Overview}
32  \label{www:tutorials}  \label{www:tutorials}
# Line 104  non-linear, we use $\theta$ to represent Line 106  non-linear, we use $\theta$ to represent
106  the quantity that is carried in the model core equations.  the quantity that is carried in the model core equations.
107    
108  \begin{figure}  \begin{figure}
109  \begin{center}  %% \begin{center}
110   \resizebox{7.5in}{5.5in}{  %%  \resizebox{7.5in}{5.5in}{
111     \includegraphics*[0.2in,0.7in][10.5in,10.5in]  %%    \includegraphics*[0.2in,0.7in][10.5in,10.5in]
112     {part3/case_studies/fourlayer_gyre/simulation_config.eps} }  %%    {part3/case_studies/fourlayer_gyre/simulation_config.eps} }
113  \end{center}  %% \end{center}
114    \centerline{
115      \scalefig{.95}
116      \epsfbox{part3/case_studies/fourlayer_gyre/simulation_config.eps}
117    }
118  \caption{Schematic of simulation domain and wind-stress forcing function  \caption{Schematic of simulation domain and wind-stress forcing function
119  for the four-layer gyre numerical experiment. The domain is enclosed by solid  for the four-layer gyre numerical experiment. The domain is enclosed by solid
120  walls at $0^{\circ}$~E, $60^{\circ}$~E, $0^{\circ}$~N and $60^{\circ}$~N.  walls at $0^{\circ}$~E, $60^{\circ}$~E, $0^{\circ}$~N and $60^{\circ}$~N.
# Line 349  stability limit of 0.25. Line 355  stability limit of 0.25.
355  \label{SEC:eg_fourl_code_config}  \label{SEC:eg_fourl_code_config}
356    
357  The model configuration for this experiment resides under the  The model configuration for this experiment resides under the
358  directory {\it verification/exp2/}.  The experiment files  directory {\it verification/tutorial\_barotropic\_gyre/}.
359    The experiment files
360  \begin{itemize}  \begin{itemize}
361  \item {\it input/data}  \item {\it input/data}
362  \item {\it input/data.pkg}  \item {\it input/data.pkg}
# Line 360  directory {\it verification/exp2/}.  The Line 367  directory {\it verification/exp2/}.  The
367  \item {\it code/CPP\_OPTIONS.h},  \item {\it code/CPP\_OPTIONS.h},
368  \item {\it code/SIZE.h}.  \item {\it code/SIZE.h}.
369  \end{itemize}  \end{itemize}
370  contain the code customisations and parameter settings for this  contain the code customisations and parameter settings for this
371  experiments. Below we describe the customisations  experiment. Below we describe the customisations to these files
372  to these files associated with this experiment.  associated with this experiment.
373    
374  \subsubsection{File {\it input/data}}  \subsubsection{File {\it input/data}}
375  \label{www:tutorials}  \label{www:tutorials}
# Line 375  are Line 382  are
382    
383  \item Line 4,  \item Line 4,
384  \begin{verbatim} tRef=20.,10.,8.,6., \end{verbatim}  \begin{verbatim} tRef=20.,10.,8.,6., \end{verbatim}
385  this line sets  this line sets the initial and reference values of potential
386  the initial and reference values of potential temperature at each model  temperature at each model level in units of $^{\circ}\mathrm{C}$.  The entries
387  level in units of $^{\circ}$C.  are ordered from surface to depth. For each depth level the initial
388  The entries are ordered from surface to depth. For each  and reference profiles will be uniform in $x$ and $y$. The values
389  depth level the initial and reference profiles will be uniform in  specified here are read into the variable \varlink{tRef}{tRef} in the
390  $x$ and $y$. The values specified here are read into the  model code, by procedure \filelink{INI\_PARMS}{model-src-ini_parms.F}
 variable  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/names/OK.htm> \end{rawhtml}  
 tRef  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
 in the model code, by procedure  
 {\it  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}  
 INI\_PARMS  
 \begin{rawhtml} </A>\end{rawhtml}  
 }.  
   
 %% \codelink{var:tref} tRef \endlink  
 %% \codelink{file:ini_parms} {\it INI\_PARMS } \endlink  
 %% \codelink{proc:ini_parms} {\it INI\_PARMS } \endlink  
 %% \var{tref}  
 %% \proc{ini_parms}  
 %% \file{ini_parms}  
 \newcommand{\VARtref}{  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/names/OK.htm> \end{rawhtml}  
 tRef  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
 }  
   
   
391    
392  \fbox{  \fbox{
393  \begin{minipage}{5.0in}    \begin{minipage}{5.0in}
394  {\it S/R INI\_THETA}      {\it S/R INI\_THETA}({\it ini\_theta.F})
395  ({\it ini\_theta.F})    \end{minipage}
 \end{minipage}  
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/98.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
396  }  }
397    \filelink{ini\_theta.F}{model-src-ini_theta.F}
398    
399  \item Line 6,  \item Line 6,
400  \begin{verbatim} viscAz=1.E-2, \end{verbatim}  \begin{verbatim} viscAz=1.E-2, \end{verbatim}
401  this line sets the vertical Laplacian dissipation coefficient to  this line sets the vertical Laplacian dissipation coefficient to $1
402  $1 \times 10^{-2} {\rm m^{2}s^{-1}}$. Boundary conditions  \times 10^{-2} {\rm m^{2}s^{-1}}$. Boundary conditions for this
403  for this operator are specified later.  operator are specified later.  The variable \varlink{viscAz}{viscAz}
404  The variable  is read in the routine \filelink{ini\_parms.F}{model-src-ini_parms.F}
405  {\bf  and is copied into model general vertical coordinate variable
406  \begin{rawhtml} <A href=../../../code_reference/vdb/names/ZQ.htm> \end{rawhtml}  \varlink{viscAr}{viscAr} At each time step, the viscous term
407  viscAz  contribution to the momentum equations is calculated in routine
408  \begin{rawhtml} </A>\end{rawhtml}  \varlink{CALC\_DIFFUSIVITY}{CALC_DIFFUSIVITY}
 }  
 is read in the routine  
 {\it  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}  
 INI\_PARMS  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
 and is copied into model general vertical coordinate variable  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/names/PF.htm> \end{rawhtml}  
 viscAr  
 \begin{rawhtml} </A>\end{rawhtml}  
 }. At each time step, the viscous term contribution to the momentum equations  
 is calculated in routine  
 {\it S/R CALC\_DIFFUSIVITY}.  
409    
410  \fbox{  \fbox{
411  \begin{minipage}{5.0in}  \begin{minipage}{5.0in}
412  {\it S/R CALC\_DIFFUSIVITY}({\it calc\_diffusivity.F})  {\it S/R CALC\_DIFFUSIVITY}({\it calc\_diffusivity.F})
413  \end{minipage}  \end{minipage}
414  }  }
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/53.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
415    
416  \item Line 7,  \item Line 7,
417  \begin{verbatim}  \begin{verbatim}
418  viscAh=4.E2,  viscAh=4.E2,
419  \end{verbatim}  \end{verbatim}
420  this line sets the horizontal laplacian frictional dissipation coefficient to    this line sets the horizontal laplacian frictional dissipation
421  $1 \times 10^{-2} {\rm m^{2}s^{-1}}$. Boundary conditions    coefficient to $1 \times 10^{-2} {\rm m^{2}s^{-1}}$. Boundary
422  for this operator are specified later.    conditions for this operator are specified later.  The variable
423  The variable    \varlink{viscAh}{viscAh} is read in the routine
424  {\bf    \varlink{INI\_PARMS}{INI_PARMS} and applied in routine
425  \begin{rawhtml} <A href=../../../code_reference/vdb/names/SI.htm> \end{rawhtml}    \varlink{MOM\_FLUXFORM}{MOM_FLUXFORM}.
 viscAh  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
 is read in the routine  
 {\it  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}  
 INI\_PARMS  
 \begin{rawhtml} </A>\end{rawhtml}  
 } and applied in routines {\it CALC\_MOM\_RHS} and {\it CALC\_GW}.  
426    
427  \fbox{  \fbox{
428  \begin{minipage}{5.0in}    \begin{minipage}{5.0in}
429  {\it S/R CALC\_MOM\_RHS}({\it calc\_mom\_rhs.F})      {\it S/R MOM\_FLUXFORM}({\it mom\_fluxform.F})
430  \end{minipage}    \end{minipage}
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/60.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
431  }  }
432    
433  \fbox{  \item Line 8,
 \begin{minipage}{5.0in}  
 {\it S/R CALC\_GW}({\it calc\_gw.F})  
 \end{minipage}  
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/58.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
   
 \item Lines 8,  
434  \begin{verbatim}  \begin{verbatim}
435  no_slip_sides=.FALSE.  no_slip_sides=.FALSE.
436  \end{verbatim}  \end{verbatim}
437  this line selects a free-slip lateral boundary condition for    this line selects a free-slip lateral boundary condition for the
438  the horizontal laplacian friction operator    horizontal laplacian friction operator e.g. $\frac{\partial
439  e.g. $\frac{\partial u}{\partial y}$=0 along boundaries in $y$ and      u}{\partial y}$=0 along boundaries in $y$ and $\frac{\partial
440  $\frac{\partial v}{\partial x}$=0 along boundaries in $x$.      v}{\partial x}$=0 along boundaries in $x$.  The variable
441  The variable    \varlink{no\_slip\_sides}{no_slip_sides} is read in the routine
442  {\bf    \varlink{INI\_PARMS}{INI_PARMS} and the boundary condition is
443  \begin{rawhtml} <A href=../../../code_reference/vdb/names/UT.htm> \end{rawhtml}    evaluated in routine
444  no\_slip\_sides  
445  \begin{rawhtml} </A>\end{rawhtml}    \fbox{
446  }      \begin{minipage}{5.0in}
447  is read in the routine        {\it S/R MOM\_FLUXFORM}({\it mom\_fluxform.F})
448  {\it      \end{minipage}
449  \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}    }
450  INI\_PARMS    \filelink{mom\_fluxform.F}{pkg-mom_fluxform-mom_fluxform.F}
451  \begin{rawhtml} </A>\end{rawhtml}    
 } and the boundary condition is evaluated in routine  
 {\it S/R CALC\_MOM\_RHS}.  
   
   
 \fbox{  
 \begin{minipage}{5.0in}  
 {\it S/R CALC\_MOM\_RHS}({\it calc\_mom\_rhs.F})  
 \end{minipage}  
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/60.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
   
452  \item Lines 9,  \item Lines 9,
453  \begin{verbatim}  \begin{verbatim}
454  no_slip_bottom=.TRUE.  no_slip_bottom=.TRUE.
455  \end{verbatim}  \end{verbatim}
456  this line selects a no-slip boundary condition for bottom    this line selects a no-slip boundary condition for bottom boundary
457  boundary condition in the vertical laplacian friction operator    condition in the vertical laplacian friction operator e.g. $u=v=0$
458  e.g. $u=v=0$ at $z=-H$, where $H$ is the local depth of the domain.    at $z=-H$, where $H$ is the local depth of the domain.  The variable
459  The variable    \varlink{no\_slip\_bottom}{no\_slip\_bottom} is read in the routine
460  {\bf    \filelink{INI\_PARMS}{model-src-ini_parms.F} and is applied in the
461  \begin{rawhtml} <A href=../../../code_reference/vdb/names/UK.htm> \end{rawhtml}    routine \varlink{MOM\_FLUXFORM}{MOM_FLUXFORM}.
462  no\_slip\_bottom  
463  \begin{rawhtml} </A>\end{rawhtml}    \fbox{
464  }      \begin{minipage}{5.0in}
465  is read in the routine        {\it S/R MOM\_FLUXFORM}({\it mom\_fluxform.F})
466  {\it      \end{minipage}
467  \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}    }
468  INI\_PARMS    \filelink{mom\_fluxform.F}{pkg-mom_fluxform-mom_fluxform.F}
 \begin{rawhtml} </A>\end{rawhtml}  
 } and is applied in the routine {\it S/R CALC\_MOM\_RHS}.  
   
 \fbox{  
 \begin{minipage}{5.0in}  
 {\it S/R CALC\_MOM\_RHS}({\it calc\_mom\_rhs.F})  
 \end{minipage}  
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/60.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
469    
470  \item Line 10,  \item Line 10,
471  \begin{verbatim}  \begin{verbatim}
472  diffKhT=4.E2,  diffKhT=4.E2,
473  \end{verbatim}  \end{verbatim}
474  this line sets the horizontal diffusion coefficient for temperature    this line sets the horizontal diffusion coefficient for temperature
475  to $400\,{\rm m^{2}s^{-1}}$. The boundary condition on this    to $400\,{\rm m^{2}s^{-1}}$. The boundary condition on this operator
476  operator is $\frac{\partial}{\partial x}=\frac{\partial}{\partial y}=0$ at    is $\frac{\partial}{\partial x}=\frac{\partial}{\partial y}=0$ at
477  all boundaries.    all boundaries.  The variable \varlink{diffKhT}{diffKhT} is read in
478  The variable    the routine \varlink{INI\_PARMS}{INI_PARMS} and used in routine
479  {\bf    \varlink{CALC\_GT}{CALC_GT}.
480  \begin{rawhtml} <A href=../../../code_reference/vdb/names/RC.htm> \end{rawhtml}  
481  diffKhT    \fbox{ \begin{minipage}{5.0in}
482  \begin{rawhtml} </A>\end{rawhtml}        {\it S/R CALC\_GT}({\it calc\_gt.F})
483  }      \end{minipage}
484  is read in the routine    }
485  {\it    \filelink{calc\_gt.F}{model-src-calc_gt.F}
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}  
 INI\_PARMS  
 \begin{rawhtml} </A>\end{rawhtml}  
 } and used in routine {\it S/R CALC\_GT}.  
   
 \fbox{ \begin{minipage}{5.0in}  
 {\it S/R CALC\_GT}({\it calc\_gt.F})  
 \end{minipage}  
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/57.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
486    
487  \item Line 11,  \item Line 11,
488  \begin{verbatim}  \begin{verbatim}
489  diffKzT=1.E-2,  diffKzT=1.E-2,
490  \end{verbatim}  \end{verbatim}
491  this line sets the vertical diffusion coefficient for temperature    this line sets the vertical diffusion coefficient for temperature to
492  to $10^{-2}\,{\rm m^{2}s^{-1}}$. The boundary condition on this    $10^{-2}\,{\rm m^{2}s^{-1}}$. The boundary condition on this
493  operator is $\frac{\partial}{\partial z}$ = 0 on all boundaries.    operator is $\frac{\partial}{\partial z}$ = 0 on all boundaries.
494  The variable    The variable \varlink{diffKzT}{diffKzT} is read in the routine
495  {\bf    \varlink{INI\_PARMS}{INI_PARMS}. It is copied into model general
496  \begin{rawhtml} <A href=../../../code_reference/vdb/names/ZT.htm> \end{rawhtml}    vertical coordinate variable \varlink{diffKrT}{diffKrT} which is
497  diffKzT    used in routine \varlink{CALC\_DIFFUSIVITY}{CALC_DIFFUSIVITY}.
498  \begin{rawhtml} </A>\end{rawhtml}  
499  }    \fbox{ \begin{minipage}{5.0in}
500  is read in the routine        {\it S/R CALC\_DIFFUSIVITY}({\it calc\_diffusivity.F})
501  {\it      \end{minipage}
502  \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}    }
503  INI\_PARMS    \filelink{calc\_diffusivity.F}{model-src-calc_diffusivity.F}
 \begin{rawhtml} </A>\end{rawhtml}  
 }.  
 It is copied into model general vertical coordinate variable  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/names/PD.htm> \end{rawhtml}  
 diffKrT  
 \begin{rawhtml} </A>\end{rawhtml}  
 } which is used in routine {\it S/R CALC\_DIFFUSIVITY}.  
   
 \fbox{ \begin{minipage}{5.0in}  
 {\it S/R CALC\_DIFFUSIVITY}({\it calc\_diffusivity.F})  
 \end{minipage}  
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/53.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
   
   
504    
505  \item Line 13,  \item Line 13,
506  \begin{verbatim}  \begin{verbatim}
507  tAlpha=2.E-4,  tAlpha=2.E-4,
508  \end{verbatim}  \end{verbatim}
509  This line sets the thermal expansion coefficient for the fluid    This line sets the thermal expansion coefficient for the fluid to $2
510  to $2 \times 10^{-4}\,{\rm degrees}^{-1}$    \times 10^{-4}\,{\rm degrees}^{-1}$ The variable
511  The variable    \varlink{tAlpha}{tAlpha} is read in the routine
512  {\bf    \varlink{INI\_PARMS}{INI_PARMS}. The routine
513  \begin{rawhtml} <A href=../../../code_reference/vdb/names/ZV.htm> \end{rawhtml}    \varlink{FIND\_RHO}{FIND\_RHO} makes use of {\bf tAlpha}.
514  tAlpha  
515  \begin{rawhtml} </A>\end{rawhtml}    \fbox{
516  }      \begin{minipage}{5.0in}
517  is read in the routine        {\it S/R FIND\_RHO}({\it find\_rho.F})
518  {\it      \end{minipage}
519  \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}    }
520  INI\_PARMS    \filelink{find\_rho.F}{model-src-find_rho.F}
 \begin{rawhtml} </A>\end{rawhtml}  
 }. The routine {\it S/R FIND\_RHO} makes use of {\bf tAlpha}.  
   
 \fbox{  
 \begin{minipage}{5.0in}  
 {\it S/R FIND\_RHO}({\it find\_rho.F})  
 \end{minipage}  
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/79.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
521    
522  \item Line 18,  \item Line 18,
523  \begin{verbatim}  \begin{verbatim}
524  eosType='LINEAR'  eosType='LINEAR'
525  \end{verbatim}  \end{verbatim}
526  This line selects the linear form of the equation of state.    This line selects the linear form of the equation of state.  The
527  The variable    variable \varlink{eosType}{eosType} is read in the routine
528  {\bf    \varlink{INI\_PARMS}{INI_PARMS}. The values of {\bf eosType} sets
529  \begin{rawhtml} <A href=../../../code_reference/vdb/names/WV.htm> \end{rawhtml}    which formula in routine {\it FIND\_RHO} is used to calculate
530  eosType    density.
531  \begin{rawhtml} </A>\end{rawhtml}  
532  }    \fbox{
533  is read in the routine      \begin{minipage}{5.0in}
534  {\it        {\it S/R FIND\_RHO}({\it find\_rho.F})
535  \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}      \end{minipage}
536  INI\_PARMS    }
537  \begin{rawhtml} </A>\end{rawhtml}    \filelink{find\_rho.F}{model-src-find_rho.F}
 }. The values of {\bf eosType} sets which formula in routine  
 {\it FIND\_RHO} is used to calculate density.  
   
 \fbox{  
 \begin{minipage}{5.0in}  
 {\it S/R FIND\_RHO}({\it find\_rho.F})  
 \end{minipage}  
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/79.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
   
   
538    
539  \item Line 40,  \item Line 40,
540  \begin{verbatim}  \begin{verbatim}
541  usingSphericalPolarGrid=.TRUE.,  usingSphericalPolarGrid=.TRUE.,
542  \end{verbatim}  \end{verbatim}
543  This line requests that the simulation be performed in a    This line requests that the simulation be performed in a spherical
544  spherical polar coordinate system. It affects the interpretation of    polar coordinate system. It affects the interpretation of grid input
545  grid input parameters, for example {\bf delX} and {\bf delY} and    parameters, for example {\bf delX} and {\bf delY} and causes the
546  causes the grid generation routines to initialize an internal grid based    grid generation routines to initialize an internal grid based on
547  on spherical polar geometry.    spherical polar geometry.  The variable
548  The variable    \varlink{usingSphericalPolarGrid}{usingSphericalPolarGrid} is read
549  {\bf    in the routine \varlink{INI\_PARMS}{INI_PARMS}. When set to {\bf
550  \begin{rawhtml} <A href=../../../code_reference/vdb/names/10T.htm> \end{rawhtml}      .TRUE.} the settings of {\bf delX} and {\bf delY} are taken to be
551  usingSphericalPolarGrid    in degrees. These values are used in the routine
552  \begin{rawhtml} </A>\end{rawhtml}  
553  }    \fbox{
554  is read in the routine      \begin{minipage}{5.0in}
555  {\it        {\it S/R INI\_SPEHRICAL\_POLAR\_GRID}({\it ini\_spherical\_polar\_grid.F})
556  \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}      \end{minipage}
557  INI\_PARMS    }
558  \begin{rawhtml} </A>\end{rawhtml}    \filelink{ini\_spherical\_polar\_grid.F}{model-src-ini_spherical_polar_grid.F}
 }. When set to {\bf .TRUE.} the settings of {\bf delX} and {\bf delY} are  
 taken to be in degrees. These values are used in the  
 routine {\it INI\_SPEHRICAL\_POLAR\_GRID}.  
   
 \fbox{  
 \begin{minipage}{5.0in}  
 {\it S/R INI\_SPEHRICAL\_POLAR\_GRID}({\it ini\_spherical\_polar\_grid.F})  
 \end{minipage}  
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/97.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
559    
560  \item Line 41,  \item Line 41,
561  \begin{verbatim}  \begin{verbatim}
562  phiMin=0.,  phiMin=0.,
563  \end{verbatim}  \end{verbatim}
564  This line sets the southern boundary of the modeled    This line sets the southern boundary of the modeled domain to
565  domain to $0^{\circ}$ latitude. This value affects both the    $0^{\circ}$ latitude. This value affects both the generation of the
566  generation of the locally orthogonal grid that the model    locally orthogonal grid that the model uses internally and affects
567  uses internally and affects the initialization of the coriolis force.    the initialization of the coriolis force.  Note - it is not required
568  Note - it is not required to set    to set a longitude boundary, since the absolute longitude does not
569  a longitude boundary, since the absolute longitude does    alter the kernel equation discretisation.  The variable
570  not alter the kernel equation discretisation.    \varlink{phiMin}{phiMin} is read in the
571  The variable    routine \varlink{INI\_PARMS}{INI_PARMS} and is used in routine
572  {\bf  
573  \begin{rawhtml} <A href=../../../code_reference/vdb/names/110.htm> \end{rawhtml}    \fbox{
574  phiMin      \begin{minipage}{5.0in}
575  \begin{rawhtml} </A>\end{rawhtml}        {\it S/R INI\_SPEHRICAL\_POLAR\_GRID}({\it ini\_spherical\_polar\_grid.F})
576  }      \end{minipage}
577  is read in the routine    }
578  {\it    \filelink{ini\_spherical\_polar\_grid.F}{model-src-ini_spherical_polar_grid.F}
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}  
 INI\_PARMS  
 \begin{rawhtml} </A>\end{rawhtml}  
 } and is used in routine {\it INI\_SPEHRICAL\_POLAR\_GRID}.  
   
 \fbox{  
 \begin{minipage}{5.0in}  
 {\it S/R INI\_SPEHRICAL\_POLAR\_GRID}({\it ini\_spherical\_polar\_grid.F})  
 \end{minipage}  
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/97.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
579    
580  \item Line 42,  \item Line 42,
581  \begin{verbatim}  \begin{verbatim}
582  delX=60*1.,  delX=60*1.,
583  \end{verbatim}  \end{verbatim}
584  This line sets the horizontal grid spacing between each y-coordinate line    This line sets the horizontal grid spacing between each y-coordinate
585  in the discrete grid to $1^{\circ}$ in longitude.    line in the discrete grid to $1^{\circ}$ in longitude.  The variable
586  The variable    \varlink{delX}{delX} is read in the routine
587  {\bf    \varlink{INI\_PARMS}{INI_PARMS} and is used in routine
588  \begin{rawhtml} <A href=../../../code_reference/vdb/names/10Z.htm> \end{rawhtml}  
589  delX    \fbox{
590  \begin{rawhtml} </A>\end{rawhtml}      \begin{minipage}{5.0in}
591  }        {\it S/R INI\_SPEHRICAL\_POLAR\_GRID}({\it ini\_spherical\_polar\_grid.F})
592  is read in the routine      \end{minipage}
593  {\it    }
594  \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}    \filelink{ini\_spherical\_polar\_grid.F}{model-src-ini_spherical_polar_grid.F}
 INI\_PARMS  
 \begin{rawhtml} </A>\end{rawhtml}  
 } and is used in routine {\it INI\_SPEHRICAL\_POLAR\_GRID}.  
   
 \fbox{  
 \begin{minipage}{5.0in}  
 {\it S/R INI\_SPEHRICAL\_POLAR\_GRID}({\it ini\_spherical\_polar\_grid.F})  
 \end{minipage}  
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/97.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
595    
596  \item Line 43,  \item Line 43,
597  \begin{verbatim}  \begin{verbatim}
598  delY=60*1.,  delY=60*1.,
599  \end{verbatim}  \end{verbatim}
600  This line sets the horizontal grid spacing between each y-coordinate line    This line sets the horizontal grid spacing between each y-coordinate
601  in the discrete grid to $1^{\circ}$ in latitude.    line in the discrete grid to $1^{\circ}$ in latitude.  The variable
602  The variable    \varlink{delY}{delY} is read in the routine
603  {\bf    \varlink{INI\_PARMS}{INI_PARMS} and is used in routine
604  \begin{rawhtml} <A href=../../../code_reference/vdb/names/UB.htm> \end{rawhtml}  
605  delY      \fbox{
606  \begin{rawhtml} </A>\end{rawhtml}      \begin{minipage}{5.0in}
607  }        {\it S/R INI\_SPEHRICAL\_POLAR\_GRID}({\it ini\_spherical\_polar\_grid.F})
608  is read in the routine      \end{minipage}
609  {\it    }
610  \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}    \filelink{ini\_spherical\_polar\_grid.F}{model-src-ini_spherical_polar_grid.F}
 INI\_PARMS  
 \begin{rawhtml} </A>\end{rawhtml}  
 } and is used in routine {\it INI\_SPEHRICAL\_POLAR\_GRID}.  
   
 \fbox{  
 \begin{minipage}{5.0in}  
 {\it S/R INI\_SPEHRICAL\_POLAR\_GRID}({\it ini\_spherical\_polar\_grid.F})  
 \end{minipage}  
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/97.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
611    
612  \item Line 44,  \item Line 44,
613  \begin{verbatim}  \begin{verbatim}
614  delZ=500.,500.,500.,500.,  delZ=500.,500.,500.,500.,
615  \end{verbatim}  \end{verbatim}
616  This line sets the vertical grid spacing between each z-coordinate line    This line sets the vertical grid spacing between each z-coordinate
617  in the discrete grid to $500\,{\rm m}$, so that the total model depth    line in the discrete grid to $500\,{\rm m}$, so that the total model
618  is $2\,{\rm km}$.    depth is $2\,{\rm km}$.  The variable \varlink{delZ}{delZ} is read
619  The variable    in the routine \varlink{INI\_PARMS}{INI_PARMS}.  It is copied into
620  {\bf    the internal model coordinate variable \varlink{delR}{delR} which is
621  \begin{rawhtml} <A href=../../../code_reference/vdb/names/10W.htm> \end{rawhtml}    used in routine
622  delZ  
623  \begin{rawhtml} </A>\end{rawhtml}    \fbox{
624  }      \begin{minipage}{5.0in}
625  is read in the routine        {\it S/R INI\_VERTICAL\_GRID}({\it ini\_vertical\_grid.F})
626  {\it      \end{minipage}
627  \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}    }
628  INI\_PARMS    \filelink{ini\_vertical\_grid.F}{model-src-ini_vertical_grid.F}
 \begin{rawhtml} </A>\end{rawhtml}  
 }.  
 It is copied into the internal  
 model coordinate variable  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/names/10Y.htm> \end{rawhtml}  
 delR  
 \begin{rawhtml} </A>\end{rawhtml}  
 } which is used in routine {\it INI\_VERTICAL\_GRID}.  
   
 \fbox{  
 \begin{minipage}{5.0in}  
 {\it S/R INI\_VERTICAL\_GRID}({\it ini\_vertical\_grid.F})  
 \end{minipage}  
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/100.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
629    
630  \item Line 47,  \item Line 47,
631  \begin{verbatim}  \begin{verbatim}
632  bathyFile='topog.box'  bathyFile='topog.box'
633  \end{verbatim}  \end{verbatim}
634  This line specifies the name of the file from which the domain    This line specifies the name of the file from which the domain
635  bathymetry is read. This file is a two-dimensional ($x,y$) map of    bathymetry is read. This file is a two-dimensional ($x,y$) map of
636  depths. This file is assumed to contain 64-bit binary numbers    depths. This file is assumed to contain 64-bit binary numbers giving
637  giving the depth of the model at each grid cell, ordered with the x    the depth of the model at each grid cell, ordered with the x
638  coordinate varying fastest. The points are ordered from low coordinate    coordinate varying fastest. The points are ordered from low
639  to high coordinate for both axes. The units and orientation of the    coordinate to high coordinate for both axes. The units and
640  depths in this file are the same as used in the MITgcm code. In this    orientation of the depths in this file are the same as used in the
641  experiment, a depth of $0m$ indicates a solid wall and a depth    MITgcm code. In this experiment, a depth of $0m$ indicates a solid
642  of $-2000m$ indicates open ocean. The matlab program    wall and a depth of $-2000m$ indicates open ocean. The matlab
643  {\it input/gendata.m} shows an example of how to generate a    program {\it input/gendata.m} shows an example of how to generate a
644  bathymetry file.    bathymetry file.  The variable \varlink{bathyFile}{bathyFile} is
645  The variable    read in the routine \varlink{INI\_PARMS}{INI_PARMS}.  The bathymetry
646  {\bf    file is read in the routine
647  \begin{rawhtml} <A href=../../../code_reference/vdb/names/179.htm> \end{rawhtml}  
648  bathyFile    \fbox{
649  \begin{rawhtml} </A>\end{rawhtml}      \begin{minipage}{5.0in}
650  }        {\it S/R INI\_DEPTHS}({\it ini\_depths.F})
651  is read in the routine      \end{minipage}
652  {\it    }
653  \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}    \filelink{ini\_depths.F}{model-src-ini_depths.F}
 INI\_PARMS  
 \begin{rawhtml} </A>\end{rawhtml}  
 }. The bathymetry file is read in the routine {\it INI\_DEPTHS}.  
   
 \fbox{  
 \begin{minipage}{5.0in}  
 {\it S/R INI\_DEPTHS}({\it ini\_depths.F})  
 \end{minipage}  
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/88.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
   
654    
655  \item Line 50,  \item Line 50,
656  \begin{verbatim}  \begin{verbatim}
657  zonalWindFile='windx.sin_y'  zonalWindFile='windx.sin_y'
658  \end{verbatim}  \end{verbatim}
659  This line specifies the name of the file from which the x-direction    This line specifies the name of the file from which the x-direction
660  (zonal) surface wind stress is read. This file is also a two-dimensional    (zonal) surface wind stress is read. This file is also a
661  ($x,y$) map and is enumerated and formatted in the same manner as the    two-dimensional ($x,y$) map and is enumerated and formatted in the
662  bathymetry file. The matlab program {\it input/gendata.m} includes example    same manner as the bathymetry file. The matlab program {\it
663  code to generate a valid      input/gendata.m} includes example code to generate a valid {\bf
664  {\bf zonalWindFile}      zonalWindFile} file.  The variable
665  file.      \varlink{zonalWindFile}{zonalWindFile} is read in the routine
666  The variable    \varlink{INI\_PARMS}{INI_PARMS}.  The wind-stress file is read in
667  {\bf    the routine
668  \begin{rawhtml} <A href=../../../code_reference/vdb/names/13W.htm> \end{rawhtml}  
669  zonalWindFile    \fbox{
670  \begin{rawhtml} </A>\end{rawhtml}      \begin{minipage}{5.0in}
671  }        {\it S/R EXTERNAL\_FIELDS\_LOAD}({\it external\_fields\_load.F})
672  is read in the routine      \end{minipage}
673  {\it    }
674  \begin{rawhtml} <A href=../../../code_reference/vdb/code/94.htm> \end{rawhtml}    \filelink{external\_fields\_load.F}{model-src-external_fields_load.F}
 INI\_PARMS  
 \begin{rawhtml} </A>\end{rawhtml}  
 }.  The wind-stress file is read in the routine  
 {\it EXTERNAL\_FIELDS\_LOAD}.  
   
 \fbox{  
 \begin{minipage}{5.0in}  
 {\it S/R EXTERNAL\_FIELDS\_LOAD}({\it external\_fields\_load.F})  
 \end{minipage}  
 }  
 {\bf  
 \begin{rawhtml} <A href=../../../code_reference/vdb/code/75.htm> \end{rawhtml}  
 goto code  
 \begin{rawhtml} </A>\end{rawhtml}  
 }  
675    
676  \end{itemize}  \end{itemize}
677    
# Line 967  customisations for this experiment. Line 698  customisations for this experiment.
698  \subsubsection{File {\it input/windx.sin\_y}}  \subsubsection{File {\it input/windx.sin\_y}}
699  \label{www:tutorials}  \label{www:tutorials}
700    
701  The {\it input/windx.sin\_y} file specifies a two-dimensional ($x,y$)  The {\it input/windx.sin\_y} file specifies a two-dimensional ($x,y$)
702  map of wind stress ,$\tau_{x}$, values. The units used are $Nm^{-2}$ (the  map of wind stress ,$\tau_{x}$, values. The units used are $Nm^{-2}$
703  default for MITgcm).  (the default for MITgcm).  Although $\tau_{x}$ is only a function of
704  Although $\tau_{x}$ is only a function of latitude, $y$,  latitude, $y$, in this experiment this file must still define a
705  in this experiment  complete two-dimensional map in order to be compatible with the
706  this file must still define a complete two-dimensional map in order  standard code for loading forcing fields in MITgcm (routine {\it
707  to be compatible with the standard code for loading forcing fields    EXTERNAL\_FIELDS\_LOAD}.  The included matlab program {\it
708  in MITgcm (routine {\it EXTERNAL\_FIELDS\_LOAD}.    input/gendata.m} gives a complete code for creating the {\it
709  The included matlab program {\it input/gendata.m} gives a complete    input/windx.sin\_y} file.
 code for creating the {\it input/windx.sin\_y} file.  
710    
711  \subsubsection{File {\it input/topog.box}}  \subsubsection{File {\it input/topog.box}}
712  \label{www:tutorials}  \label{www:tutorials}

Legend:
Removed from v.1.13  
changed lines
  Added in v.1.24

  ViewVC Help
Powered by ViewVC 1.1.22