/[MITgcm]/manual/s_getstarted/text/getting_started.tex
ViewVC logotype

Diff of /manual/s_getstarted/text/getting_started.tex

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

revision 1.17 by edhill, Thu Jan 29 15:11:39 2004 UTC revision 1.21 by edhill, Thu Mar 11 16:11:56 2004 UTC
# Line 79  provide easy support for maintenance upd Line 79  provide easy support for maintenance upd
79    
80  \end{enumerate}  \end{enumerate}
81    
82    \subsubsection{Checkout from CVS}
83    \label{sect:cvs_checkout}
84    
85  If CVS is available on your system, we strongly encourage you to use it. CVS  If CVS is available on your system, we strongly encourage you to use it. CVS
86  provides an efficient and elegant way of organizing your code and keeping  provides an efficient and elegant way of organizing your code and keeping
87  track of your changes. If CVS is not available on your machine, you can also  track of your changes. If CVS is not available on your machine, you can also
# Line 93  in your .cshrc or .tcshrc file.  For bas Line 96  in your .cshrc or .tcshrc file.  For bas
96  \begin{verbatim}  \begin{verbatim}
97  % export CVSROOT=':pserver:cvsanon@mitgcm.org:/u/gcmpack'  % export CVSROOT=':pserver:cvsanon@mitgcm.org:/u/gcmpack'
98  \end{verbatim}  \end{verbatim}
99  in your .profile or .bashrc file.  in your \texttt{.profile} or \texttt{.bashrc} file.
100    
101    
102  To get MITgcm through CVS, first register with the MITgcm CVS server  To get MITgcm through CVS, first register with the MITgcm CVS server
# Line 121  http://mitgcm.org/source_code.html Line 124  http://mitgcm.org/source_code.html
124  \end{verbatim}  \end{verbatim}
125  \begin{rawhtml} </A> \end{rawhtml}  \begin{rawhtml} </A> \end{rawhtml}
126    
127    As a convenience, the MITgcm CVS server contains aliases which are
128    named subsets of the codebase.  These aliases can be especially
129    helpful when used over slow internet connections or on machines with
130    restricted storage space.  Table \ref{tab:cvsModules} contains a list
131    of CVS aliases
132    \begin{table}[htb]
133      \centering
134      \begin{tabular}[htb]{|lp{3.25in}|}\hline
135        \textbf{Alias Name}    &  \textbf{Information (directories) Contained}  \\\hline
136        \texttt{MITgcm\_code}  &  Only the source code -- none of the verification examples.  \\
137        \texttt{MITgcm\_verif\_basic}
138        &  Source code plus a small set of the verification examples
139        (\texttt{global\_ocean.90x40x15}, \texttt{aim.5l\_cs}, \texttt{hs94.128x64x5},
140        \texttt{front\_relax}, and \texttt{plume\_on\_slope}).  \\
141        \texttt{MITgcm\_verif\_atmos}  &  Source code plus all of the atmospheric examples.  \\
142        \texttt{MITgcm\_verif\_ocean}  &  Source code plus all of the oceanic examples.  \\
143        \texttt{MITgcm\_verif\_all}    &  Source code plus all of the
144        verification examples. \\\hline
145      \end{tabular}
146      \caption{MITgcm CVS Modules}
147      \label{tab:cvsModules}
148    \end{table}
149    
150  The checkout process creates a directory called \textit{MITgcm}. If  The checkout process creates a directory called \textit{MITgcm}. If
151  the directory \textit{MITgcm} exists this command updates your code  the directory \textit{MITgcm} exists this command updates your code
# Line 134  MITgcm code can be found Line 159  MITgcm code can be found
159  here  here
160  \begin{rawhtml} </A> \end{rawhtml}  \begin{rawhtml} </A> \end{rawhtml}
161  .  .
162    It is important to note that the CVS aliases in Table
163    \ref{tab:cvsModules} cannot be used in conjunction with the CVS
164    \texttt{-d DIRNAME} option.  However, the \texttt{MITgcm} directories
165    they create can be changed to a different name following the check-out:
166    \begin{verbatim}
167       %  cvs co MITgcm_verif_basic
168       %  mv MITgcm MITgcm_verif_basic
169    \end{verbatim}
170    
171    
172  \paragraph*{Conventional download method}  \subsubsection{Conventional download method}
173  \label{sect:conventionalDownload}  \label{sect:conventionalDownload}
174    
175  If you do not have CVS on your system, you can download the model as a  If you do not have CVS on your system, you can download the model as a
# Line 156  MITgcm-support@mitgcm.org Line 189  MITgcm-support@mitgcm.org
189  \begin{rawhtml} </A> \end{rawhtml}  \begin{rawhtml} </A> \end{rawhtml}
190  mailing list.  mailing list.
191    
192  \paragraph*{Upgrading from an earlier version}  \subsubsection{Upgrading from an earlier version}
193    
194  If you already have an earlier version of the code you can ``upgrade''  If you already have an earlier version of the code you can ``upgrade''
195  your copy instead of downloading the entire repository again. First,  your copy instead of downloading the entire repository again. First,
# Line 791  The most important command-line options Line 824  The most important command-line options
824    provided by commercial Unix vendors, GNU \texttt{make} (sometimes    provided by commercial Unix vendors, GNU \texttt{make} (sometimes
825    called \texttt{gmake}) should be preferred.  This option provides a    called \texttt{gmake}) should be preferred.  This option provides a
826    means for specifying the make executable to be used.    means for specifying the make executable to be used.
827      
828    \item[\texttt{--bash=/path/to/sh}] On some (usually older UNIX)
829      machines, the ``bash'' shell is unavailable.  To run on these
830      systems, \texttt{genmake2} can be invoked using an ``sh'' (that is,
831      a Bourne, POSIX, or compatible) shell.  The syntax in these
832      circumstances is:
833      \begin{center}
834        \texttt{/bin/sh genmake2 -bash=/bin/sh [...options...]}
835      \end{center}
836      where \texttt{/bin/sh} can be replaced with the full path and name
837      of the desired shell.
838    
839  \end{description}  \end{description}
840    
# Line 940  simulation controls. Line 984  simulation controls.
984  \begin{description}  \begin{description}
985  \item[dimensions] \  \item[dimensions] \
986        
987    The number of points in the x, y,\textit{\ }and r\textit{\    The number of points in the x, y, and r directions are represented
988    }directions are represented by the variables \textbf{sNx}\textit{,    by the variables \textbf{sNx}, \textbf{sNy} and \textbf{Nr}
989    }\textbf{sNy}\textit{, } and \textbf{Nr}\textit{\ }respectively    respectively which are declared and set in the file
990    which are declared and set in the file \textit{model/inc/SIZE.h.    \textit{model/inc/SIZE.h}.  (Again, this assumes a mono-processor
991    }(Again, this assumes a mono-processor calculation. For    calculation. For multiprocessor calculations see the section on
992    multiprocessor calculations see section on parallel implementation.)    parallel implementation.)
993    
994  \item[grid] \  \item[grid] \
995        
996    Three different grids are available: cartesian, spherical polar, and    Three different grids are available: cartesian, spherical polar, and
997    curvilinear (including the cubed sphere). The grid is set through    curvilinear (which includes the cubed sphere). The grid is set
998    the logical variables \textbf{usingCartesianGrid}\textit{, }\textbf{    through the logical variables \textbf{usingCartesianGrid},
999      usingSphericalPolarGrid}\textit{, }and \textit{\ }\textbf{    \textbf{usingSphericalPolarGrid}, and \textbf{usingCurvilinearGrid}.
1000      usingCurvilinearGrid}\textit{. }In the case of spherical and    In the case of spherical and curvilinear grids, the southern
1001    curvilinear grids, the southern boundary is defined through the    boundary is defined through the variable \textbf{phiMin} which
1002    variable \textbf{phiMin} \textit{\ }which corresponds to the    corresponds to the latitude of the southern most cell face (in
1003    latitude of the southern most cell face (in degrees). The resolution    degrees). The resolution along the x and y directions is controlled
1004    along the x and y directions is controlled by the 1D arrays    by the 1D arrays \textbf{delx} and \textbf{dely} (in meters in the
1005    \textbf{delx}\textit{\ }and \textbf{dely}\textit{\ }(in meters in    case of a cartesian grid, in degrees otherwise).  The vertical grid
1006    the case of a cartesian grid, in degrees otherwise). The vertical    spacing is set through the 1D array \textbf{delz} for the ocean (in
1007    grid spacing is set through the 1D array \textbf{delz }for the ocean    meters) or \textbf{delp} for the atmosphere (in Pa).  The variable
1008    (in meters) or \textbf{delp}\textit{\ }for the atmosphere (in Pa).    \textbf{Ro\_SeaLevel} represents the standard position of Sea-Level
1009    The variable \textbf{ Ro\_SeaLevel} represents the standard position    in ``R'' coordinate. This is typically set to 0m for the ocean
1010    of Sea-Level in ''R'' coordinate. This is typically set to 0m for    (default value) and 10$^{5}$Pa for the atmosphere. For the
1011    the ocean (default value) and 10$ ^{5}$Pa for the atmosphere. For    atmosphere, also set the logical variable \textbf{groundAtK1} to
1012    the atmosphere, also set the logical variable \textbf{groundAtK1} to    \texttt{'.TRUE.'} which puts the first level (k=1) at the lower
   '.\texttt{TRUE}.'. which put the first level (k=1) at the lower  
