/[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.28 by cnh, Sat Sep 5 17:52:13 1998 UTC revision 1.45.2.6 by adcroft, Tue Jan 30 21:02:58 2001 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     surfQswfile     - File containing surface shortwave radiation
60    C     EmPmRfile       - File containing surface fresh water flux
61  C     buoyancyRelation - Flag used to indicate which relation to use to  C     buoyancyRelation - Flag used to indicate which relation to use to
62  C                        get buoyancy.  C                        get buoyancy.
63        COMMON /PARM_C/ checkPtSuff,        COMMON /PARM_C/ checkPtSuff,
64       &                bathyFile, hydrogThetaFile, hydrogSaltFile,       &                bathyFile, hydrogThetaFile, hydrogSaltFile,
65       &                zonalWindFile, meridWindFile, thetaClimFile,       &                zonalWindFile, meridWindFile, thetaClimFile,
66       &                saltClimFile, buoyancyRelation       &                saltClimFile, buoyancyRelation,
67         &                EmPmRfile, surfQfile, surfQswfile,
68         &                uVelInitFile, vVelInitFile, pSurfInitFile
69        CHARACTER*(5) checkPtSuff(maxNoChkptLev)        CHARACTER*(5) checkPtSuff(maxNoChkptLev)
70        CHARACTER*(MAX_LEN_FNAM) bathyFile        CHARACTER*(MAX_LEN_FNAM) bathyFile
71        CHARACTER*(MAX_LEN_FNAM) hydrogThetaFile        CHARACTER*(MAX_LEN_FNAM) hydrogThetaFile
# Line 69  C                        get buoyancy. Line 74  C                        get buoyancy.
74        CHARACTER*(MAX_LEN_FNAM) meridWindFile        CHARACTER*(MAX_LEN_FNAM) meridWindFile
75        CHARACTER*(MAX_LEN_FNAM) thetaClimFile        CHARACTER*(MAX_LEN_FNAM) thetaClimFile
76        CHARACTER*(MAX_LEN_FNAM) saltClimFile        CHARACTER*(MAX_LEN_FNAM) saltClimFile
77          CHARACTER*(MAX_LEN_FNAM) surfQfile
78          CHARACTER*(MAX_LEN_FNAM) surfQswfile
79          CHARACTER*(MAX_LEN_FNAM) EmPmRfile
80        CHARACTER*(MAX_LEN_FNAM) buoyancyRelation        CHARACTER*(MAX_LEN_FNAM) buoyancyRelation
81          CHARACTER*(MAX_LEN_FNAM) uVelInitFile
82          CHARACTER*(MAX_LEN_FNAM) vVelInitFile
83          CHARACTER*(MAX_LEN_FNAM) pSurfInitFile
84    
85  C--   COMMON /PARM_I/ Integer valued parameters used by the model.  C--   COMMON /PARM_I/ Integer valued parameters used by the model.
86  C     cg2dMaxIters        - Maximum number of iterations in the  C     cg2dMaxIters        - Maximum number of iterations in the
87  C                           two-dimensional con. grad solver.  C                           two-dimensional con. grad solver.
88  C     cg2dChkResFreq      - Frequency with which to check residual  C     cg2dChkResFreq      - Frequency with which to check residual
89  C                           in con. grad solver.  C                           in con. grad solver.
90    C     cg3dMaxIters        - Maximum number of iterations in the
91    C                           three-dimensional con. grad solver.
92    C     cg3dChkResFreq      - Frequency with which to check residual
93    C                           in con. grad solver.
94  C     nIter0              - Start time-step number of for this run  C     nIter0              - Start time-step number of for this run
95  C     nTimeSteps          - Number of timesteps to execute  C     nTimeSteps          - Number of timesteps to execute
96  C     numStepsPerPickup   - For offline setup. Frequency of pickup  C     numStepsPerPickup   - For offline setup. Frequency of pickup
# Line 84  C     writeStatePrec      - Precision us Line 99  C     writeStatePrec      - Precision us
99  C     writeBinaryPrec     - Precision used for writing binary files  C     writeBinaryPrec     - Precision used for writing binary files
100  C     readBinaryPrec      - Precision used for reading binary files  C     readBinaryPrec      - Precision used for reading binary files
101  C     nCheckLev           - Holds current checkpoint level  C     nCheckLev           - Holds current checkpoint level
102    C     nShap               - "Order" of shapiro filter to apply to
103    C                           model prognositic fields.
104    C                           nShap == 1 => del2
105    C                           nShap == 2 => del4
106    C                           nShap == 3 => del6
107    C                           etc...
108    
109        COMMON /PARM_I/        COMMON /PARM_I/
110       &        cg2dMaxIters,       &        cg2dMaxIters,
111       &        cg2dChkResFreq,       &        cg2dChkResFreq,
112       &        nIter0, nTimeSteps,       &        cg3dMaxIters,
113         &        cg3dChkResFreq,
114         &        nIter0, nTimeSteps, nEndIter,
115       &        numStepsPerPickup,       &        numStepsPerPickup,
116       &        writeStatePrec, nCheckLev,       &        writeStatePrec, nCheckLev,
117       &        writeBinaryPrec, readBinaryPrec       &        writeBinaryPrec, readBinaryPrec,
118         &        nShap, zonal_filt_sinpow, zonal_filt_cospow
119        INTEGER cg2dMaxIters        INTEGER cg2dMaxIters
120        INTEGER cg2dChkResFreq        INTEGER cg2dChkResFreq
121          INTEGER cg3dMaxIters
122          INTEGER cg3dChkResFreq
123        INTEGER nIter0        INTEGER nIter0
124        INTEGER nTimeSteps        INTEGER nTimeSteps
125          INTEGER nEndIter
126        INTEGER numStepsPerPickup        INTEGER numStepsPerPickup
127        INTEGER writeStatePrec        INTEGER writeStatePrec
128        INTEGER writeBinaryPrec        INTEGER writeBinaryPrec
129        INTEGER readBinaryPrec        INTEGER readBinaryPrec
130        INTEGER nCheckLev        INTEGER nCheckLev
131          INTEGER nShap
132          INTEGER zonal_filt_sinpow
133          INTEGER zonal_filt_cospow
134    
135  C--   COMMON /PARM_L/ Logical valued parameters used by the model.  C--   COMMON /PARM_L/ Logical valued parameters used by the model.
136  C     usingCartesianGrid - If TRUE grid generation will be in a cartesian  C     usingCartesianGrid - If TRUE grid generation will be in a cartesian
137  C                          coordinate frame.  C                          coordinate frame.
138  C     usingSphericalPolarGrid - If TRUE grid generation will be in a  C     usingSphericalPolarGrid - If TRUE grid generation will be in a
139  C                               spherical polar frame.  C                               spherical polar frame.
140    C     no_slip_sides - Impose "no-slip" at lateral boundaries.
141    C     no_slip_bottom- Impose "no-slip" at bottom boundary.
142    C     staggerTimeStep - enable a Stagger time stepping T,S Rho then U,V
143  C     momViscosity  - Flag which turns momentum friction terms on and off.  C     momViscosity  - Flag which turns momentum friction terms on and off.
144  C     momAdvection  - Flag which turns advection of momentum on and off.  C     momAdvection  - Flag which turns advection of momentum on and off.
145  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 170  C     useConstantF  - Coriolis parameter
170  C     useBetaPlaneF - Coriolis parameter set to f0 + beta.y  C     useBetaPlaneF - Coriolis parameter set to f0 + beta.y
171  C     useSphereF    - Coriolis parameter set to 2.omega.sin(phi)  C     useSphereF    - Coriolis parameter set to 2.omega.sin(phi)
172  C     implicitDiffusion - Turns implicit vertical diffusion on  C     implicitDiffusion - Turns implicit vertical diffusion on
173    C     implicitViscosity - Turns implicit vertical viscosity on
174  C     doThetaClimRelax - Set true if relaxation to temperature  C     doThetaClimRelax - Set true if relaxation to temperature
175  C                        climatology is required.  C                        climatology is required.
176  C     doSaltClimRelax  - Set true if relaxation to salinity  C     doSaltClimRelax  - Set true if relaxation to salinity
177  C                        climatology is required.  C                        climatology is required.
178  C     periodicExternalForcing - Set true if forcing is time-dependant  C     periodicExternalForcing - Set true if forcing is time-dependant
179    C     usingPCoords     - Set to indicate that we are working in pressure
180    C                        coords.
181    C     usingZCoords     - Set to indicate that we are working in height
182    C                        coords.
183    C     nonHydrostatic - Using non-hydrostatic terms
184    C     globalFiles    - Selects between "global" and "tiled" files
185    C     allowFreezing  - Allows water to freeze and form ice
186    C     groundAtK1  - put the surface(k=1) at the Lower Boundary (=ground)
187        COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid,        COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid,
188       & momViscosity, momAdvection, momForcing, useCoriolis, momPressureForcing,       & no_slip_sides,no_slip_bottom,
189       & tempDiffusion, tempAdvection, tempForcing,       & staggerTimeStep,
190         & momViscosity, momAdvection, momForcing, useCoriolis,
191         & momPressureForcing,tempDiffusion, tempAdvection, tempForcing,
192       & saltDiffusion, saltAdvection, saltForcing,       & saltDiffusion, saltAdvection, saltForcing,
193       & implicitFreeSurface, rigidLid,       & implicitFreeSurface, rigidLid,
194       & momStepping, tempStepping, saltStepping,       & momStepping, tempStepping, saltStepping,
195       & metricTerms, usingSphericalPolarMTerms,       & metricTerms, usingSphericalPolarMTerms,
196       & useConstantF, useBetaPlaneF, useSphereF,       & useConstantF, useBetaPlaneF, useSphereF,
197       & implicitDiffusion, doThetaClimRelax, doSaltClimRelax,       & implicitDiffusion, implicitViscosity,
198       & periodicExternalForcing       & doThetaClimRelax, doSaltClimRelax,
199         & periodicExternalForcing, usingPCoords, usingZCoords,
200         & nonHydrostatic, globalFiles,
201         & allowFreezing, groundAtK1
202        LOGICAL usingCartesianGrid        LOGICAL usingCartesianGrid
203        LOGICAL usingSphericalPolarGrid        LOGICAL usingSphericalPolarGrid
204        LOGICAL usingSphericalPolarMTerms        LOGICAL usingSphericalPolarMTerms
205          LOGICAL no_slip_sides
206          LOGICAL no_slip_bottom
207          LOGICAL staggerTimeStep
208        LOGICAL momViscosity        LOGICAL momViscosity
209        LOGICAL momAdvection        LOGICAL momAdvection
210        LOGICAL momForcing        LOGICAL momForcing
# Line 175  C     periodicExternalForcing - Set true Line 226  C     periodicExternalForcing - Set true
226        LOGICAL useBetaPlaneF        LOGICAL useBetaPlaneF
227        LOGICAL useSphereF        LOGICAL useSphereF
228        LOGICAL implicitDiffusion        LOGICAL implicitDiffusion
229          LOGICAL implicitViscosity
230        LOGICAL doThetaClimRelax        LOGICAL doThetaClimRelax
231        LOGICAL doSaltClimRelax        LOGICAL doSaltClimRelax
232        LOGICAL periodicExternalForcing        LOGICAL periodicExternalForcing
233          LOGICAL usingPCoords
234          LOGICAL usingZCoords
235          LOGICAL nonHydrostatic
236          LOGICAL globalFiles
237          LOGICAL allowFreezing
238          LOGICAL groundAtK1
239    
240  C--   COMMON /PARM_R/ "Real" valued parameters used by the model.  C--   COMMON /PARM_R/ "Real" valued parameters used by the model.
241  C     cg2dTargetResidual  C     cg2dTargetResidual
242  C               - Target residual for cg2d solver.  C               - Target residual for cg2d solver.
243    C     cg3dTargetResidual
244    C               - Target residual for cg3d solver.
245  C     cg2dpcOffDFac - Averaging weight for preconditioner off-diagonal.  C     cg2dpcOffDFac - Averaging weight for preconditioner off-diagonal.
246  C     Note. 20th May 1998  C     Note. 20th May 1998
247  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 202  C     delR      - Vertical grid spacing Line 262  C     delR      - Vertical grid spacing
262  C     delX      - Separation between cell faces (m) or (deg), depending  C     delX      - Separation between cell faces (m) or (deg), depending
263  C     delY        on input flags.  C     delY        on input flags.
264  C     gravity   - Accel. due to gravity ( m/s^2 )  C     gravity   - Accel. due to gravity ( m/s^2 )
265    C     recip_gravity and its inverse
266  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 )
267  C     ronil     - Reference density  C     ronil     - Reference density
268  C     rhoConst  - Vertically constant reference density  C     rhoConst  - Vertically constant reference density
# Line 264  C     hFacMinDp    - Minimum dimesional Line 325  C     hFacMinDp    - Minimum dimesional
325  C     hFacMinDr    - Minimum dimesional size of a cell (affects hFacC etc..., units of r)  C     hFacMinDr    - Minimum dimesional size of a cell (affects hFacC etc..., units of r)
326  C     tauCD        - CD scheme coupling timescale ( 1/s )  C     tauCD        - CD scheme coupling timescale ( 1/s )
327  C     rCD          - CD scheme normalised coupling parameter ( 0-1 )  C     rCD          - CD scheme normalised coupling parameter ( 0-1 )
 C     GMmaxslope    - max. slope allowed in GM/Redi tensor  
 C     GMlength      - Length to use in Visbeck et al. formula for K (m)  
 C     GMalpha       - alpha to use in Visbeck et al. formula for K  
 C     GMdepth       - Depth over which to integrate Richardson # (Visbeck et al.)  
 C     GMkbackground - background value of GM/Redi diffusion coefficient ( m^2/s )  
 C     GMmaxval      - max. value of KapGM allowed in GM/Redi scheme ( m^2/s )  
