/[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.19 by edhill, Mon Feb 16 02:27:33 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 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 940  simulation controls. Line 973  simulation controls.
973  \begin{description}  \begin{description}
974  \item[dimensions] \  \item[dimensions] \
975        
976    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
977    }directions are represented by the variables \textbf{sNx}\textit{,    by the variables \textbf{sNx}, \textbf{sNy} and \textbf{Nr}
978    }\textbf{sNy}\textit{, } and \textbf{Nr}\textit{\ }respectively    respectively which are declared and set in the file
979    which are declared and set in the file \textit{model/inc/SIZE.h.    \textit{model/inc/SIZE.h}.  (Again, this assumes a mono-processor
980    }(Again, this assumes a mono-processor calculation. For    calculation. For multiprocessor calculations see the section on
981    multiprocessor calculations see section on parallel implementation.)    parallel implementation.)
982    
983  \item[grid] \  \item[grid] \
984        
985    Three different grids are available: cartesian, spherical polar, and    Three different grids are available: cartesian, spherical polar, and
986    curvilinear (including the cubed sphere). The grid is set through    curvilinear (which includes the cubed sphere). The grid is set
987    the logical variables \textbf{usingCartesianGrid}\textit{, }\textbf{    through the logical variables \textbf{usingCartesianGrid},
988      usingSphericalPolarGrid}\textit{, }and \textit{\ }\textbf{    \textbf{usingSphericalPolarGrid}, and \textbf{usingCurvilinearGrid}.
989      usingCurvilinearGrid}\textit{. }In the case of spherical and    In the case of spherical and curvilinear grids, the southern
990    curvilinear grids, the southern boundary is defined through the    boundary is defined through the variable \textbf{phiMin} which
991    variable \textbf{phiMin} \textit{\ }which corresponds to the    corresponds to the latitude of the southern most cell face (in
992    latitude of the southern most cell face (in degrees). The resolution    degrees). The resolution along the x and y directions is controlled
993    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
994    \textbf{delx}\textit{\ }and \textbf{dely}\textit{\ }(in meters in    case of a cartesian grid, in degrees otherwise).  The vertical grid
995    the case of a cartesian grid, in degrees otherwise). The vertical    spacing is set through the 1D array \textbf{delz} for the ocean (in
996    grid spacing is set through the 1D array \textbf{delz }for the ocean    meters) or \textbf{delp} for the atmosphere (in Pa).  The variable
997    (in meters) or \textbf{delp}\textit{\ }for the atmosphere (in Pa).    \textbf{Ro\_SeaLevel} represents the standard position of Sea-Level
998    The variable \textbf{ Ro\_SeaLevel} represents the standard position    in ``R'' coordinate. This is typically set to 0m for the ocean
999    of Sea-Level in ''R'' coordinate. This is typically set to 0m for    (default value) and 10$^{5}$Pa for the atmosphere. For the
1000    the ocean (default value) and 10$ ^{5}$Pa for the atmosphere. For    atmosphere, also set the logical variable \textbf{groundAtK1} to
1001    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  
1002    boundary (ground).    boundary (ground).
1003        
1004    For the cartesian grid case, the Coriolis parameter $f$ is set    For the cartesian grid case, the Coriolis parameter $f$ is set
1005    through the variables \textbf{f0}\textit{\ }and    through the variables \textbf{f0} and \textbf{beta} which correspond
1006    \textbf{beta}\textit{\ }which correspond to the reference Coriolis    to the reference Coriolis parameter (in s$^{-1}$) and
1007    parameter (in s$^{-1}$) and $\frac{\partial f}{ \partial y}$(in    $\frac{\partial f}{ \partial y}$(in m$^{-1}$s$^{-1}$) respectively.
1008    m$^{-1}$s$^{-1}$) respectively. If \textbf{beta }\textit{\ } is set    If \textbf{beta } is set to a nonzero value, \textbf{f0} is the
1009    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.  
1010    
1011  \item[topography - full and partial cells] \  \item[topography - full and partial cells] \
1012        
1013    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)
1014    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
1015    atmosphere. The file name is represented by the variable    atmosphere. The file name is represented by the variable
1016    \textbf{bathyFile}\textit{. }The file is assumed to contain binary    \textbf{bathyFile}. The file is assumed to contain binary numbers
1017    numbers giving the depth (pressure) of the model at each grid cell,    giving the depth (pressure) of the model at each grid cell, ordered
1018    ordered with the x coordinate varying fastest. The points are    with the x coordinate varying fastest. The points are ordered from
1019    ordered from low coordinate to high coordinate for both axes. The    low coordinate to high coordinate for both axes. The model code
1020    model code applies without modification to enclosed, periodic, and    applies without modification to enclosed, periodic, and double
1021    double periodic domains. Periodicity is assumed by default and is    periodic domains. Periodicity is assumed by default and is
1022    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
1023    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
1024    atmosphere). The precision with which to read the binary data is    atmosphere). The precision with which to read the binary data is
1025    controlled by the integer variable \textbf{readBinaryPrec }which can    controlled by the integer variable \textbf{readBinaryPrec} which can
1026    take the value \texttt{32} (single precision) or \texttt{64} (double    take the value \texttt{32} (single precision) or \texttt{64} (double
1027    precision). See the matlab program \textit{ gendata.m }in the    precision). See the matlab program \textit{gendata.m} in the
1028    \textit{input }directories under \textit{verification }to see how    \textit{input} directories under \textit{verification} to see how
1029    the bathymetry files are generated for the case study experiments.    the bathymetry files are generated for the case study experiments.
1030        
1031    To use the partial cell capability, the variable    To use the partial cell capability, the variable \textbf{hFacMin}
1032    \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
1033    1 (it is set to 1 by default) corresponding to the minimum    default) corresponding to the minimum fractional size of the cell.
1034    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
1035    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)
1036    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
1037    discrete values 50m apart from 50m to 500m depending on the value of    depending on the value of the bottom depth (in \textbf{bathyFile})
1038    the bottom depth (in \textbf{bathyFile}) at this point.    at this point.
1039        
1040    Note that the bottom depths (or pressures) need not coincide with    Note that the bottom depths (or pressures) need not coincide with
1041    the models levels as deduced from \textbf{delz}\textit{\    the models levels as deduced from \textbf{delz} or \textbf{delp}.
1042    }or\textit{\ }\textbf{delp} \textit{. }The model will interpolate    The model will interpolate the numbers in \textbf{bathyFile} so that
1043    the numbers in \textbf{bathyFile} \textit{\ }so that they match the    they match the levels obtained from \textbf{delz} or \textbf{delp}
1044    levels obtained from \textbf{delz}\textit{ \ }or\textit{\    and \textbf{hFacMin}.
   }\textbf{delp}\textit{\ }and \textbf{hFacMin}\textit{. }  