1013    boundary (ground).    boundary (ground).
1014        
1015    For the cartesian grid case, the Coriolis parameter $f$ is set    For the cartesian grid case, the Coriolis parameter $f$ is set
1016    through the variables \textbf{f0}\textit{\ }and    through the variables \textbf{f0} and \textbf{beta} which correspond
1017    \textbf{beta}\textit{\ }which correspond to the reference Coriolis    to the reference Coriolis parameter (in s$^{-1}$) and
1018    parameter (in s$^{-1}$) and $\frac{\partial f}{ \partial y}$(in    $\frac{\partial f}{ \partial y}$(in m$^{-1}$s$^{-1}$) respectively.
1019    m$^{-1}$s$^{-1}$) respectively. If \textbf{beta }\textit{\ } is set    If \textbf{beta } is set to a nonzero value, \textbf{f0} is the
1020    to a nonzero value, \textbf{f0}\textit{\ }is the value of $f$ at the    value of $f$ at the southern edge of the domain.
   southern edge of the domain.  
1021    
1022  \item[topography - full and partial cells] \  \item[topography - full and partial cells] \
1023        
1024    The domain bathymetry is read from a file that contains a 2D (x,y)    The domain bathymetry is read from a file that contains a 2D (x,y)
1025    map of depths (in m) for the ocean or pressures (in Pa) for the    map of depths (in m) for the ocean or pressures (in Pa) for the
1026    atmosphere. The file name is represented by the variable    atmosphere. The file name is represented by the variable
1027    \textbf{bathyFile}\textit{. }The file is assumed to contain binary    \textbf{bathyFile}. The file is assumed to contain binary numbers
1028    numbers giving the depth (pressure) of the model at each grid cell,    giving the depth (pressure) of the model at each grid cell, ordered
1029    ordered with the x coordinate varying fastest. The points are    with the x coordinate varying fastest. The points are ordered from
1030    ordered from low coordinate to high coordinate for both axes. The    low coordinate to high coordinate for both axes. The model code
1031    model code applies without modification to enclosed, periodic, and    applies without modification to enclosed, periodic, and double
1032    double periodic domains. Periodicity is assumed by default and is    periodic domains. Periodicity is assumed by default and is
1033    suppressed by setting the depths to 0m for the cells at the limits    suppressed by setting the depths to 0m for the cells at the limits
1034    of the computational domain (note: not sure this is the case for the    of the computational domain (note: not sure this is the case for the
1035    atmosphere). The precision with which to read the binary data is    atmosphere). The precision with which to read the binary data is
1036    controlled by the integer variable \textbf{readBinaryPrec }which can    controlled by the integer variable \textbf{readBinaryPrec} which can
1037    take the value \texttt{32} (single precision) or \texttt{64} (double    take the value \texttt{32} (single precision) or \texttt{64} (double
1038    precision). See the matlab program \textit{ gendata.m }in the    precision). See the matlab program \textit{gendata.m} in the
1039    \textit{input }directories under \textit{verification }to see how    \textit{input} directories under \textit{verification} to see how
1040    the bathymetry files are generated for the case study experiments.    the bathymetry files are generated for the case study experiments.
1041        
1042    To use the partial cell capability, the variable    To use the partial cell capability, the variable \textbf{hFacMin}
1043    \textbf{hFacMin}\textit{\ } needs to be set to a value between 0 and    needs to be set to a value between 0 and 1 (it is set to 1 by
1044    1 (it is set to 1 by default) corresponding to the minimum    default) corresponding to the minimum fractional size of the cell.
1045    fractional size of the cell. For example if the bottom cell is 500m    For example if the bottom cell is 500m thick and \textbf{hFacMin} is
1046    thick and \textbf{hFacMin}\textit{\ }is set to 0.1, the actual    set to 0.1, the actual thickness of the cell (i.e. used in the code)
1047    thickness of the cell (i.e. used in the code) can cover a range of    can cover a range of discrete values 50m apart from 50m to 500m
1048    discrete values 50m apart from 50m to 500m depending on the value of    depending on the value of the bottom depth (in \textbf{bathyFile})
1049    the bottom depth (in \textbf{bathyFile}) at this point.    at this point.
1050        
1051    Note that the bottom depths (or pressures) need not coincide with    Note that the bottom depths (or pressures) need not coincide with
1052    the models levels as deduced from \textbf{delz}\textit{\    the models levels as deduced from \textbf{delz} or \textbf{delp}.
1053    }or\textit{\ }\textbf{delp} \textit{. }The model will interpolate    The model will interpolate the numbers in \textbf{bathyFile} so that
1054    the numbers in \textbf{bathyFile} \textit{\ }so that they match the    they match the levels obtained from \textbf{delz} or \textbf{delp}
1055    levels obtained from \textbf{delz}\textit{ \ }or\textit{\    and \textbf{hFacMin}.
   }\textbf{delp}\textit{\ }and \textbf{hFacMin}\textit{. }  
