/[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.30 by cnh, Sun Sep 6 17:35:19 1998 UTC revision 1.41 by adcroft, Thu Aug 26 17:47:37 1999 UTC
# Line 4  C     /================================= Line 4  C     /=================================
4  C     | PARAMS.h                                                 |  C     | PARAMS.h                                                 |
5  C     | o Header file defining model "parameters".               |  C     | o Header file defining model "parameters".               |
6  C     |==========================================================|  C     |==========================================================|
7  C     | The values from the model's standard input file are      |  C     | The values from the model standard input file are        |
8  C     | stored into the variables held here. Notes describing    |  C     | stored into the variables held here. Notes describing    |
9  C     | the parameters can also be found here.                   |  C     | the parameters can also be found here.                   |
10  C     \==========================================================/  C     \==========================================================/
# Line 23  C     Symbolic values Line 23  C     Symbolic values
23  C     precXXXX - Used to indicate what precision to use for  C     precXXXX - Used to indicate what precision to use for
24  C                dumping model state.  C                dumping model state.
25        INTEGER precFloat32        INTEGER precFloat32
26        PARAMETER ( precFloat32 = 0 )        PARAMETER ( precFloat32 = 32 )
27        INTEGER precFloat64        INTEGER precFloat64
28        PARAMETER ( precFloat64 = 1 )        PARAMETER ( precFloat64 = 64 )
29  C     UNSET_xxx - Used to indicate variables that have not been given a value  C     UNSET_xxx - Used to indicate variables that have not been given a value
30        Real*8 UNSET_FLOAT8        Real*8 UNSET_FLOAT8
31        PARAMETER ( UNSET_FLOAT8 = 1.234567D5 )        PARAMETER ( UNSET_FLOAT8 = 1.234567D5 )
# Line 55  C     thetaClimFile   - File containing Line 55  C     thetaClimFile   - File containing
55  C                       in relaxation term -lambda(theta-theta*)  C                       in relaxation term -lambda(theta-theta*)
56  C     saltClimFile    - File containing salt climataology used  C     saltClimFile    - File containing salt climataology used
57  C                       in relaxation term -lambda(salt-salt*)  C                       in relaxation term -lambda(salt-salt*)
58    C     surfQfile       - File containing surface heat flux
59    C     EmPmRfile       - File containing surface fresh water flux
60  C     buoyancyRelation - Flag used to indicate which relation to use to  C     buoyancyRelation - Flag used to indicate which relation to use to
61  C                        get buoyancy.  C                        get buoyancy.
62        COMMON /PARM_C/ checkPtSuff,        COMMON /PARM_C/ checkPtSuff,
63       &                bathyFile, hydrogThetaFile, hydrogSaltFile,       &                bathyFile, hydrogThetaFile, hydrogSaltFile,
64       &                zonalWindFile, meridWindFile, thetaClimFile,       &                zonalWindFile, meridWindFile, thetaClimFile,
65       &                saltClimFile, buoyancyRelation       &                saltClimFile, buoyancyRelation,
66         &                EmPmRfile,surfQfile
67        CHARACTER*(5) checkPtSuff(maxNoChkptLev)        CHARACTER*(5) checkPtSuff(maxNoChkptLev)
68        CHARACTER*(MAX_LEN_FNAM) bathyFile        CHARACTER*(MAX_LEN_FNAM) bathyFile
69        CHARACTER*(MAX_LEN_FNAM) hydrogThetaFile        CHARACTER*(MAX_LEN_FNAM) hydrogThetaFile
# Line 69  C                        get buoyancy. Line 72  C                        get buoyancy.
72        CHARACTER*(MAX_LEN_FNAM) meridWindFile        CHARACTER*(MAX_LEN_FNAM) meridWindFile
73        CHARACTER*(MAX_LEN_FNAM) thetaClimFile        CHARACTER*(MAX_LEN_FNAM) thetaClimFile
74        CHARACTER*(MAX_LEN_FNAM) saltClimFile        CHARACTER*(MAX_LEN_FNAM) saltClimFile
75          CHARACTER*(MAX_LEN_FNAM) surfQfile
76          CHARACTER*(MAX_LEN_FNAM) EmPmRfile
77        CHARACTER*(MAX_LEN_FNAM) buoyancyRelation        CHARACTER*(MAX_LEN_FNAM) buoyancyRelation
78    
79  C--   COMMON /PARM_I/ Integer valued parameters used by the model.  C--   COMMON /PARM_I/ Integer valued parameters used by the model.
# Line 76  C     cg2dMaxIters        - Maximum numb Line 81  C     cg2dMaxIters        - Maximum numb
81  C                           two-dimensional con. grad solver.  C                           two-dimensional con. grad solver.
82  C     cg2dChkResFreq      - Frequency with which to check residual  C     cg2dChkResFreq      - Frequency with which to check residual
83  C                           in con. grad solver.  C                           in con. grad solver.
84    C     cg3dMaxIters        - Maximum number of iterations in the
85    C                           three-dimensional con. grad solver.
86    C     cg3dChkResFreq      - Frequency with which to check residual
87    C                           in con. grad solver.
88  C     nIter0              - Start time-step number of for this run  C     nIter0              - Start time-step number of for this run
89  C     nTimeSteps          - Number of timesteps to execute  C     nTimeSteps          - Number of timesteps to execute
90  C     numStepsPerPickup   - For offline setup. Frequency of pickup  C     numStepsPerPickup   - For offline setup. Frequency of pickup
# Line 84  C     writeStatePrec      - Precision us Line 93  C     writeStatePrec      - Precision us
93  C     writeBinaryPrec     - Precision used for writing binary files  C     writeBinaryPrec     - Precision used for writing binary files
94  C     readBinaryPrec      - Precision used for reading binary files  C     readBinaryPrec      - Precision used for reading binary files
95  C     nCheckLev           - Holds current checkpoint level  C     nCheckLev           - Holds current checkpoint level
96    C     nShap               - "Order" of shapiro filter to apply to
97    C                           model prognositic fields.
98    C                           nShap == 1 => del2
99    C                           nShap == 2 => del4
100    C                           nShap == 3 => del6
101    C                           etc...
102    
103        COMMON /PARM_I/        COMMON /PARM_I/
104       &        cg2dMaxIters,       &        cg2dMaxIters,
105       &        cg2dChkResFreq,       &        cg2dChkResFreq,
106       &        nIter0, nTimeSteps,       &        cg3dMaxIters,
107         &        cg3dChkResFreq,
108         &        nIter0, nTimeSteps, nEndIter,
109       &        numStepsPerPickup,       &        numStepsPerPickup,
110       &        writeStatePrec, nCheckLev,       &        writeStatePrec, nCheckLev,
111       &        writeBinaryPrec, readBinaryPrec       &        writeBinaryPrec, readBinaryPrec,
112         &        nShap
113        INTEGER cg2dMaxIters        INTEGER cg2dMaxIters
114        INTEGER cg2dChkResFreq        INTEGER cg2dChkResFreq
115          INTEGER cg3dMaxIters
116          INTEGER cg3dChkResFreq
117        INTEGER nIter0        INTEGER nIter0
118        INTEGER nTimeSteps        INTEGER nTimeSteps
119          INTEGER nEndIter
120        INTEGER numStepsPerPickup        INTEGER numStepsPerPickup
121        INTEGER writeStatePrec        INTEGER writeStatePrec
122        INTEGER writeBinaryPrec        INTEGER writeBinaryPrec
123        INTEGER readBinaryPrec        INTEGER readBinaryPrec
124        INTEGER nCheckLev        INTEGER nCheckLev
125          INTEGER nShap
126    
127  C--   COMMON /PARM_L/ Logical valued parameters used by the model.  C--   COMMON /PARM_L/ Logical valued parameters used by the model.
128  C     usingCartesianGrid - If TRUE grid generation will be in a cartesian  C     usingCartesianGrid - If TRUE grid generation will be in a cartesian
129  C                          coordinate frame.  C                          coordinate frame.
130  C     usingSphericalPolarGrid - If TRUE grid generation will be in a  C     usingSphericalPolarGrid - If TRUE grid generation will be in a
131  C                               spherical polar frame.  C                               spherical polar frame.
132    C     no_slip_sides - Impose "no-slip" at lateral boundaries.
133    C     no_slip_bottom- Impose "no-slip" at bottom boundary.
134  C     momViscosity  - Flag which turns momentum friction terms on and off.  C     momViscosity  - Flag which turns momentum friction terms on and off.
135  C     momAdvection  - Flag which turns advection of momentum on and off.  C     momAdvection  - Flag which turns advection of momentum on and off.
136  C     momForcing    - Flag which turns external forcing of momentum on  C     momForcing    - Flag which turns external forcing of momentum on
# Line 136  C     useConstantF  - Coriolis parameter Line 161  C     useConstantF  - Coriolis parameter
161  C     useBetaPlaneF - Coriolis parameter set to f0 + beta.y  C     useBetaPlaneF - Coriolis parameter set to f0 + beta.y
162  C     useSphereF    - Coriolis parameter set to 2.omega.sin(phi)  C     useSphereF    - Coriolis parameter set to 2.omega.sin(phi)
163  C     implicitDiffusion - Turns implicit vertical diffusion on  C     implicitDiffusion - Turns implicit vertical diffusion on
164    C     implicitViscosity - Turns implicit vertical viscosity on
165  C     doThetaClimRelax - Set true if relaxation to temperature  C     doThetaClimRelax - Set true if relaxation to temperature
166  C                        climatology is required.  C                        climatology is required.
167  C     doSaltClimRelax  - Set true if relaxation to salinity  C     doSaltClimRelax  - Set true if relaxation to salinity
# Line 145  C     usingPCoords     - Set to indicate Line 171  C     usingPCoords     - Set to indicate
171  C                        coords.  C                        coords.
172  C     usingZCoords     - Set to indicate that we are working in height  C     usingZCoords     - Set to indicate that we are working in height
173  C                        coords.  C                        coords.
174    C     openBoundaries - Using open-boundaries
175    C     nonHydrostatic - Using non-hydrostatic terms
176    C     globalFiles    - Selects between "global" and "tiled" files
177    C     allowFreezing  - Allows water to freeze and form ice
178        COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid,        COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid,
179       & momViscosity, momAdvection, momForcing, useCoriolis, momPressureForcing,       & no_slip_sides,no_slip_bottom,
180       & tempDiffusion, tempAdvection, tempForcing,       & momViscosity, momAdvection, momForcing, useCoriolis,
181         & momPressureForcing,tempDiffusion, tempAdvection, tempForcing,
182       & saltDiffusion, saltAdvection, saltForcing,       & saltDiffusion, saltAdvection, saltForcing,
183       & implicitFreeSurface, rigidLid,       & implicitFreeSurface, rigidLid,
184       & momStepping, tempStepping, saltStepping,       & momStepping, tempStepping, saltStepping,
185       & metricTerms, usingSphericalPolarMTerms,       & metricTerms, usingSphericalPolarMTerms,
186       & useConstantF, useBetaPlaneF, useSphereF,       & useConstantF, useBetaPlaneF, useSphereF,
187       & implicitDiffusion, doThetaClimRelax, doSaltClimRelax,       & implicitDiffusion, implicitViscosity,
188       & periodicExternalForcing, usingPCoords, usingZCoords       & doThetaClimRelax, doSaltClimRelax,
189         & periodicExternalForcing, usingPCoords, usingZCoords,
190         & openBoundaries, nonHydrostatic, globalFiles,
191         & allowFreezing
192        LOGICAL usingCartesianGrid        LOGICAL usingCartesianGrid
193        LOGICAL usingSphericalPolarGrid        LOGICAL usingSphericalPolarGrid
194        LOGICAL usingSphericalPolarMTerms        LOGICAL usingSphericalPolarMTerms
195          LOGICAL no_slip_sides
196          LOGICAL no_slip_bottom
197        LOGICAL momViscosity        LOGICAL momViscosity
198        LOGICAL momAdvection        LOGICAL momAdvection
199        LOGICAL momForcing        LOGICAL momForcing
# Line 179  C                        coords. Line 215  C                        coords.
215        LOGICAL useBetaPlaneF        LOGICAL useBetaPlaneF
216        LOGICAL useSphereF        LOGICAL useSphereF
217        LOGICAL implicitDiffusion        LOGICAL implicitDiffusion
218          LOGICAL implicitViscosity
219        LOGICAL doThetaClimRelax        LOGICAL doThetaClimRelax
220        LOGICAL doSaltClimRelax        LOGICAL doSaltClimRelax
221        LOGICAL periodicExternalForcing        LOGICAL periodicExternalForcing
222        LOGICAL usingPCoords        LOGICAL usingPCoords
223        LOGICAL usingZCoords        LOGICAL usingZCoords
224          LOGICAL openBoundaries
225          LOGICAL nonHydrostatic
226          LOGICAL globalFiles
227          LOGICAL allowFreezing
228    
229  C--   COMMON /PARM_R/ "Real" valued parameters used by the model.  C--   COMMON /PARM_R/ "Real" valued parameters used by the model.
230  C     cg2dTargetResidual  C     cg2dTargetResidual
231  C               - Target residual for cg2d solver.  C               - Target residual for cg2d solver.
232    C     cg3dTargetResidual
233    C               - Target residual for cg3d solver.
234  C     cg2dpcOffDFac - Averaging weight for preconditioner off-diagonal.  C     cg2dpcOffDFac - Averaging weight for preconditioner off-diagonal.
235  C     Note. 20th May 1998  C     Note. 20th May 1998
236  C           I made a weird discovery! In the model paper we argue  C           I made a weird discovery! In the model paper we argue
# Line 208  C     delR      - Vertical grid spacing Line 251  C     delR      - Vertical grid spacing
251  C     delX      - Separation between cell faces (m) or (deg), depending  C     delX      - Separation between cell faces (m) or (deg), depending
252  C     delY        on input flags.  C     delY        on input flags.
253  C     gravity   - Accel. due to gravity ( m/s^2 )  C     gravity   - Accel. due to gravity ( m/s^2 )
254    C     recip_gravity and its inverse
255  C     gBaro     - Accel. due to gravity used in barotropic equation ( m/s^2 )  C     gBaro     - Accel. due to gravity used in barotropic equation ( m/s^2 )
256  C     ronil     - Reference density  C     ronil     - Reference density
257  C     rhoConst  - Vertically constant reference density  C     rhoConst  - Vertically constant reference density
# Line 288  C     pfFacMom      - Momentum pressure Line 332  C     pfFacMom      - Momentum pressure
332  C     cfFacMom      - Coriolis term tracer parameter  C     cfFacMom      - Coriolis term tracer parameter
333  C     foFacMom      - Momentum forcing tracer parameter  C     foFacMom      - Momentum forcing tracer parameter
334  C     mtFacMom      - Metric terms tracer parameter  C     mtFacMom      - Metric terms tracer parameter
335    C     cosPower      - Power of cosine of latitude to multiply viscosity
336  C     cAdjFreq      - Frequency of convective adjustment  C     cAdjFreq      - Frequency of convective adjustment
337  C  C
338  C     taveFreq      - Frequency with which time-averaged model state is written to  C     taveFreq      - Frequency with which time-averaged model state is written to
# Line 301  C     externForcingCycle - Is the repeat Line 346  C     externForcingCycle - Is the repeat
346  C                          (note: externForcingCycle must be an integer  C                          (note: externForcingCycle must be an integer
347  C                           number times externForcingPeriod)  C                           number times externForcingPeriod)
348  C     horiVertRatio      - Ratio on units in vertical to units in horizontal.  C     horiVertRatio      - Ratio on units in vertical to units in horizontal.
349  C                          ( 1 if horiz in m and vertical in m ).  C     recip_horiVertRatio  ( 1 if horiz in m and vertical in m ).
350  C                          ( g*rho if horiz in m and vertical in Pa ).  C                          ( g*rho if horiz in m and vertical in Pa ).
351    C     latFFTFiltLo       - Low latitude for FFT filtering of latitude
352    C                          circles ( see filter*.F )
353        COMMON /PARM_R/ cg2dTargetResidual, cg2dpcOffDFac,        COMMON /PARM_R/ cg2dTargetResidual, cg2dpcOffDFac,
354         & cg3dTargetResidual,
355       & delP, delZ, delR, delX, delY,       & delP, delZ, delR, delX, delY,
356       & deltaT,deltaTmom, deltaTtracer, deltaTClock,abeps, startTime, phiMin,       & deltaT,deltaTmom, deltaTtracer, deltaTClock,abeps, startTime,
357       & thetaMin, rSphere, recip_RSphere, f0, fCori, beta,       & phiMin, thetaMin, rSphere, recip_RSphere, f0, fCori, beta,
358       & viscAh,  viscAz,  viscA4,  viscAr,       & viscAh,  viscAz,  viscA4,  viscAr,
359       & diffKhT, diffKzT, diffK4T, diffKrT,       & diffKhT, diffKzT, diffK4T, diffKrT,
360       & diffKhS, diffKzS, diffK4S, diffKrS,       & diffKhS, diffKzS, diffK4S, diffKrS,
361       & delT, tauCD, rCD, freeSurfFac, hFacMin, hFacMinDz,       & delT, tauCD, rCD, freeSurfFac, hFacMin, hFacMinDz,
362       & GMmaxslope,GMlength,GMalpha,GMdepth,GMkbackground,GMmaxval,       & GMmaxslope,GMlength,GMalpha,GMdepth,GMkbackground,GMmaxval,
363       & gravity, gBaro, rhonil, recip_rhonil,       & gravity, recip_Gravity, gBaro, rhonil, recip_rhonil,
364       & recip_rhoConst, rhoConst, tRef, sRef,       & recip_rhoConst, rhoConst, tRef, sRef,
365       & endTime, chkPtFreq, pchkPtFreq, dumpFreq, taveFreq,       & endTime, chkPtFreq, pchkPtFreq, dumpFreq, taveFreq,
366       & afFacMom, vfFacMom, pfFacMom, cfFacMom, foFacMom, mtFacMom,       & afFacMom, vfFacMom, pfFacMom, cfFacMom, foFacMom, mtFacMom,
367         & cosPower,
368       & cAdjFreq, omega, tauThetaClimRelax, lambdaThetaClimRelax,       & cAdjFreq, omega, tauThetaClimRelax, lambdaThetaClimRelax,
369       & tauSaltClimRelax, lambdaSaltClimRelax,       & tauSaltClimRelax, lambdaSaltClimRelax,
370       & externForcingCycle, externForcingPeriod,       & externForcingCycle, externForcingPeriod,
371       & viscAp, diffKpT, diffKpS, hFacMinDr, hFacMinDp,       & viscAp, diffKpT, diffKpS, hFacMinDr, hFacMinDp,
372       & theta_S, specVol_S, horiVertRatio       & theta_S, specVol_S, horiVertRatio, recip_horiVertRatio,
373         & latFFTFiltLo, ivdc_kappa
374    
375        _RL cg2dTargetResidual        _RL cg2dTargetResidual
376          _RL cg3dTargetResidual
377        _RL cg2dpcOffDFac        _RL cg2dpcOffDFac
378        _RL delZ(Nr)        _RL delZ(Nr)
379        _RL delP(Nr)        _RL delP(Nr)
# Line 370  C                          ( g*rho if ho Line 421  C                          ( g*rho if ho
421        _RL GMkbackground        _RL GMkbackground
422        _RL GMmaxval        _RL GMmaxval
423        _RL gravity        _RL gravity
424          _RL recip_gravity
425        _RL gBaro        _RL gBaro
426        _RL rhonil        _RL rhonil
427        _RL recip_rhonil        _RL recip_rhonil
# Line 392  C                          ( g*rho if ho Line 444  C                          ( g*rho if ho
444        _RL cfFacMom        _RL cfFacMom
445        _RL foFacMom        _RL foFacMom
446        _RL mTFacMom        _RL mTFacMom
447          _RL cosPower
448        _RL cAdjFreq        _RL cAdjFreq
449        _RL omega        _RL omega
450        _RL tauThetaClimRelax        _RL tauThetaClimRelax
# Line 401  C                          ( g*rho if ho Line 454  C                          ( g*rho if ho
454        _RL externForcingCycle        _RL externForcingCycle
455        _RL externForcingPeriod        _RL externForcingPeriod
456        _RL horiVertRatio        _RL horiVertRatio
457          _RL recip_horiVertRatio
458          _RL latFFTFiltLo
459          _RL ivdc_kappa
460    
461        COMMON /PARM_A/ HeatCapacity_Cp,        COMMON /PARM_A/ HeatCapacity_Cp,recip_Cp,
462       &                Lamba_theta       &                Lamba_theta
463        _RL HeatCapacity_Cp        _RL HeatCapacity_Cp
464        _RL Lamba_theta        _RL Lamba_theta
465          _RL recip_Cp
466    
467  C Equation of State (polynomial coeffients)  C Equation of State (polynomial coeffients)
468        COMMON /PARM_EOS_NL/ eosC,eosSig0,eosRefT,eosRefS        COMMON /PARM_EOS_NL/ eosC,eosSig0,eosRefT,eosRefS
# Line 418  C     sBeta     - Linear EOS haline cont Line 475  C     sBeta     - Linear EOS haline cont
475        _RL sBeta        _RL sBeta
476        character*(6) eosType        character*(6) eosType
477    
478    C These are input arrays (of integers) that contain the *absolute*
479    C computational index of an open-boundary (OB) point.
480    C A zero (0) element means there is no corresponding OB in that column/row.
481    C The computational coordinate refers to "tracer" cells.
482    C For a northern/southern OB, the OB V point is to the south/north.
483    C For an eastern/western OB, the OB U point is to the west/east.
484    C eg.
485    C     OB_Jnorth(3)=34  means that:
486    C          T( 3 ,34) is a an OB point
487    C          U(3:4,34) is a an OB point
488    C          V( 4 ,34) is a an OB point
489    C while
490    C     OB_Jsouth(3)=1  means that:
491    C          T( 3 ,1) is a an OB point
492    C          U(3:4,1) is a an OB point
493    C          V( 4 ,2) is a an OB point
494    C
495    C For convenience, negative values for Jnorth/Ieast refer to
496    C points relative to the Northern/Eastern edges of the model
497    C eg. OB_Jnorth(3)=-1  means that the point (3,Ny-1) is a northern O-B.
498    C
499          COMMON /PARM_OB/
500         & OB_Jnorth,OB_Jsouth,OB_Ieast,OB_Iwest
501          INTEGER OB_Jnorth(Nx)
502          INTEGER OB_Jsouth(Nx)
503          INTEGER OB_Ieast(Ny)
504          INTEGER OB_Iwest(Ny)

Legend:
Removed from v.1.30  
changed lines
  Added in v.1.41

  ViewVC Help
Powered by ViewVC 1.1.22