328  C     startTime     - Starting time for this integration ( s ).  C     startTime     - Starting time for this integration ( s ).
329  C     endTime       - Ending time for this integration ( s ).  C     endTime       - Ending time for this integration ( s ).
330  C     chkPtFreq     - Frequency of rolling check pointing ( s ).  C     chkPtFreq     - Frequency of rolling check pointing ( s ).
# Line 282  C     pfFacMom      - Momentum pressure Line 337  C     pfFacMom      - Momentum pressure
337  C     cfFacMom      - Coriolis term tracer parameter  C     cfFacMom      - Coriolis term tracer parameter
338  C     foFacMom      - Momentum forcing tracer parameter  C     foFacMom      - Momentum forcing tracer parameter
339  C     mtFacMom      - Metric terms tracer parameter  C     mtFacMom      - Metric terms tracer parameter
340    C     cosPower      - Power of cosine of latitude to multiply viscosity
341  C     cAdjFreq      - Frequency of convective adjustment  C     cAdjFreq      - Frequency of convective adjustment
342  C  C
343  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 294  C     externForcingPeriod - Is the perio Line 350  C     externForcingPeriod - Is the perio
350  C     externForcingCycle - Is the repeat time of the forcing (eg. 1 year)  C     externForcingCycle - Is the repeat time of the forcing (eg. 1 year)
351  C                          (note: externForcingCycle must be an integer  C                          (note: externForcingCycle must be an integer
352  C                           number times externForcingPeriod)  C                           number times externForcingPeriod)
353    C     horiVertRatio      - Ratio on units in vertical to units in horizontal.
354    C     recip_horiVertRatio  ( 1 if horiz in m and vertical in m ).
355    C                          ( g*rho if horiz in m and vertical in Pa ).
356    C     latFFTFiltLo       - Low latitude for FFT filtering of latitude
357    C                          circles ( see filter*.F )
358    C     Ro_SeaLevel        - standard position of Sea-Level in "R" coordinate, used as
359    C                          starting value (k=1) for vertical coordinate (rf(1)=Ro_SeaLevel)
360    C     bottomDragLinear   - Drag coefficient built in to core dynamics
361    C         "     Quadratic  ( linear: 1/s, quadratic: 1/m )
362        COMMON /PARM_R/ cg2dTargetResidual, cg2dpcOffDFac,        COMMON /PARM_R/ cg2dTargetResidual, cg2dpcOffDFac,
363         & cg3dTargetResidual,
364       & delP, delZ, delR, delX, delY,       & delP, delZ, delR, delX, delY,
365       & deltaT,deltaTmom, deltaTtracer, deltaTClock,abeps, startTime, phiMin,       & deltaT,deltaTmom, deltaTtracer, deltaTClock,abeps, startTime,
366       & thetaMin, rSphere, recip_RSphere, f0, fCori, beta,       & phiMin, thetaMin, rSphere, recip_RSphere, f0, fCori, beta,
367       & viscAh,  viscAz,  viscA4,  viscAr,       & viscAh,  viscAz,  viscA4,  viscAr,
368       & diffKhT, diffKzT, diffK4T, diffKrT,       & diffKhT, diffKzT, diffK4T, diffKrT,
369       & diffKhS, diffKzS, diffK4S, diffKrS,       & diffKhS, diffKzS, diffK4S, diffKrS,
370       & delT, tauCD, rCD, freeSurfFac, hFacMin, hFacMinDz,       & delT, tauCD, rCD, freeSurfFac, hFacMin, hFacMinDz,
371       & GMmaxslope,GMlength,GMalpha,GMdepth,GMkbackground,GMmaxval,       & gravity, recip_Gravity, gBaro, rhonil, recip_rhonil,
      & gravity, gBaro, rhonil, recip_rhonil,  
