Home Contact Us Site Map  
 
       
    next up previous contents
Next: 3.13 P coordinate Global Up: 3.12 Global Ocean MITgcm Previous: 3.12.2 Discrete Numerical Configuration   Contents

Subsections


3.12.3 Experiment Configuration

The model configuration for this experiment resides under the directory tutorial_global_oce_latlon/. The experiment files

  • input/data
  • input/data.pkg
  • input/eedata,
  • input/trenberth_taux.bin,
  • input/trenberth_tauy.bin,
  • input/lev_s.bin,
  • input/lev_t.bin,
  • input/lev_sss.bin,
  • input/lev_sst.bin,
  • input/bathymetry.bin,
  • code/SIZE.h.
contain the code customizations and parameter settings for these experiments. Below we describe the customizations to these files associated with this experiment.

3.12.3.1 Driving Datasets

Figures (3.5-3.10) show the relaxation temperature ( $ \theta^{\ast}$ ) and salinity ($ S^{\ast}$ ) fields, the wind stress components ($ \tau_x$ and $ \tau_y$ ), the heat flux ($ Q$ ) and the net fresh water flux ( $ {\cal E} - {\cal P} - {\cal R}$ ) used in equations (3.31-3.34). The figures also indicate the lateral extent and coastline used in the experiment. Figure (-- missing figure -- ) shows the depth contours of the model domain.

3.12.3.2 File input/data