1045        
1046    (Note: the atmospheric case is a bit more complicated than what is    (Note: the atmospheric case is a bit more complicated than what is
1047    written here I think. To come soon...)    written here I think. To come soon...)
# Line 1026  simulation controls. Line 1056  simulation controls.
1056    \textbf{deltaT}). The Adams-Bashforth stabilizing parameter is set    \textbf{deltaT}). The Adams-Bashforth stabilizing parameter is set
1057    through the variable \textbf{abEps} (dimensionless). The stagger    through the variable \textbf{abEps} (dimensionless). The stagger
1058    baroclinic time stepping can be activated by setting the logical    baroclinic time stepping can be activated by setting the logical
1059    variable \textbf{staggerTimeStep} to '.\texttt{TRUE}.'.    variable \textbf{staggerTimeStep} to \texttt{'.TRUE.'}.
1060    
1061  \end{description}  \end{description}
1062    
# Line 1044  humidity profile (in g/kg) for the atmos Line 1074  humidity profile (in g/kg) for the atmos
1074    
1075  The form of the equation of state is controlled by the character  The form of the equation of state is controlled by the character
1076  variables \textbf{buoyancyRelation} and \textbf{eosType}.  variables \textbf{buoyancyRelation} and \textbf{eosType}.
1077  \textbf{buoyancyRelation} is set to '\texttt{OCEANIC}' by default and  \textbf{buoyancyRelation} is set to \texttt{'OCEANIC'} by default and
1078  needs to be set to '\texttt{ATMOSPHERIC}' for atmosphere simulations.  needs to be set to \texttt{'ATMOSPHERIC'} for atmosphere simulations.
1079  In this case, \textbf{eosType} must be set to '\texttt{IDEALGAS}'.  In this case, \textbf{eosType} must be set to \texttt{'IDEALGAS'}.
1080  For the ocean, two forms of the equation of state are available:  For the ocean, two forms of the equation of state are available:
1081  linear (set \textbf{eosType} to '\texttt{LINEAR}') and a polynomial  linear (set \textbf{eosType} to \texttt{'LINEAR'}) and a polynomial
1082  approximation to the full nonlinear equation ( set  approximation to the full nonlinear equation ( set \textbf{eosType} to
1083  \textbf{eosType}\textit{\ }to '\texttt{POLYNOMIAL}'). In the linear  \texttt{'POLYNOMIAL'}). In the linear case, you need to specify the
1084  case, you need to specify the thermal and haline expansion  thermal and haline expansion coefficients represented by the variables
1085  coefficients represented by the variables \textbf{tAlpha}\textit{\  \textbf{tAlpha} (in K$^{-1}$) and \textbf{sBeta} (in ppt$^{-1}$). For
1086    }(in K$^{-1}$) and \textbf{sBeta} (in ppt$^{-1}$). For the nonlinear  the nonlinear case, you need to generate a file of polynomial
1087  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  
1088  \textit{utils/knudsen2/knudsen2.f} under the model tree (a Makefile is  \textit{utils/knudsen2/knudsen2.f} under the model tree (a Makefile is
1089  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
1090  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 1092  they match those of your configuration).
1092    
1093  There there are also higher polynomials for the equation of state:  There there are also higher polynomials for the equation of state:
1094  \begin{description}  \begin{description}
1095  \item['\texttt{UNESCO}':] The UNESCO equation of state formula of  \item[\texttt{'UNESCO'}:] The UNESCO equation of state formula of
1096    Fofonoff and Millard \cite{fofonoff83}. This equation of state    Fofonoff and Millard \cite{fofonoff83}. This equation of state
1097    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
1098    is therefore discouraged, and it is only listed for completeness}.      use is therefore discouraged, and it is only listed for
1099  \item['\texttt{JMD95Z}':] A modified UNESCO formula by Jackett and      completeness}.
1100    \item[\texttt{'JMD95Z'}:] A modified UNESCO formula by Jackett and
1101    McDougall \cite{jackett95}, which uses the model variable potential    McDougall \cite{jackett95}, which uses the model variable potential
1102    temperature as input. The '\texttt{Z}' indicates that this equation    temperature as input. The \texttt{'Z'} indicates that this equation
1103    of state uses a horizontally and temporally constant pressure    of state uses a horizontally and temporally constant pressure
1104    $p_{0}=-g\rho_{0}z$.    $p_{0}=-g\rho_{0}z$.
1105  \item['\texttt{JMD95P}':] A modified UNESCO formula by Jackett and  \item[\texttt{'JMD95P'}:] A modified UNESCO formula by Jackett and
1106    McDougall \cite{jackett95}, which uses the model variable potential    McDougall \cite{jackett95}, which uses the model variable potential
1107    temperature as input. The '\texttt{P}' indicates that this equation    temperature as input. The \texttt{'P'} indicates that this equation
1108    of state uses the actual hydrostatic pressure of the last time    of state uses the actual hydrostatic pressure of the last time
1109    step. Lagging the pressure in this way requires an additional pickup    step. Lagging the pressure in this way requires an additional pickup
1110    file for restarts.    file for restarts.
1111  \item['\texttt{MDJWF}':] The new, more accurate and less expensive  \item[\texttt{'MDJWF'}:] The new, more accurate and less expensive
1112    equation of state by McDougall et~al. \cite{mcdougall03}. It also    equation of state by McDougall et~al. \cite{mcdougall03}. It also
1113    requires lagging the pressure and therefore an additional pickup    requires lagging the pressure and therefore an additional pickup
1114    file for restarts.    file for restarts.
# Line 1088  salinity is required. Line 1118  salinity is required.
1118    
1119  \subsection{Momentum equations}  \subsection{Momentum equations}
1120    
1121  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
1122  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
1123  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
1124  various advection schemes are not covered for the moment. We assume that you  equations and the various advection schemes are not covered for the
1125  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
1126  the default advection scheme. Also, there are a few logical variables that  equations (i.e. the flux-form) with the default advection scheme.
1127  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
1128  variables are called \textbf{momViscosity, momAdvection, momForcing,  various terms in the momentum equation. These variables are called
1129  useCoriolis, momPressureForcing, momStepping}\textit{, }and \textit{\ }%  \textbf{momViscosity, momAdvection, momForcing, useCoriolis,
1130  \textbf{metricTerms }and are assumed to be set to '.\texttt{TRUE}.' here.    momPressureForcing, momStepping} and \textbf{metricTerms }and are
1131  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
1132  these variables.  \textit{model/inc/PARAMS.h }for a precise definition of these
1133    variables.
1134    
1135  \begin{description}  \begin{description}
1136  \item[initialization] \  \item[initialization] \
# Line 1111  these variables. Line 1142  these variables.
1142  \item[forcing] \  \item[forcing] \
1143        
1144    This section only applies to the ocean. You need to generate    This section only applies to the ocean. You need to generate
1145    wind-stress data into two files \textbf{zonalWindFile}\textit{\ }and    wind-stress data into two files \textbf{zonalWindFile} and
1146    \textbf{ meridWindFile }corresponding to the zonal and meridional    \textbf{meridWindFile} corresponding to the zonal and meridional
1147    components of the wind stress, respectively (if you want the stress    components of the wind stress, respectively (if you want the stress
1148    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,
1149    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
1150    similar to the bathymetry file. The zonal (meridional) stress data    similar to the bathymetry file. The zonal (meridional) stress data
1151    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
1152    the bathymetry, the precision with which to read the binary data is    the bathymetry, the precision with which to read the binary data is
1153    controlled by the variable \textbf{readBinaryPrec}.\textbf{\ } See    controlled by the variable \textbf{readBinaryPrec}.  See the matlab
1154    the matlab program \textit{gendata.m }in the \textit{input    program \textit{gendata.m} in the \textit{input} directories under
1155    }directories under \textit{verification }to see how simple    \textit{verification} to see how simple analytical wind forcing data
1156    analytical wind forcing data are generated for the case study    are generated for the case study experiments.
   experiments.  
1157        
1158    There is also the possibility of prescribing time-dependent periodic    There is also the possibility of prescribing time-dependent periodic
1159    forcing. To do this, concatenate the successive time records into a    forcing. To do this, concatenate the successive time records into a
1160    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
1161    fashion and set the following variables:    and set the following variables: \textbf{periodicExternalForcing }to
1162    \textbf{periodicExternalForcing }to '.\texttt{TRUE}.',    \texttt{'.TRUE.'}, \textbf{externForcingPeriod }to the period (in s)
1163    \textbf{externForcingPeriod }to the period (in s) of which the    of which the forcing varies (typically 1 month), and
1164    forcing varies (typically 1 month), and \textbf{externForcingCycle    \textbf{externForcingCycle} to the repeat time (in s) of the forcing
1165    }to the repeat time (in s) of the forcing (typically 1 year -- note:    (typically 1 year -- note: \textbf{ externForcingCycle} must be a
1166    \textbf{ externForcingCycle }must be a multiple of    multiple of \textbf{externForcingPeriod}).  With these variables set
1167    \textbf{externForcingPeriod}).  With these variables set up, the    up, the model will interpolate the forcing linearly at each
1168    model will interpolate the forcing linearly at each iteration.    iteration.
1169    
1170  \item[dissipation] \  \item[dissipation] \
1171        
1172    The lateral eddy viscosity coefficient is specified through the    The lateral eddy viscosity coefficient is specified through the
1173    variable \textbf{viscAh}\textit{\ }(in m$^{2}$s$^{-1}$). The    variable \textbf{viscAh} (in m$^{2}$s$^{-1}$). The vertical eddy
1174    vertical eddy viscosity coefficient is specified through the    viscosity coefficient is specified through the variable
1175    variable \textbf{viscAz }(in m$^{2}$s$ ^{-1}$) for the ocean and    \textbf{viscAz} (in m$^{2}$s$^{-1}$) for the ocean and
1176    \textbf{viscAp}\textit{\ }(in Pa$^{2}$s$^{-1}$) for the atmosphere.    \textbf{viscAp} (in Pa$^{2}$s$^{-1}$) for the atmosphere.  The
1177    The vertical diffusive fluxes can be computed implicitly by setting    vertical diffusive fluxes can be computed implicitly by setting the
1178    the logical variable \textbf{implicitViscosity }to '.\texttt{TRUE}    logical variable \textbf{implicitViscosity }to \texttt{'.TRUE.'}.
1179    .'. In addition, biharmonic mixing can be added as well through the    In addition, biharmonic mixing can be added as well through the
1180    variable \textbf{viscA4}\textit{\ }(in m$^{4}$s$^{-1}$). On a    variable \textbf{viscA4} (in m$^{4}$s$^{-1}$). On a spherical polar
1181    spherical polar grid, you might also need to set the variable    grid, you might also need to set the variable \textbf{cosPower}
1182    \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
1183    the power of cosine of latitude to multiply viscosity. Slip or    cosine of latitude to multiply viscosity. Slip or no-slip conditions
1184    no-slip conditions at lateral and bottom boundaries are specified    at lateral and bottom boundaries are specified through the logical
1185    through the logical variables \textbf{no\_slip\_sides}\textit{\ }    variables \textbf{no\_slip\_sides} and \textbf{no\_slip\_bottom}. If
1186    and \textbf{no\_slip\_bottom}. If set to '\texttt{.FALSE.}',    set to \texttt{'.FALSE.'}, free-slip boundary conditions are
1187    free-slip boundary conditions are applied. If no-slip boundary    applied. If no-slip boundary conditions are applied at the bottom, a
1188    conditions are applied at the bottom, a bottom drag can be applied    bottom drag can be applied as well. Two forms are available: linear
1189    as well. Two forms are available: linear (set the variable    (set the variable \textbf{bottomDragLinear} in s$ ^{-1}$) and
1190    \textbf{bottomDragLinear}\textit{\ }in s$ ^{-1}$) and quadratic (set    quadratic (set the variable \textbf{bottomDragQuadratic} in
1191    the variable \textbf{bottomDragQuadratic}\textit{ \ }in m$^{-1}$).    m$^{-1}$).
1192    
1193    The Fourier and Shapiro filters are described elsewhere.    The Fourier and Shapiro filters are described elsewhere.
1194    
# Line 1172  these variables. Line 1202  these variables.
1202  \item[calculation of pressure/geopotential] \  \item[calculation of pressure/geopotential] \
1203        
1204    First, to run a non-hydrostatic ocean simulation, set the logical    First, to run a non-hydrostatic ocean simulation, set the logical
1205    variable \textbf{nonHydrostatic} to '.\texttt{TRUE}.'. The pressure    variable \textbf{nonHydrostatic} to \texttt{'.TRUE.'}. The pressure
1206    field is then inverted through a 3D elliptic equation. (Note: this    field is then inverted through a 3D elliptic equation. (Note: this
1207    capability is not available for the atmosphere yet.) By default, a    capability is not available for the atmosphere yet.) By default, a
1208    hydrostatic simulation is assumed and a 2D elliptic equation is used    hydrostatic simulation is assumed and a 2D elliptic equation is used
1209    to invert the pressure field. The parameters controlling the    to invert the pressure field. The parameters controlling the
1210    behaviour of the elliptic solvers are the variables    behaviour of the elliptic solvers are the variables
1211    \textbf{cg2dMaxIters}\textit{\ }and \textbf{cg2dTargetResidual } for    \textbf{cg2dMaxIters} and \textbf{cg2dTargetResidual } for
1212    the 2D case and \textbf{cg3dMaxIters}\textit{\ }and \textbf{    the 2D case and \textbf{cg3dMaxIters} and
1213      cg3dTargetResidual }for the 3D case. You probably won't need to    \textbf{cg3dTargetResidual} for the 3D case. You probably won't need to
1214    alter the default values (are we sure of this?).    alter the default values (are we sure of this?).
1215        
1216    For the calculation of the surface pressure (for the ocean) or    For the calculation of the surface pressure (for the ocean) or
1217    surface geopotential (for the atmosphere) you need to set the    surface geopotential (for the atmosphere) you need to set the
1218    logical variables \textbf{rigidLid} and    logical variables \textbf{rigidLid} and \textbf{implicitFreeSurface}
1219    \textbf{implicitFreeSurface}\textit{\ }(set one to '.    (set one to \texttt{'.TRUE.'} and the other to \texttt{'.FALSE.'}
1220    \texttt{TRUE}.' and the other to '.\texttt{FALSE}.' depending on how    depending on how you want to deal with the ocean upper or atmosphere
1221    you want to deal with the ocean upper or atmosphere lower boundary).    lower boundary).
1222    
1223  \end{description}  \end{description}
1224    
1225  \subsection{Tracer equations}  \subsection{Tracer equations}
1226    
1227  This section covers the tracer equations i.e. the potential temperature  This section covers the tracer equations i.e. the potential
1228  equation and the salinity (for the ocean) or specific humidity (for the  temperature equation and the salinity (for the ocean) or specific
1229  atmosphere) equation. As for the momentum equations, we only describe for  humidity (for the atmosphere) equation. As for the momentum equations,
1230  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.
1231  \textbf{tempDiffusion}\textit{, }\textbf{tempAdvection}\textit{, }\textbf{  The logical variables \textbf{tempDiffusion} \textbf{tempAdvection}
1232  tempForcing}\textit{,} and \textbf{tempStepping} allow you to turn on/off  \textbf{tempForcing}, and \textbf{tempStepping} allow you to turn
1233  terms in the temperature equation (same thing for salinity or specific  on/off terms in the temperature equation (same thing for salinity or
1234  humidity with variables \textbf{saltDiffusion}\textit{, }\textbf{  specific humidity with variables \textbf{saltDiffusion},
1235  saltAdvection}\textit{\ }etc). These variables are all assumed here to be  \textbf{saltAdvection} etc.). These variables are all assumed here to
1236  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}
1237  precise definition.  for a precise definition.
1238    
1239  \begin{description}  \begin{description}
1240  \item[initialization] \  \item[initialization] \
1241        
1242    The initial tracer data can be contained in the binary files    The initial tracer data can be contained in the binary files
1243    \textbf{ hydrogThetaFile }and \textbf{hydrogSaltFile}. These files    \textbf{hydrogThetaFile} and \textbf{hydrogSaltFile}. These files
1244    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
1245    the first vertical level.  If no file names are provided, the    first vertical level.  If no file names are provided, the tracers
1246    tracers are then initialized with the values of \textbf{tRef }and    are then initialized with the values of \textbf{tRef} and
1247    \textbf{sRef }mentioned above (in the equation of state section). In    \textbf{sRef} mentioned above (in the equation of state section). In
1248    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
1249    depth level.    depth level.
1250    
# Line 1224  precise definition. Line 1254  precise definition.
1254    atmosphere not being completely stabilized at the moment.    atmosphere not being completely stabilized at the moment.
1255        
1256    A combination of fluxes data and relaxation terms can be used for    A combination of fluxes data and relaxation terms can be used for
1257    driving the tracer equations. \ For potential temperature, heat flux    driving the tracer equations.  For potential temperature, heat flux
1258    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
1259    \textbf{surfQfile}\textit{. }  Alternatively or in addition, the    \textbf{surfQfile}.  Alternatively or in addition, the forcing can
1260    forcing can be specified through a relaxation term. The SST data to    be specified through a relaxation term. The SST data to which the
1261    which the model surface temperatures are restored to are supposed to    model surface temperatures are restored to are supposed to be stored
1262    be stored in the 2D binary file \textbf{ thetaClimFile}\textit{.    in the 2D binary file \textbf{thetaClimFile}. The corresponding
1263    }The corresponding relaxation time scale coefficient is set through    relaxation time scale coefficient is set through the variable
1264    the variable \textbf{tauThetaClimRelax}\textit{\ }(in s). The same    \textbf{tauThetaClimRelax} (in s). The same procedure applies for
1265    procedure applies for salinity with the variable names    salinity with the variable names \textbf{EmPmRfile},
1266    \textbf{EmPmRfile }\textit{, }\textbf{saltClimFile}\textit{, }and    \textbf{saltClimFile}, and \textbf{tauSaltClimRelax} for freshwater
1267    \textbf{tauSaltClimRelax} \textit{\ }for freshwater flux (in m/s)    flux (in m/s) and surface salinity (in ppt) data files and
1268    and surface salinity (in ppt) data files and relaxation time scale    relaxation time scale coefficient (in s), respectively. Also for
1269    coefficient (in s), respectively. Also for salinity, if the CPP key    salinity, if the CPP key \textbf{USE\_NATURAL\_BCS} is turned on,
1270    \textbf{USE\_NATURAL\_BCS} is turned on, natural boundary conditions    natural boundary conditions are applied i.e. when computing the
1271    are applied i.e. when computing the surface salinity tendency, the    surface salinity tendency, the freshwater flux is multiplied by the
1272    freshwater flux is multiplied by the model surface salinity instead    model surface salinity instead of a constant salinity value.
   of a constant salinity value.  