372       & recip_rhoConst, rhoConst, tRef, sRef,       & recip_rhoConst, rhoConst, tRef, sRef,
373       & endTime, chkPtFreq, pchkPtFreq, dumpFreq, taveFreq,       & endTime, chkPtFreq, pchkPtFreq, dumpFreq, taveFreq,
374       & afFacMom, vfFacMom, pfFacMom, cfFacMom, foFacMom, mtFacMom,       & afFacMom, vfFacMom, pfFacMom, cfFacMom, foFacMom, mtFacMom,
375         & cosPower,
376       & cAdjFreq, omega, tauThetaClimRelax, lambdaThetaClimRelax,       & cAdjFreq, omega, tauThetaClimRelax, lambdaThetaClimRelax,
377       & tauSaltClimRelax, lambdaSaltClimRelax,       & tauSaltClimRelax, lambdaSaltClimRelax,
378       & externForcingCycle, externForcingPeriod,       & externForcingCycle, externForcingPeriod,
379       & viscAp, diffKpT, diffKpS, hFacMinDr, hFacMinDp,       & viscAp, diffKpT, diffKpS, hFacMinDr, hFacMinDp,
380       & theta_S, specVol_S       & theta_S, specVol_S, horiVertRatio, recip_horiVertRatio,
381         & latFFTFiltLo, ivdc_kappa, Ro_SeaLevel, zonal_filt_lat,
382         & bottomDragLinear,bottomDragQuadratic
383    
384        _RL cg2dTargetResidual        _RL cg2dTargetResidual
385          _RL cg3dTargetResidual
386        _RL cg2dpcOffDFac        _RL cg2dpcOffDFac
387        _RL delZ(Nr)        _RL delZ(Nr)
388        _RL delP(Nr)        _RL delP(Nr)
# Line 354  C                           number times Line 423  C                           number times
423        _RL delt        _RL delt
424        _RL tauCD        _RL tauCD
425        _RL rCD        _RL rCD
       _RL GMmaxslope  
       _RL GMlength  
       _RL GMalpha  
       _RL GMdepth  
       _RL GMkbackground  
       _RL GMmaxval  