This file, reproduced completely below, specifies the main parameters for the experiment. The parameters that are significant for this configuration are

  • Lines 7-8
    tRef= 15*20.,
    sRef= 15*35.,
    
    set reference values for potential temperature and salinity at each model level in units of $ ^{\circ }\mathrm {C}$ and $ {\rm ppt}$ . The entries are ordered from surface to depth. Density is calculated from anomalies at each level evaluated with respect to the reference values set here.
    \fbox{
\begin{minipage}{5.0in}
{\it S/R INI\_THETA}({\it ini\_theta.F}) \\
{\it S/R INI\_SALT}({\it ini\_salt.F})
\end{minipage}}

  • Line 9,
    viscAr=1.E-3,
    
    this line sets the vertical Laplacian dissipation coefficient to $ 1 \times 10^{-3} {\rm m^{2}s^{-1}}$ . Boundary conditions for this operator are specified later.

    \fbox{
\begin{minipage}{5.0in}
{\it S/R CALC\_DIFFUSIVITY}({\it calc\_diffusivity.F})
\end{minipage}}

  • Line 10,
    viscAh=5.E5,
    
    this line sets the horizontal Laplacian frictional dissipation coefficient to $ 5 \times 10^{5} {\rm m^{2}s^{-1}}$ . Boundary conditions for this operator are specified later.

  • Lines 11 and 13,
    diffKhT=0.,
    diffKhS=0.,
    
    set the horizontal diffusion coefficient for temperature and salinity to 0, since package GMREDI is used.

  • Lines 12 and 14,
    diffKrT=3.E-5,
    diffKrS=3.E-5,
    
    set the vertical diffusion coefficient for temperature and salinity to $ 3 \times 10^{-5}\,{\rm m^{2}s^{-1}}$ . The boundary condition on this operator is $ \frac{\partial}{\partial z}=0$ at both the upper and lower boundaries.

  • Lines 15-17
    rhonil=1035.,
    rhoConstFresh=1000.,
    eosType = 'JMD95Z',
    
    set the reference densities for sea water and fresh water, and selects the equation of state [Jackett and McDougall, 1995] \fbox{
\begin{minipage}{5.0in}
{\it S/R FIND\_RHO}~({\it find\_rho.F})\\
{\it S...
...\
{\it S/R SOLVE\_FOR\_PRESSURE}~({\it solve\_for\_pressure.F})
\end{minipage}}

  • Lines 18-19,
     ivdc_kappa=100.,
     implicitDiffusion=.TRUE.,
    
    specify an ``implicit diffusion'' scheme with increased vertical diffusivity of 100 m$ ^2$ /s in case of instable stratification. \fbox{
\begin{minipage}{5.0in}
\end{minipage}}

  • ...

  • Line 28,
    readBinaryPrec=32,
    
    Sets format for reading binary input datasets holding model fields to use 32-bit representation for floating-point numbers.
    \fbox{
\begin{minipage}{5.0in}
{\it S/R READ\_WRITE\_FLD}~({\it read\_write\_fld.F})\\
{\it S/R READ\_WRITE\_REC}~({\it read\_write\_rec.F})
\end{minipage}}

  • Line 33,
    cg2dMaxIters=500,
    
    Sets maximum number of iterations the two-dimensional, conjugate gradient solver will use, irrespective of convergence criteria being met.
    \fbox{
\begin{minipage}{5.0in}
{\it S/R CG2D}~({\it cg2d.F})
\end{minipage}}

  • Line 34,
    cg2dTargetResidual=1.E-13,
    
    Sets the tolerance which the two-dimensional, conjugate gradient solver will use to test for convergence in equation 2.20 to $ 1 \times 10^{-13}$ . Solver will iterate until tolerance falls below this value or until the maximum number of solver iterations is reached.
    \fbox{
\begin{minipage}{5.0in}
{\it S/R CG2D}~({\it cg2d.F})
\end{minipage}}

  • Line 39,
    nIter0=0,
    
    Sets the starting time for the model internal time counter. When set to non-zero this option implicitly requests a checkpoint file be read for initial state. By default the checkpoint file is named according to the integer number of time step value nIter0. The internal time counter works in seconds. Alternatively, startTime can be set.

  • Line 40,
    nTimeSteps=20,
    
    Sets the time step number at which this simulation will terminate. At the end of a simulation a checkpoint file is automatically written so that a numerical experiment can consist of multiple stages. Alternatively endTime can be set.

  • Line 44,
    deltaTmom=1800.,
    
    Sets the timestep $ \Delta t_{v}$ used in the momentum equations to $ 30~{\rm mins}$ . See section 2.2.

    \fbox{
\begin{minipage}{5.0in}
{\it S/R TIMESTEP}({\it timestep.F})
\end{minipage}}

  • Line 45,
    tauCD=321428.,
    
    Sets the D-grid to C-grid coupling time scale $ \tau_{CD}$ used in the momentum equations.

    \fbox{
\begin{minipage}{5.0in}
{\it S/R INI\_PARMS}({\it ini\_parms.F})\\
{\it S/R MOM\_FLUXFORM}({\it mom\_fluxform.F})
\end{minipage}}

  • Lines 46-48,
    deltaTtracer=86400.,
    deltaTClock = 86400.,
    deltaTfreesurf= 86400.,
    
    Sets the default timestep, $ \Delta t_{\theta}$ , for tracer equations and implicit free surface equations to $ 24~{\rm hours}$ . See section 2.2.

    \fbox{
\begin{minipage}{5.0in}
{\it S/R TIMESTEP\_TRACER}({\it timestep\_tracer.F})
\end{minipage}}

  • Line 76,
    bathyFile='bathymetry.bin'
    
    This line specifies the name of the file from which the domain bathymetry is read. This file is a two-dimensional ($ x,y$ ) map of depths. This file is assumed to contain 32-bit binary numbers giving the depth of the model at each grid cell, ordered with the x coordinate varying fastest. The points are ordered from low coordinate to high coordinate for both axes. The units and orientation of the depths in this file are the same as used in the MITgcm code. In this experiment, a depth of $ 0m$ indicates a solid wall and a depth of $ <0m$ indicates open ocean.

  • Lines 79-80,
    zonalWindFile='trenberth_taux.bin'
    meridWindFile='trenberth_tauy.bin'
    
    These lines specify the names of the files from which the x- and y- direction surface wind stress is read. These files are also three-dimensional ($ x,y,time$ ) maps and are enumerated and formatted in the same manner as the bathymetry file.

other lines in the file input/data are standard values that are described in the MITgcm Getting Started and MITgcm Parameters notes.

     1	# ====================
     2	# | Model parameters |
     3	# ====================
     4	#
     5	# Continuous equation parameters
     6	 &PARM01
     7	 tRef = 15*20.,
     8	 sRef = 15*35.,
     9	 viscAr=1.E-3,
    10	 viscAh=5.E5,
    11	 diffKhT=0.,
    12	 diffKrT=3.E-5,
    13	 diffKhS=0.,
    14	 diffKrS=3.E-5,
    15	 rhonil=1035.,
    16	 rhoConstFresh=1000.,
    17	 eosType = 'JMD95Z',
    18	 ivdc_kappa=100.,
    19	 implicitDiffusion=.TRUE.,
    20	 allowFreezing=.TRUE.,
    21	 exactConserv=.TRUE.,
    22	 useRealFreshWaterFlux=.TRUE.,
    23	 useCDscheme=.TRUE.,
    24	# turn on looped cells
    25	 hFacMin=.05,
    26	 hFacMindr=50.,
    27	# set precision of data files
    28	 readBinaryPrec=32,
    29	 &
    30	
    31	# Elliptic solver parameters
    32	 &PARM02
    33	 cg2dMaxIters=500,
    34	 cg2dTargetResidual=1.E-13,
    35	 &
    36	
    37	# Time stepping parameters
    38	 &PARM03
    39	 nIter0=       0,
    40	 nTimeSteps = 20,
    41	# 100 years of integration will yield a reasonable flow field
    42	# startTime =          0.,
    43	# endTime   = 3110400000.,
    44	 deltaTmom = 1800.,
    45	 tauCD =     321428.,
    46	 deltaTtracer= 86400.,
    47	 deltaTClock = 86400.,
    48	 deltaTfreesurf= 86400.,
    49	 abEps = 0.1,
    50	 pChkptFreq= 1728000.,
    51	 dumpFreq=   864000.,
    52	 taveFreq=   864000.,
    53	 monitorFreq=1.,
    54	# 2 months restoring timescale for temperature
    55	 tauThetaClimRelax=  5184000.,
    56	# 6 months restoring timescale for salinity
    57	 tauSaltClimRelax = 15552000.,
    58	 periodicExternalForcing=.TRUE.,
    59	 externForcingPeriod=2592000.,
    60	 externForcingCycle=31104000.,
    61	 &
    62	
    63	# Gridding parameters
    64	 &PARM04
    65	 usingSphericalPolarGrid=.TRUE.,
    66	 delR= 50.,  70., 100., 140., 190.,
    67	      240., 290., 340., 390., 440.,
    68	      490., 540., 590., 640., 690.,
    69	 ygOrigin=-80.,
    70	 dySpacing=4.,
    71	 dxSpacing=4.,
    72	 &
    73	
    74	# Input datasets
    75	 &PARM05
    76	 bathyFile=      'bathymetry.bin',
    77	 hydrogThetaFile='lev_t.bin',
    78	 hydrogSaltFile= 'lev_s.bin',
    79	 zonalWindFile=  'trenberth_taux.bin',
    80	 meridWindFile=  'trenberth_tauy.bin',
    81	 thetaClimFile=  'lev_sst.bin',
    82	 saltClimFile=   'lev_sss.bin',
    83	 surfQFile=      'ncep_qnet.bin',
    84	 the_run_name=   'global_oce_latlon',
    85	# fresh water flux is turned on, comment next line to it turn off
    86	# (maybe better with surface salinity restoring)
    87	 EmPmRFile=      'ncep_emp.bin',
    88	 &

3.12.3.3 File input/data.pkg

This file uses standard default values and does not contain customisations for this experiment.

3.12.3.4 File input/eedata

This file uses standard default values and does not contain customisations for this experiment.

3.12.3.5 Filesinput/trenberth_taux.bin and input/trenberth_tauy.bin

The input/trenberth_taux.bin and input/trenberth_tauy.bin files specify a three-dimensional ($ x,y,time$ ) map of wind stress, $ (\tau_{x},\tau_{y})$ , values [Trenberth et al., 1990]. The units used are $ Nm^{-2}$ .

3.12.3.6 File input/bathymetry.bin

The input/bathymetry.bin file specifies a two-dimensional ($ x,y$ ) map of depth values. For this experiment values range between 0 and $ -5200\,{\rm m}$ , and have been derived from ETOPO5. The file contains a raw binary stream of data that is enumerated in the same way as standard MITgcm two-dimensional, horizontal arrays.

3.12.3.7 File code/SIZE.h

Four lines are customized in this file for the current experiment

  • Line 40,
    sNx=45,
    
    this line sets the number of grid points of each tile (or sub-domain) along the x-coordinate axis.

  • Line 41,
    sNy=40,
    
    this line sets the number of grid points of each tile (or sub-domain) along the y-coordinate axis.

  • Lines 46 and 44,
    nPx=1,
    nSx=2,
    
    theses lines set, respectively, the number of processes and the number of tiles per process along the x-coordinate axis. Therefore, the total number of grid points along the x-coordinate axis corresponding to the full domain extent is $ Nx=sNx*sNx*nPx=90$

  • Line 50,
    Nr=15
    
    this line sets the vertical domain extent in grid points.

     1	C $Header: /u/gcmpack/MITgcm/verification/tutorial_global_oce_latlon/code/SIZE.h,v 1.1 2006/07/14 20:35:22 jmc Exp $
     2	C $Name:  $
     3	
     4	C
     5	C     /==========================================================\
     6	C     | SIZE.h Declare size of underlying computational grid.    |
     7	C     |==========================================================|
     8	C     | The design here support a three-dimensional model grid   |
     9	C     | with indices I,J and K. The three-dimensional domain     |
    10	C     | is comprised of nPx*nSx blocks of size sNx along one axis|
    11	C     | nPy*nSy blocks of size sNy along another axis and one    |
    12	C     | block of size Nz along the final axis.                   |
    13	C     | Blocks have overlap regions of size OLx and OLy along the|
    14	C     | dimensions that are subdivided.                          |
    15	C     \==========================================================/
    16	C     Voodoo numbers controlling data layout.
    17	C     sNx - No. X points in sub-grid.
    18	C     sNy - No. Y points in sub-grid.
    19	C     OLx - Overlap extent in X.
    20	C     OLy - Overlat extent in Y.
    21	C     nSx - No. sub-grids in X.
    22	C     nSy - No. sub-grids in Y.
    23	C     nPx - No. of processes to use in X.
    24	C     nPy - No. of processes to use in Y.
    25	C     Nx  - No. points in X for the total domain.
    26	C     Ny  - No. points in Y for the total domain.
    27	C     Nr  - No. points in Z for full process domain.
    28	      INTEGER sNx
    29	      INTEGER sNy
    30	      INTEGER OLx
    31	      INTEGER OLy
    32	      INTEGER nSx
    33	      INTEGER nSy
    34	      INTEGER nPx
    35	      INTEGER nPy
    36	      INTEGER Nx
    37	      INTEGER Ny
    38	      INTEGER Nr
    39	      PARAMETER (
    40	     &           sNx =  45,
    41	     &           sNy =  40,
    42	     &           OLx =   2,
    43	     &           OLy =   2,
    44	     &           nSx =   2,
    45	     &           nSy =   1,
    46	     &           nPx =   1,
    47	     &           nPy =   1,
    48	     &           Nx  = sNx*nSx*nPx,
    49	     &           Ny  = sNy*nSy*nPy,
    50	     &           Nr  =  15)
    51	
    52	C     MAX_OLX  - Set to the maximum overlap region size of any array
    53	C     MAX_OLY    that will be exchanged. Controls the sizing of exch
    54	C                routine buufers.
    55	      INTEGER MAX_OLX
    56	      INTEGER MAX_OLY
    57	      PARAMETER ( MAX_OLX = OLx,
    58	     &            MAX_OLY = OLy )
    59

3.12.3.8 Other Files


next up previous contents
Next: 3.13 P coordinate Global Up: 3.12 Global Ocean MITgcm Previous: 3.12.2 Discrete Numerical Configuration   Contents
mitgcm-support@mitgcm.org
Copyright © 2006 Massachusetts Institute of Technology Last update 2018-01-23