1273        
1274    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
1275    data is controlled by the variable \textbf{readBinaryPrec}.    data is controlled by the variable \textbf{readBinaryPrec}.
# Line 1250  precise definition. Line 1279  precise definition.
1279  \item[dissipation] \  \item[dissipation] \
1280        
1281    Lateral eddy diffusivities for temperature and salinity/specific    Lateral eddy diffusivities for temperature and salinity/specific
1282    humidity are specified through the variables \textbf{diffKhT }and    humidity are specified through the variables \textbf{diffKhT} and
1283    \textbf{diffKhS } (in m$^{2}$/s). Vertical eddy diffusivities are    \textbf{diffKhS} (in m$^{2}$/s). Vertical eddy diffusivities are
1284    specified through the variables \textbf{diffKzT }and \textbf{diffKzS    specified through the variables \textbf{diffKzT} and
1285    }(in m$^{2}$/s) for the ocean and \textbf{diffKpT }and    \textbf{diffKzS} (in m$^{2}$/s) for the ocean and \textbf{diffKpT
1286    \textbf{diffKpS }(in Pa$^{2}$/s) for the atmosphere. The vertical    }and \textbf{diffKpS} (in Pa$^{2}$/s) for the atmosphere. The
1287    diffusive fluxes can be computed implicitly by setting the logical    vertical diffusive fluxes can be computed implicitly by setting the
1288    variable \textbf{implicitDiffusion }to '.\texttt{TRUE} .'. In    logical variable \textbf{implicitDiffusion} to \texttt{'.TRUE.'}.
1289    addition, biharmonic diffusivities can be specified as well through    In addition, biharmonic diffusivities can be specified as well
1290    the coefficients \textbf{diffK4T }and \textbf{diffK4S }(in    through the coefficients \textbf{diffK4T} and \textbf{diffK4S} (in
1291    m$^{4}$/s). Note that the cosine power scaling (specified through    m$^{4}$/s). Note that the cosine power scaling (specified through
1292    \textbf{cosPower }- see the momentum equations section) is applied    \textbf{cosPower}---see the momentum equations section) is applied to
1293    to the tracer diffusivities (Laplacian and biharmonic) as well. The    the tracer diffusivities (Laplacian and biharmonic) as well. The
1294    Gent and McWilliams parameterization for oceanic tracers is    Gent and McWilliams parameterization for oceanic tracers is
1295    described in the package section. Finally, note that tracers can be    described in the package section. Finally, note that tracers can be
1296    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 1305  precise definition.
1305    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
1306    to the tracer time step). The other option is to parameterize    to the tracer time step). The other option is to parameterize
1307    convection with implicit vertical diffusion. To do this, set the    convection with implicit vertical diffusion. To do this, set the
1308    logical variable \textbf{implicitDiffusion }to '.\texttt{TRUE} .'    logical variable \textbf{implicitDiffusion} to \texttt{'.TRUE.'}
1309    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)
1310    you wish the tracer vertical diffusivities to have when mixing    you wish the tracer vertical diffusivities to have when mixing
1311    tracers vertically due to static instabilities. Note that    tracers vertically due to static instabilities. Note that
1312    \textbf{cadjFreq }and \textbf{ivdc\_kappa }can not both have    \textbf{cadjFreq} and \textbf{ivdc\_kappa}can not both have non-zero
1313    non-zero value.    value.
1314    
1315  \end{description}  \end{description}
1316    
1317  \subsection{Simulation controls}  \subsection{Simulation controls}
1318    
1319  The model ''clock'' is defined by the variable \textbf{deltaTClock }(in s)  The model ''clock'' is defined by the variable \textbf{deltaTClock}
1320  which determines the IO frequencies and is used in tagging output.  (in s) which determines the IO frequencies and is used in tagging
1321  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
1322  (otherwise it is simply set to the default time step \textbf{deltaT}).  accelerated runs (otherwise it is simply set to the default time step
1323  Frequency of checkpointing and dumping of the model state are referenced to  \textbf{deltaT}).  Frequency of checkpointing and dumping of the model
1324  this clock (see below).  state are referenced to this clock (see below).
1325    
1326  \begin{description}  \begin{description}
1327  \item[run duration] \  \item[run duration] \
1328        
1329    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
1330    s) through the real variable \textbf{startTime }or by specifying an    s) through the real variable \textbf{startTime} or by specifying an
1331    initial iteration number through the integer variable    initial iteration number through the integer variable
1332    \textbf{nIter0}. If these variables are set to nonzero values, the    \textbf{nIter0}. If these variables are set to nonzero values, the
1333    model will look for a ''pickup'' file \textit{pickup.0000nIter0 }to    model will look for a ''pickup'' file \textit{pickup.0000nIter0} to
1334    restart the integration\textit{. }The end of a simulation is set    restart the integration. The end of a simulation is set through the
1335    through the real variable \textbf{endTime }(in s).  Alternatively,    real variable \textbf{endTime} (in s).  Alternatively, you can
1336    you can specify instead the number of time steps to execute through    specify instead the number of time steps to execute through the
1337    the integer variable \textbf{nTimeSteps}.    integer variable \textbf{nTimeSteps}.
1338    
1339  \item[frequency of output] \  \item[frequency of output] \
1340        
1341    Real variables defining frequencies (in s) with which output files    Real variables defining frequencies (in s) with which output files
1342    are written on disk need to be set up. \textbf{dumpFreq }controls    are written on disk need to be set up. \textbf{dumpFreq} controls
1343    the frequency with which the instantaneous state of the model is    the frequency with which the instantaneous state of the model is
1344    saved. \textbf{chkPtFreq } and \textbf{pchkPtFreq }control the    saved. \textbf{chkPtFreq} and \textbf{pchkPtFreq} control the output
1345    output frequency of rolling and permanent checkpoint files,    frequency of rolling and permanent checkpoint files, respectively.
1346    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
1347    model state and checkpoint files. In addition, time-averaged fields    checkpoint files. In addition, time-averaged fields can be written
1348    can be written out by setting the variable \textbf{taveFreq} (in s).    out by setting the variable \textbf{taveFreq} (in s).  The precision
1349    The precision with which to write the binary data is controlled by    with which to write the binary data is controlled by the integer
1350    the integer variable w\textbf{riteBinaryPrec }(set it to \texttt{32}    variable w\textbf{riteBinaryPrec} (set it to \texttt{32} or
1351    or \texttt{ 64}).    \texttt{64}).
1352    
1353  \end{description}  \end{description}
1354    

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

  ViewVC Help
Powered by ViewVC 1.1.22