426        _RL gravity        _RL gravity
427          _RL recip_gravity
428        _RL gBaro        _RL gBaro
429        _RL rhonil        _RL rhonil
430        _RL recip_rhonil        _RL recip_rhonil
# Line 383  C                           number times Line 447  C                           number times
447        _RL cfFacMom        _RL cfFacMom
448        _RL foFacMom        _RL foFacMom
449        _RL mTFacMom        _RL mTFacMom
450          _RL cosPower
451        _RL cAdjFreq        _RL cAdjFreq
452        _RL omega        _RL omega
453        _RL tauThetaClimRelax        _RL tauThetaClimRelax
# Line 391  C                           number times Line 456  C                           number times
456        _RL lambdaSaltClimRelax        _RL lambdaSaltClimRelax
457        _RL externForcingCycle        _RL externForcingCycle
458        _RL externForcingPeriod        _RL externForcingPeriod
459          _RL horiVertRatio
460          _RL recip_horiVertRatio
461          _RL latFFTFiltLo
462          _RL ivdc_kappa
463          _RL Ro_SeaLevel
464          _RL zonal_filt_lat
465          _RL bottomDragLinear
466          _RL bottomDragQuadratic
467    
468        COMMON /PARM_A/ HeatCapacity_Cp,        COMMON /PARM_A/ HeatCapacity_Cp,recip_Cp,
469       &                Lamba_theta       &                Lamba_theta
470        _RL HeatCapacity_Cp        _RL HeatCapacity_Cp
471        _RL Lamba_theta        _RL Lamba_theta
472          _RL recip_Cp
473    
474  C Equation of State (polynomial coeffients)  C Equation of State (polynomial coeffients)
475        COMMON /PARM_EOS_NL/ eosC,eosSig0,eosRefT,eosRefS        COMMON /PARM_EOS_NL/ eosC,eosSig0,eosRefT,eosRefS
# Line 408  C     sBeta     - Linear EOS haline cont Line 482  C     sBeta     - Linear EOS haline cont
482        _RL sBeta        _RL sBeta
483        character*(6) eosType        character*(6) eosType
484    
485    C Logical flags for selecting packages
486          LOGICAL useKPP
487          LOGICAL useGMRedi
488          LOGICAL useOBCS
489          LOGICAL useECCO
490          COMMON /PARM_PACKAGES/
491         &        useKPP, useGMRedi, useOBCS, useECCO

Legend:
Removed from v.1.28  
changed lines
  Added in v.1.45.2.6

  ViewVC Help
Powered by ViewVC 1.1.22