1056        
1057    (Note: the atmospheric case is a bit more complicated than what is    (Note: the atmospheric case is a bit more complicated than what is
1058    written here I think. To come soon...)    written here I think. To come soon...)
# Line 1026  simulation controls. Line 1067  simulation controls.
1067    \textbf{deltaT}). The Adams-Bashforth stabilizing parameter is set    \textbf{deltaT}). The Adams-Bashforth stabilizing parameter is set
1068    through the variable \textbf{abEps} (dimensionless). The stagger    through the variable \textbf{abEps} (dimensionless). The stagger
1069    baroclinic time stepping can be activated by setting the logical    baroclinic time stepping can be activated by setting the logical
1070    variable \textbf{staggerTimeStep} to '.\texttt{TRUE}.'.    variable \textbf{staggerTimeStep} to \texttt{'.TRUE.'}.
1071    
1072  \end{description}  \end{description}
1073    
# Line 1044  humidity profile (in g/kg) for the atmos Line 1085  humidity profile (in g/kg) for the atmos
1085    
1086  The form of the equation of state is controlled by the character  The form of the equation of state is controlled by the character
1087  variables \textbf{buoyancyRelation} and \textbf{eosType}.  variables \textbf{buoyancyRelation} and \textbf{eosType}.
1088  \textbf{buoyancyRelation} is set to '\texttt{OCEANIC}' by default and  \textbf{buoyancyRelation} is set to \texttt{'OCEANIC'} by default and
1089  needs to be set to '\texttt{ATMOSPHERIC}' for atmosphere simulations.  needs to be set to \texttt{'ATMOSPHERIC'} for atmosphere simulations.
1090  In this case, \textbf{eosType} must be set to '\texttt{IDEALGAS}'.  In this case, \textbf{eosType} must be set to \texttt{'IDEALGAS'}.
1091  For the ocean, two forms of the equation of state are available:  For the ocean, two forms of the equation of state are available:
1092  linear (set \textbf{eosType} to '\texttt{LINEAR}') and a polynomial  linear (set \textbf{eosType} to \texttt{'LINEAR'}) and a polynomial
1093  approximation to the full nonlinear equation ( set  approximation to the full nonlinear equation ( set \textbf{eosType} to
1094  \textbf{eosType}\textit{\ }to '\texttt{POLYNOMIAL}'). In the linear  \texttt{'POLYNOMIAL'}). In the linear case, you need to specify the
1095  case, you need to specify the thermal and haline expansion  thermal and haline expansion coefficients represented by the variables
1096  coefficients represented by the variables \textbf{tAlpha}\textit{\  \textbf{tAlpha} (in K$^{-1}$) and \textbf{sBeta} (in ppt$^{-1}$). For
1097    }(in K$^{-1}$) and \textbf{sBeta} (in ppt$^{-1}$). For the nonlinear  the nonlinear case, you need to generate a file of polynomial
1098  case, you need to generate a file of polynomial coefficients called  coefficients called \textit{POLY3.COEFFS}. To do this, use the program
 \textit{POLY3.COEFFS}. To do this, use the program  
