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

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.14

  ViewVC Help
Powered by ViewVC 1.1.22