/[MITgcm]/MITgcm/model/inc/PARAMS.h
ViewVC logotype

Diff of /MITgcm/model/inc/PARAMS.h

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

revision 1.6 by adcroft, Wed May 20 21:29:31 1998 UTC revision 1.9 by cnh, Mon May 25 20:05:55 1998 UTC
# Line 10  C     | the parameters can also be found Line 10  C     | the parameters can also be found
10  C     \==========================================================/  C     \==========================================================/
11    
12  C--   Contants  C--   Contants
 C     nOBands - No. of offline data time bands  
       INTEGER nOBands  
       PARAMETER ( nOBands = 12 )  
13  C     Useful physical values  C     Useful physical values
14        Real*8 PI        Real*8 PI
15        PARAMETER ( PI    = 3.14159265358979323844D0   )        PARAMETER ( PI    = 3.14159265358979323844D0   )
16        Real*8 deg2rad        Real*8 deg2rad
17        PARAMETER ( deg2rad = 2.D0*PI/360.D0           )        PARAMETER ( deg2rad = 2.D0*PI/360.D0           )
18    
19    C     Symbolic values
20    C     precXXXX - Used to indicate what precision to use for
21    C                dumping model state.
22          INTEGER precFloat32
23          PARAMETER ( precFloat32 = 0 )
24          INTEGER precFloat64
25          PARAMETER ( precFloat64 = 1 )
26    
27    C     Checkpoint data
28          INTEGER maxNoChkptLev
29          PARAMETER ( maxNoChkptLev = 2 )
30    
31  C--   COMMON /PARM_C/ Character valued parameters used by the model.  C--   COMMON /PARM_C/ Character valued parameters used by the model.
32  C     oBandId  - Offline dataset identifiers for different periods.  C     checkPtSuff - List of checkpoint file suffices
33        COMMON /PARM_C/ oBandId        COMMON /PARM_C/ checkPtSuff
34        CHARACTER*3 oBandId(nOBands)        CHARACTER*(5) checkPtSuff(maxNoChkptLev)
35    
36  C--   COMMON /PARM_I/ Integer valued parameters used by the model.  C--   COMMON /PARM_I/ Integer valued parameters used by the model.
37  C     cg2dMaxIters        - Maximum number of iterations in the  C     cg2dMaxIters        - Maximum number of iterations in the
38  C                           two-dimensional con. grad solver.  C                           two-dimensional con. grad solver.
# Line 32  C     nIter0              - Start time-s Line 42  C     nIter0              - Start time-s
42  C     nTimeSteps          - Number of timesteps to execute  C     nTimeSteps          - Number of timesteps to execute
43  C     numStepsPerPickup   - For offline setup. Frequency of pickup  C     numStepsPerPickup   - For offline setup. Frequency of pickup
44  C                           of flow fields.  C                           of flow fields.
45    C     writeStatePrec      - Precision used for writing model state.
46    C     writeBinaryPrec     - Precision used for writing binary files
47    C     readBinaryPrec      - Precision used for reading binary files
48    C     nCheckLev           - Holds current checkpoint level
49        COMMON /PARM_I/        COMMON /PARM_I/
50       &        cg2dMaxIters,       &        cg2dMaxIters,
51       &        cg2dChkResFreq,       &        cg2dChkResFreq,
52       &        nIter0, nTimeSteps,       &        nIter0, nTimeSteps,
53       &        numStepsPerPickup       &        numStepsPerPickup,
54         &        writeStatePrec, nCheckLev,
55         &        writeBinaryPrec, readBinaryPrec
56        INTEGER cg2dMaxIters        INTEGER cg2dMaxIters
57        INTEGER cg2dChkResFreq        INTEGER cg2dChkResFreq
58        INTEGER nIter0        INTEGER nIter0
59        INTEGER nTimeSteps        INTEGER nTimeSteps
60        INTEGER numStepsPerPickup        INTEGER numStepsPerPickup
61          INTEGER writeStatePrec
62          INTEGER writeBinaryPrec
63          INTEGER readBinaryPrec
64          INTEGER nCheckLev
65    
66  C--   COMMON /PARM_L/ Logical valued parameters used by the model.  C--   COMMON /PARM_L/ Logical valued parameters used by the model.
67  C     usingCartesianGrid - If TRUE grid generation will be in a cartesian  C     usingCartesianGrid - If TRUE grid generation will be in a cartesian
# Line 52  C     momViscosity  - Flag which turns m Line 72  C     momViscosity  - Flag which turns m
72  C     momAdvection  - Flag which turns advection of momentum on and off.  C     momAdvection  - Flag which turns advection of momentum on and off.
73  C     momForcing    - Flag which turns external forcing of momentum on  C     momForcing    - Flag which turns external forcing of momentum on
74  C                     and off.  C                     and off.
75    C     momPressureForcing - Flag which turns pressure term in momentum equation
76    C                          on and off.
77  C     useCoriolis   - Flag which turns the coriolis terms on and off.  C     useCoriolis   - Flag which turns the coriolis terms on and off.
78  C     tempDiffusion - Flag which turns diffusion of temperature on  C     tempDiffusion - Flag which turns diffusion of temperature on
79  C                     and off.  C                     and off.
# Line 65  C     saltAdvection - Flag which turns a Line 87  C     saltAdvection - Flag which turns a
87  C                     and off.  C                     and off.
88  C     saltForcing   - Flag which turns external forcing of salinit on  C     saltForcing   - Flag which turns external forcing of salinit on
89  C                     and off.  C                     and off.
90    C     implicitFreeSurface - Set to true to use implcit free surface
91    C     rigidLid            - Set to true to use rigid lid
92        COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid,        COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid,
93       & momViscosity, momAdvection, momForcing, useCoriolis,       & momViscosity, momAdvection, momForcing, useCoriolis, momPressureForcing,
94       & tempDiffusion, tempAdvection, tempForcing,       & tempDiffusion, tempAdvection, tempForcing,
95       & saltDiffusion, saltAdvection, saltForcing       & saltDiffusion, saltAdvection, saltForcing,
96         & implicitFreeSurface, rigidLid
97        LOGICAL usingCartesianGrid        LOGICAL usingCartesianGrid
98        LOGICAL usingSphericalPolarGrid        LOGICAL usingSphericalPolarGrid
99        LOGICAL momViscosity        LOGICAL momViscosity
100        LOGICAL momAdvection        LOGICAL momAdvection
101        LOGICAL momForcing        LOGICAL momForcing
102          LOGICAL momPressureForcing
103        LOGICAL useCoriolis        LOGICAL useCoriolis
104        LOGICAL tempDiffusion        LOGICAL tempDiffusion
105        LOGICAL tempAdvection        LOGICAL tempAdvection
# Line 81  C                     and off. Line 107  C                     and off.
107        LOGICAL saltDiffusion        LOGICAL saltDiffusion
108        LOGICAL saltAdvection        LOGICAL saltAdvection
109        LOGICAL saltForcing        LOGICAL saltForcing
110          LOGICAL implicitFreeSurface
111          LOGICAL rigidLid
112    
113  C--   COMMON /PARM_R/ "Real" valued parameters used by the model.  C--   COMMON /PARM_R/ "Real" valued parameters used by the model.
114  C     cg2dTargetResidual  C     cg2dTargetResidual
115  C               - Target residual for cg2d solver.  C               - Target residual for cg2d solver.
116    C     cg2dpcOffDFac - Averaging weight for preconditioner off-diagonal.
117    C     Note. 20th May 1998
118    C           I made a weird discovery! In the model paper we argue
119    C           for the form of the preconditioner used here ( see
120    C           A Finite-volume, Incompressible Navier-Stokes Model
121    C           ...., Marshall et. al ). The algebra gives a simple
122    C           0.5 factor for the averaging of ac and aCw to get a
123    C           symmettric pre-conditioner. By using a factor of 0.51
124    C           i.e. scaling the off-diagonal terms in the
125    C           preconditioner down slightly I managed to get the
126    C           number of iterations for convergence in a test case to
127    C           drop form 192 -> 134! Need to investigate this further!
128    C           For now I have introduced a parameter cg2dpcOffDFac which
129    C           defaults to 0.51 but can be set at runtime.
130  C     delZ      - Vertical grid spacing ( m ) - delZ is the distance  C     delZ      - Vertical grid spacing ( m ) - delZ is the distance
131  C                 between "w" surfaces.  C                 between "w" surfaces.
132  C     delX      - Separation between cell faces (m) or (deg), depending  C     delX      - Separation between cell faces (m) or (deg), depending
133  C     delY        on input flags.  C     delY        on input flags.
134  C     gravity   - Accel. due to gravity ( m/s^2 )  C     gravity   - Accel. due to gravity ( m/s^2 )
135    C     gBaro     - Accel. due to gravity used in barotropic equation ( m/s^2 )
136  C     ronil     - Reference density  C     ronil     - Reference density
137  C     startTime - Start time for model ( s )  C     startTime - Start time for model ( s )
138  C     phiMin    - Latitude of southern most cell face.  C     phiMin    - Latitude of southern most cell face.
# Line 119  C                 salt vertically ( m^2/ Line 162  C                 salt vertically ( m^2/
162  C     diffK4S   - Biharmonic diffusion coeff. for mixing of  C     diffK4S   - Biharmonic diffusion coeff. for mixing of
163  C                 salt laterally ( m^4/s )  C                 salt laterally ( m^4/s )
164  C     deltaT    - Default timestep ( s )  C     deltaT    - Default timestep ( s )
165    C     deltaTClock  - Timestep used as model "clock". This determines the
166    C                    IO frequencies and is used in tagging output. It can
167    C                    be totally different to the dynamical time. Typically
168    C                    it will be the deep-water timestep for accelerated runs.
169    C                    Frequency of checkpointing and dumping of the model state
170    C                    are referenced to this clock. ( s )
171  C     deltaTMom    - Timestep for momemtum equations ( s )  C     deltaTMom    - Timestep for momemtum equations ( s )
172  C     deltaTtracer - Timestep for tracer equations ( s )  C     deltaTtracer - Timestep for tracer equations ( s )
173    C     freesurfFac  - Parameter to turn implicit free surface term on or off
174    C                    freesurfac = 1. uses implicit free surface
175    C                    freesurfac = 0. uses rigid lid
176  C     tauCD     - CD scheme coupling timescale ( 1/s )  C     tauCD     - CD scheme coupling timescale ( 1/s )
177  C     rCD       - CD scheme normalised coupling parameter ( 0-1 )  C     rCD       - CD scheme normalised coupling parameter ( 0-1 )
178  C     GMmaxslope  - max. slope allowed in GM/Redi tensor  C     GMmaxslope  - max. slope allowed in GM/Redi tensor
179  C     GMlength  - Length to use in Visbeck et al. formula for K  C     GMlength  - Length to use in Visbeck et al. formula for K (m)
180  C     GMalpha   - alpha to use in Visbeck et al. formula for K  C     GMalpha   - alpha to use in Visbeck et al. formula for K
181  C     GMdepth   - Depth over which to integrate Richardson # (Visbeck et al.)  C     GMdepth   - Depth over which to integrate Richardson # (Visbeck et al.)
182  C     GMbackground - background value of GM/Redi coefficient  C     GMkbackground - background value of GM/Redi coefficient
183  C     startTime - Starting time for this integration ( s ).  C     startTime - Starting time for this integration ( s ).
184  C     endTime   - Ending time for this integration ( s ).  C     endTime   - Ending time for this integration ( s ).
185  C     chkPtFreq - Frequency of check pointing ( s ).  C     chkPtFreq  - Frequency of rolling check pointing ( s ).
186    C     pChkPtFreq - Frequency of permanent check pointing ( s ).
187  C     dumpFreq  - Frequency with which model state is written to  C     dumpFreq  - Frequency with which model state is written to
188  C                 post-processing files ( s ).  C                 post-processing files ( s ).
189        COMMON /PARM_R/ cg2dTargetResidual, delZ, delX, delY, deltaT,  C     afFacMom  - Advection of momentum term scaling parameter
190       & deltaTmom, deltaTtracer, abeps, startTime, phiMin, thetaMin,  C     vfFacMom  - Momentum viscosity scaling parameter
191       & rSphere, f0, fCori, beta, viscAh, viscAz, viscA4, diffKhT, diffKzT,  C     pfFacMom  - Momentum pressure forcing parameter
192       & diffK4T, diffKhS, diffKzS, diffK4S, delT, tauCD, rCD,  C     cfFacMom  - Coriolis term scaling parameter
193    C     foFacMom  - Momentum forcing scaling parameter
194    C     cAdjFreq  - Frequency of convective adjustment
195          COMMON /PARM_R/ cg2dTargetResidual, cg2dpcOffDFac, delZ, delX, delY,
196         & deltaT,deltaTmom, deltaTtracer, deltaTClock,abeps, startTime, phiMin,
197         & thetaMin, rSphere, f0, fCori, beta, viscAh, viscAz, viscA4,
198         & diffKhT, diffKzT, diffK4T, diffKhS, diffKzS, diffK4S, delT,
199         & tauCD, rCD, freeSurfFac,
200       & GMmaxslope,GMlength,GMalpha,GMdepth,GMkbackground,       & GMmaxslope,GMlength,GMalpha,GMdepth,GMkbackground,
201       & gravity, rhonil, tRef, sRef,       & gravity, gBaro, rhonil, tRef, sRef,
202       & endTime, chkPtFreq, dumpFreq       & endTime, chkPtFreq, pchkPtFreq, dumpFreq,
203         & afFacMom, vfFacMom, pfFacMom, cfFacMom, foFacMom,
204         & cAdjFreq
205        _RL cg2dTargetResidual        _RL cg2dTargetResidual
206          _RL cg2dpcOffDFac
207        _RL delZ(Nz)        _RL delZ(Nz)
208        _RL delX(Nx)        _RL delX(Nx)
209        _RL delY(Ny)        _RL delY(Ny)
210        _RL deltaT        _RL deltaT
211          _RL deltaTClock
212        _RL deltaTmom        _RL deltaTmom
213        _RL deltaTtracer        _RL deltaTtracer
214        _RL abeps        _RL abeps
# Line 152  C                 post-processing files Line 216  C                 post-processing files
216        _RL thetaMin        _RL thetaMin
217        _RL rSphere        _RL rSphere
218        _RL f0        _RL f0
219          _RL freeSurfFac
220        _RL beta        _RL beta
221        _RL viscAh        _RL viscAh
222        _RL viscAz        _RL viscAz
# Line 171  C                 post-processing files Line 236  C                 post-processing files
236        _RL GMdepth        _RL GMdepth
237        _RL GMkbackground        _RL GMkbackground
238        _RL gravity        _RL gravity
239          _RL gBaro
240        _RL rhonil        _RL rhonil
241        _RL tRef(Nz)        _RL tRef(Nz)
242        _RL sRef(Nz)        _RL sRef(Nz)
# Line 178  C                 post-processing files Line 244  C                 post-processing files
244        _RL startTime        _RL startTime
245        _RL endTime        _RL endTime
246        _RL chkPtFreq        _RL chkPtFreq
247          _RL pChkPtFreq
248        _RL dumpFreq        _RL dumpFreq
249          _RL afFacMom
250          _RL vfFacMom
251          _RL pfFacMom
252          _RL cfFacMom
253          _RL foFacMom
254          _RL cAdjFreq
255    
256        COMMON /PARM_A/ HeatCapacity_Cp,        COMMON /PARM_A/ HeatCapacity_Cp,
257       &                Lamba_theta       &                Lamba_theta
# Line 194  C     sBeta     - Linear EOS haline cont Line 267  C     sBeta     - Linear EOS haline cont
267        COMMON /PARM_EOS_LIN/ tAlpha,sBeta        COMMON /PARM_EOS_LIN/ tAlpha,sBeta
268        _RL tAlpha        _RL tAlpha
269        _RL sBeta        _RL sBeta
270    

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.9

  ViewVC Help
Powered by ViewVC 1.1.22