1099  \textit{utils/knudsen2/knudsen2.f} under the model tree (a Makefile is  \textit{utils/knudsen2/knudsen2.f} under the model tree (a Makefile is
1100  available in the same directory and you will need to edit the number  available in the same directory and you will need to edit the number
1101  and the values of the vertical levels in \textit{knudsen2.f} so that  and the values of the vertical levels in \textit{knudsen2.f} so that
# Line 1063  they match those of your configuration). Line 1103  they match those of your configuration).
1103    
1104  There there are also higher polynomials for the equation of state:  There there are also higher polynomials for the equation of state:
1105  \begin{description}  \begin{description}
1106  \item['\texttt{UNESCO}':] The UNESCO equation of state formula of  \item[\texttt{'UNESCO'}:] The UNESCO equation of state formula of
1107    Fofonoff and Millard \cite{fofonoff83}. This equation of state    Fofonoff and Millard \cite{fofonoff83}. This equation of state
1108    assumes in-situ temperature, which is not a model variable; \emph{its use    assumes in-situ temperature, which is not a model variable; {\em its
1109    is therefore discouraged, and it is only listed for completeness}.      use is therefore discouraged, and it is only listed for
1110  \item['\texttt{JMD95Z}':] A modified UNESCO formula by Jackett and      completeness}.
1111    \item[\texttt{'JMD95Z'}:] A modified UNESCO formula by Jackett and
1112    McDougall \cite{jackett95}, which uses the model variable potential    McDougall \cite{jackett95}, which uses the model variable potential
1113    temperature as input. The '\texttt{Z}' indicates that this equation    temperature as input. The \texttt{'Z'} indicates that this equation
1114    of state uses a horizontally and temporally constant pressure    of state uses a horizontally and temporally constant pressure
1115    $p_{0}=-g\rho_{0}z$.    $p_{0}=-g\rho_{0}z$.
1116  \item['\texttt{JMD95P}':] A modified UNESCO formula by Jackett and  \item[\texttt{'JMD95P'}:] A modified UNESCO formula by Jackett and
1117    McDougall \cite{jackett95}, which uses the model variable potential    McDougall \cite{jackett95}, which uses the model variable potential
1118    temperature as input. The '\texttt{P}' indicates that this equation    temperature as input. The \texttt{'P'} indicates that this equation
1119    of state uses the actual hydrostatic pressure of the last time    of state uses the actual hydrostatic pressure of the last time
1120    step. Lagging the pressure in this way requires an additional pickup    step. Lagging the pressure in this way requires an additional pickup
1121    file for restarts.    file for restarts.
1122  \item['\texttt{MDJWF}':] The new, more accurate and less expensive  \item[\texttt{'MDJWF'}:] The new, more accurate and less expensive
1123    equation of state by McDougall et~al. \cite{mcdougall03}. It also    equation of state by McDougall et~al. \cite{mcdougall03}. It also
1124    requires lagging the pressure and therefore an additional pickup    requires lagging the pressure and therefore an additional pickup
1125    file for restarts.    file for restarts.
# Line 1088  salinity is required. Line 1129  salinity is required.
1129    
1130  \subsection{Momentum equations}  \subsection{Momentum equations}
1131    
1132  In this section, we only focus for now on the parameters that you are likely  In this section, we only focus for now on the parameters that you are
1133  to change, i.e. the ones relative to forcing and dissipation for example.  likely to change, i.e. the ones relative to forcing and dissipation
1134  The details relevant to the vector-invariant form of the equations and the  for example.  The details relevant to the vector-invariant form of the
1135  various advection schemes are not covered for the moment. We assume that you  equations and the various advection schemes are not covered for the
1136  use the standard form of the momentum equations (i.e. the flux-form) with  moment. We assume that you use the standard form of the momentum
1137  the default advection scheme. Also, there are a few logical variables that  equations (i.e. the flux-form) with the default advection scheme.
1138  allow you to turn on/off various terms in the momentum equation. These  Also, there are a few logical variables that allow you to turn on/off
1139  variables are called \textbf{momViscosity, momAdvection, momForcing,  various terms in the momentum equation. These variables are called
1140  useCoriolis, momPressureForcing, momStepping}\textit{, }and \textit{\ }%  \textbf{momViscosity, momAdvection, momForcing, useCoriolis,
1141  \textbf{metricTerms }and are assumed to be set to '.\texttt{TRUE}.' here.    momPressureForcing, momStepping} and \textbf{metricTerms }and are
1142  Look at the file \textit{model/inc/PARAMS.h }for a precise definition of  assumed to be set to \texttt{'.TRUE.'} here.  Look at the file
1143  these variables.  \textit{model/inc/PARAMS.h }for a precise definition of these
1144    variables.
1145    
1146  \begin{description}  \begin{description}
1147  \item[initialization] \  \item[initialization] \
# Line 1111  these variables. Line 1153  these variables.
1153  \item[forcing] \  \item[forcing] \
1154        
1155    This section only applies to the ocean. You need to generate    This section only applies to the ocean. You need to generate
1156    wind-stress data into two files \textbf{zonalWindFile}\textit{\ }and    wind-stress data into two files \textbf{zonalWindFile} and
1157    \textbf{ meridWindFile }corresponding to the zonal and meridional    \textbf{meridWindFile} corresponding to the zonal and meridional
1158    components of the wind stress, respectively (if you want the stress    components of the wind stress, respectively (if you want the stress
1159    to be along the direction of only one of the model horizontal axes,    to be along the direction of only one of the model horizontal axes,
1160    you only need to generate one file). The format of the files is    you only need to generate one file). The format of the files is
1161    similar to the bathymetry file. The zonal (meridional) stress data    similar to the bathymetry file. The zonal (meridional) stress data
1162    are assumed to be in Pa and located at U-points (V-points). As for    are assumed to be in Pa and located at U-points (V-points). As for
1163    the bathymetry, the precision with which to read the binary data is    the bathymetry, the precision with which to read the binary data is
1164    controlled by the variable \textbf{readBinaryPrec}.\textbf{\ } See    controlled by the variable \textbf{readBinaryPrec}.  See the matlab
1165    the matlab program \textit{gendata.m }in the \textit{input    program \textit{gendata.m} in the \textit{input} directories under
1166    }directories under \textit{verification }to see how simple    \textit{verification} to see how simple analytical wind forcing data
1167    analytical wind forcing data are generated for the case study    are generated for the case study experiments.
   experiments.  
1168        
1169    There is also the possibility of prescribing time-dependent periodic    There is also the possibility of prescribing time-dependent periodic
1170    forcing. To do this, concatenate the successive time records into a    forcing. To do this, concatenate the successive time records into a
1171    single file (for each stress component) ordered in a (x, y, t)    single file (for each stress component) ordered in a (x,y,t) fashion
1172    fashion and set the following variables:    and set the following variables: \textbf{periodicExternalForcing }to
1173    \textbf{periodicExternalForcing }to '.\texttt{TRUE}.',    \texttt{'.TRUE.'}, \textbf{externForcingPeriod }to the period (in s)
1174    \textbf{externForcingPeriod }to the period (in s) of which the    of which the forcing varies (typically 1 month), and
1175    forcing varies (typically 1 month), and \textbf{externForcingCycle    \textbf{externForcingCycle} to the repeat time (in s) of the forcing
1176    }to the repeat time (in s) of the forcing (typically 1 year -- note:    (typically 1 year -- note: \textbf{ externForcingCycle} must be a
1177    \textbf{ externForcingCycle }must be a multiple of    multiple of \textbf{externForcingPeriod}).  With these variables set
1178    \textbf{externForcingPeriod}).  With these variables set up, the    up, the model will interpolate the forcing linearly at each
1179    model will interpolate the forcing linearly at each iteration.    iteration.
1180    
1181  \item[dissipation] \  \item[dissipation] \
1182        
1183    The lateral eddy viscosity coefficient is specified through the    The lateral eddy viscosity coefficient is specified through the
1184    variable \textbf{viscAh}\textit{\ }(in m$^{2}$s$^{-1}$). The    variable \textbf{viscAh} (in m$^{2}$s$^{-1}$). The vertical eddy
1185    vertical eddy viscosity coefficient is specified through the    viscosity coefficient is specified through the variable
1186    variable \textbf{viscAz }(in m$^{2}$s$ ^{-1}$) for the ocean and    \textbf{viscAz} (in m$^{2}$s$^{-1}$) for the ocean and
1187    \textbf{viscAp}\textit{\ }(in Pa$^{2}$s$^{-1}$) for the atmosphere.    \textbf{viscAp} (in Pa$^{2}$s$^{-1}$) for the atmosphere.  The
1188    The vertical diffusive fluxes can be computed implicitly by setting    vertical diffusive fluxes can be computed implicitly by setting the
1189    the logical variable \textbf{implicitViscosity }to '.\texttt{TRUE}    logical variable \textbf{implicitViscosity }to \texttt{'.TRUE.'}.
1190    .'. In addition, biharmonic mixing can be added as well through the    In addition, biharmonic mixing can be added as well through the
1191    variable \textbf{viscA4}\textit{\ }(in m$^{4}$s$^{-1}$). On a    variable \textbf{viscA4} (in m$^{4}$s$^{-1}$). On a spherical polar
1192    spherical polar grid, you might also need to set the variable    grid, you might also need to set the variable \textbf{cosPower}
1193    \textbf{cosPower} which is set to 0 by default and which represents    which is set to 0 by default and which represents the power of
1194    the power of cosine of latitude to multiply viscosity. Slip or    cosine of latitude to multiply viscosity. Slip or no-slip conditions
1195    no-slip conditions at lateral and bottom boundaries are specified    at lateral and bottom boundaries are specified through the logical
1196    through the logical variables \textbf{no\_slip\_sides}\textit{\ }    variables \textbf{no\_slip\_sides} and \textbf{no\_slip\_bottom}. If
1197    and \textbf{no\_slip\_bottom}. If set to '\texttt{.FALSE.}',    set to \texttt{'.FALSE.'}, free-slip boundary conditions are
1198    free-slip boundary conditions are applied. If no-slip boundary    applied. If no-slip boundary conditions are applied at the bottom, a
1199    conditions are applied at the bottom, a bottom drag can be applied    bottom drag can be applied as well. Two forms are available: linear
1200    as well. Two forms are available: linear (set the variable    (set the variable \textbf{bottomDragLinear} in s$ ^{-1}$) and
1201    \textbf{bottomDragLinear}\textit{\ }in s$ ^{-1}$) and quadratic (set    quadratic (set the variable \textbf{bottomDragQuadratic} in
1202    the variable \textbf{bottomDragQuadratic}\textit{ \ }in m$^{-1}$).    m$^{-1}$).
1203    
1204    The Fourier and Shapiro filters are described elsewhere.    The Fourier and Shapiro filters are described elsewhere.
1205    
# Line 1172  these variables. Line 1213  these variables.
1213  \item[calculation of pressure/geopotential] \  \item[calculation of pressure/geopotential] \
1214        
1215    First, to run a non-hydrostatic ocean simulation, set the logical    First, to run a non-hydrostatic ocean simulation, set the logical
1216    variable \textbf{nonHydrostatic} to '.\texttt{TRUE}.'. The pressure    variable \textbf{nonHydrostatic} to \texttt{'.TRUE.'}. The pressure
1217    field is then inverted through a 3D elliptic equation. (Note: this    field is then inverted through a 3D elliptic equation. (Note: this
1218    capability is not available for the atmosphere yet.) By default, a    capability is not available for the atmosphere yet.) By default, a
1219    hydrostatic simulation is assumed and a 2D elliptic equation is used    hydrostatic simulation is assumed and a 2D elliptic equation is used
1220    to invert the pressure field. The parameters controlling the    to invert the pressure field. The parameters controlling the
1221    behaviour of the elliptic solvers are the variables    behaviour of the elliptic solvers are the variables
1222    \textbf{cg2dMaxIters}\textit{\ }and \textbf{cg2dTargetResidual } for    \textbf{cg2dMaxIters} and \textbf{cg2dTargetResidual } for
1223    the 2D case and \textbf{cg3dMaxIters}\textit{\ }and \textbf{    the 2D case and \textbf{cg3dMaxIters} and
1224      cg3dTargetResidual }for the 3D case. You probably won't need to    \textbf{cg3dTargetResidual} for the 3D case. You probably won't need to
1225    alter the default values (are we sure of this?).    alter the default values (are we sure of this?).
1226        
1227    For the calculation of the surface pressure (for the ocean) or    For the calculation of the surface pressure (for the ocean) or
1228    surface geopotential (for the atmosphere) you need to set the    surface geopotential (for the atmosphere) you need to set the
1229    logical variables \textbf{rigidLid} and    logical variables \textbf{rigidLid} and \textbf{implicitFreeSurface}
1230    \textbf{implicitFreeSurface}\textit{\ }(set one to '.    (set one to \texttt{'.TRUE.'} and the other to \texttt{'.FALSE.'}
1231    \texttt{TRUE}.' and the other to '.\texttt{FALSE}.' depending on how    depending on how you want to deal with the ocean upper or atmosphere
1232    you want to deal with the ocean upper or atmosphere lower boundary).    lower boundary).
1233    
1234  \end{description}  \end{description}
1235    
1236  \subsection{Tracer equations}  \subsection{Tracer equations}
1237    
1238  This section covers the tracer equations i.e. the potential temperature  This section covers the tracer equations i.e. the potential
1239  equation and the salinity (for the ocean) or specific humidity (for the  temperature equation and the salinity (for the ocean) or specific
1240  atmosphere) equation. As for the momentum equations, we only describe for  humidity (for the atmosphere) equation. As for the momentum equations,
1241  now the parameters that you are likely to change. The logical variables  we only describe for now the parameters that you are likely to change.
1242  \textbf{tempDiffusion}\textit{, }\textbf{tempAdvection}\textit{, }\textbf{  The logical variables \textbf{tempDiffusion} \textbf{tempAdvection}
1243  tempForcing}\textit{,} and \textbf{tempStepping} allow you to turn on/off  \textbf{tempForcing}, and \textbf{tempStepping} allow you to turn
1244  terms in the temperature equation (same thing for salinity or specific  on/off terms in the temperature equation (same thing for salinity or
1245  humidity with variables \textbf{saltDiffusion}\textit{, }\textbf{  specific humidity with variables \textbf{saltDiffusion},
1246  saltAdvection}\textit{\ }etc). These variables are all assumed here to be  \textbf{saltAdvection} etc.). These variables are all assumed here to
1247  set to '.\texttt{TRUE}.'. Look at file \textit{model/inc/PARAMS.h }for a  be set to \texttt{'.TRUE.'}. Look at file \textit{model/inc/PARAMS.h}
1248  precise definition.  for a precise definition.
1249    
1250  \begin{description}  \begin{description}
1251  \item[initialization] \  \item[initialization] \
1252        
1253    The initial tracer data can be contained in the binary files    The initial tracer data can be contained in the binary files
1254    \textbf{ hydrogThetaFile }and \textbf{hydrogSaltFile}. These files    \textbf{hydrogThetaFile} and \textbf{hydrogSaltFile}. These files
1255    should contain 3D data ordered in an (x, y, r) fashion with k=1 as    should contain 3D data ordered in an (x,y,r) fashion with k=1 as the
1256    the first vertical level.  If no file names are provided, the    first vertical level.  If no file names are provided, the tracers
1257    tracers are then initialized with the values of \textbf{tRef }and    are then initialized with the values of \textbf{tRef} and
1258    \textbf{sRef }mentioned above (in the equation of state section). In    \textbf{sRef} mentioned above (in the equation of state section). In
1259    this case, the initial tracer data are uniform in x and y for each    this case, the initial tracer data are uniform in x and y for each
1260    depth level.    depth level.
1261    
# Line 1224  precise definition. Line 1265  precise definition.
1265    atmosphere not being completely stabilized at the moment.    atmosphere not being completely stabilized at the moment.
1266        
1267    A combination of fluxes data and relaxation terms can be used for    A combination of fluxes data and relaxation terms can be used for
1268    driving the tracer equations. \ For potential temperature, heat flux    driving the tracer equations.  For potential temperature, heat flux
1269    data (in W/m$ ^{2}$) can be stored in the 2D binary file    data (in W/m$ ^{2}$) can be stored in the 2D binary file
1270    \textbf{surfQfile}\textit{. }  Alternatively or in addition, the    \textbf{surfQfile}.  Alternatively or in addition, the forcing can
1271    forcing can be specified through a relaxation term. The SST data to    be specified through a relaxation term. The SST data to which the
1272    which the model surface temperatures are restored to are supposed to    model surface temperatures are restored to are supposed to be stored
1273    be stored in the 2D binary file \textbf{ thetaClimFile}\textit{.    in the 2D binary file \textbf{thetaClimFile}. The corresponding
1274    }The corresponding relaxation time scale coefficient is set through    relaxation time scale coefficient is set through the variable
1275    the variable \textbf{tauThetaClimRelax}\textit{\ }(in s). The same    \textbf{tauThetaClimRelax} (in s). The same procedure applies for
1276    procedure applies for salinity with the variable names    salinity with the variable names \textbf{EmPmRfile},
1277    \textbf{EmPmRfile }\textit{, }\textbf{saltClimFile}\textit{, }and    \textbf{saltClimFile}, and \textbf{tauSaltClimRelax} for freshwater
1278    \textbf{tauSaltClimRelax} \textit{\ }for freshwater flux (in m/s)    flux (in m/s) and surface salinity (in ppt) data files and
1279    and surface salinity (in ppt) data files and relaxation time scale    relaxation time scale coefficient (in s), respectively. Also for
1280    coefficient (in s), respectively. Also for salinity, if the CPP key    salinity, if the CPP key \textbf{USE\_NATURAL\_BCS} is turned on,
1281    \textbf{USE\_NATURAL\_BCS} is turned on, natural boundary conditions    natural boundary conditions are applied i.e. when computing the
1282    are applied i.e. when computing the surface salinity tendency, the    surface salinity tendency, the freshwater flux is multiplied by the
1283    freshwater flux is multiplied by the model surface salinity instead    model surface salinity instead of a constant salinity value.
   of a constant salinity value.  
1284        
1285    As for the other input files, the precision with which to read the    As for the other input files, the precision with which to read the
1286    data is controlled by the variable \textbf{readBinaryPrec}.    data is controlled by the variable \textbf{readBinaryPrec}.
# Line 1250  precise definition. Line 1290  precise definition.
1290  \item[dissipation] \  \item[dissipation] \
1291        
1292    Lateral eddy diffusivities for temperature and salinity/specific    Lateral eddy diffusivities for temperature and salinity/specific
1293    humidity are specified through the variables \textbf{diffKhT }and    humidity are specified through the variables \textbf{diffKhT} and
1294    \textbf{diffKhS } (in m$^{2}$/s). Vertical eddy diffusivities are    \textbf{diffKhS} (in m$^{2}$/s). Vertical eddy diffusivities are
1295    specified through the variables \textbf{diffKzT }and \textbf{diffKzS    specified through the variables \textbf{diffKzT} and
1296    }(in m$^{2}$/s) for the ocean and \textbf{diffKpT }and    \textbf{diffKzS} (in m$^{2}$/s) for the ocean and \textbf{diffKpT
1297    \textbf{diffKpS }(in Pa$^{2}$/s) for the atmosphere. The vertical    }and \textbf{diffKpS} (in Pa$^{2}$/s) for the atmosphere. The
1298    diffusive fluxes can be computed implicitly by setting the logical    vertical diffusive fluxes can be computed implicitly by setting the
1299    variable \textbf{implicitDiffusion }to '.\texttt{TRUE} .'. In    logical variable \textbf{implicitDiffusion} to \texttt{'.TRUE.'}.
1300    addition, biharmonic diffusivities can be specified as well through    In addition, biharmonic diffusivities can be specified as well
1301    the coefficients \textbf{diffK4T }and \textbf{diffK4S }(in    through the coefficients \textbf{diffK4T} and \textbf{diffK4S} (in
1302    m$^{4}$/s). Note that the cosine power scaling (specified through    m$^{4}$/s). Note that the cosine power scaling (specified through
1303    \textbf{cosPower }- see the momentum equations section) is applied    \textbf{cosPower}---see the momentum equations section) is applied to
1304    to the tracer diffusivities (Laplacian and biharmonic) as well. The    the tracer diffusivities (Laplacian and biharmonic) as well. The
1305    Gent and McWilliams parameterization for oceanic tracers is    Gent and McWilliams parameterization for oceanic tracers is
1306    described in the package section. Finally, note that tracers can be    described in the package section. Finally, note that tracers can be
1307    also subject to Fourier and Shapiro filtering (see the corresponding    also subject to Fourier and Shapiro filtering (see the corresponding
# Line 1276  precise definition. Line 1316  precise definition.
1316    value (if set to a negative value by the user, the model will set it    value (if set to a negative value by the user, the model will set it
1317    to the tracer time step). The other option is to parameterize    to the tracer time step). The other option is to parameterize
1318    convection with implicit vertical diffusion. To do this, set the    convection with implicit vertical diffusion. To do this, set the
1319    logical variable \textbf{implicitDiffusion }to '.\texttt{TRUE} .'    logical variable \textbf{implicitDiffusion} to \texttt{'.TRUE.'}
1320    and the real variable \textbf{ivdc\_kappa }to a value (in m$^{2}$/s)    and the real variable \textbf{ivdc\_kappa} to a value (in m$^{2}$/s)
1321    you wish the tracer vertical diffusivities to have when mixing    you wish the tracer vertical diffusivities to have when mixing
1322    tracers vertically due to static instabilities. Note that    tracers vertically due to static instabilities. Note that
1323    \textbf{cadjFreq }and \textbf{ivdc\_kappa }can not both have    \textbf{cadjFreq} and \textbf{ivdc\_kappa}can not both have non-zero
1324    non-zero value.    value.
1325    
1326  \end{description}  \end{description}
1327    
1328  \subsection{Simulation controls}  \subsection{Simulation controls}
1329    
1330  The model ''clock'' is defined by the variable \textbf{deltaTClock }(in s)  The model ''clock'' is defined by the variable \textbf{deltaTClock}
1331  which determines the IO frequencies and is used in tagging output.  (in s) which determines the IO frequencies and is used in tagging
1332  Typically, you will set it to the tracer time step for accelerated runs  output.  Typically, you will set it to the tracer time step for
1333  (otherwise it is simply set to the default time step \textbf{deltaT}).  accelerated runs (otherwise it is simply set to the default time step
1334  Frequency of checkpointing and dumping of the model state are referenced to  \textbf{deltaT}).  Frequency of checkpointing and dumping of the model
1335  this clock (see below).  state are referenced to this clock (see below).
1336    
1337  \begin{description}  \begin{description}
1338  \item[run duration] \  \item[run duration] \
1339        
1340    The beginning of a simulation is set by specifying a start time (in    The beginning of a simulation is set by specifying a start time (in
1341    s) through the real variable \textbf{startTime }or by specifying an    s) through the real variable \textbf{startTime} or by specifying an
1342    initial iteration number through the integer variable    initial iteration number through the integer variable
1343    \textbf{nIter0}. If these variables are set to nonzero values, the    \textbf{nIter0}. If these variables are set to nonzero values, the
1344    model will look for a ''pickup'' file \textit{pickup.0000nIter0 }to    model will look for a ''pickup'' file \textit{pickup.0000nIter0} to
1345    restart the integration\textit{. }The end of a simulation is set    restart the integration. The end of a simulation is set through the
1346    through the real variable \textbf{endTime }(in s).  Alternatively,    real variable \textbf{endTime} (in s).  Alternatively, you can
1347    you can specify instead the number of time steps to execute through    specify instead the number of time steps to execute through the
1348    the integer variable \textbf{nTimeSteps}.    integer variable \textbf{nTimeSteps}.
1349    
1350  \item[frequency of output] \  \item[frequency of output] \
1351        
1352    Real variables defining frequencies (in s) with which output files    Real variables defining frequencies (in s) with which output files
1353    are written on disk need to be set up. \textbf{dumpFreq }controls    are written on disk need to be set up. \textbf{dumpFreq} controls
1354    the frequency with which the instantaneous state of the model is    the frequency with which the instantaneous state of the model is
1355    saved. \textbf{chkPtFreq } and \textbf{pchkPtFreq }control the    saved. \textbf{chkPtFreq} and \textbf{pchkPtFreq} control the output
1356    output frequency of rolling and permanent checkpoint files,    frequency of rolling and permanent checkpoint files, respectively.
1357    respectively. See section 1.5.1 Output files for the definition of    See section 1.5.1 Output files for the definition of model state and
1358    model state and checkpoint files. In addition, time-averaged fields    checkpoint files. In addition, time-averaged fields can be written
1359    can be written out by setting the variable \textbf{taveFreq} (in s).    out by setting the variable \textbf{taveFreq} (in s).  The precision
1360    The precision with which to write the binary data is controlled by    with which to write the binary data is controlled by the integer
1361    the integer variable w\textbf{riteBinaryPrec }(set it to \texttt{32}    variable w\textbf{riteBinaryPrec} (set it to \texttt{32} or
1362    or \texttt{ 64}).    \texttt{64}).
1363    
1364  \end{description}  \end{description}
1365    

Legend:
Removed from v.1.17  
changed lines
  Added in v.1.21

  ViewVC Help
Powered by ViewVC 1.1.22