/[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.203 by jmc, Thu Aug 23 19:07:32 2007 UTC revision 1.210 by dimitri, Thu Dec 20 00:43:45 2007 UTC
# Line 43  C     UNSET_xxx :: Used to indicate vari Line 43  C     UNSET_xxx :: Used to indicate vari
43        INTEGER UNSET_I        INTEGER UNSET_I
44        PARAMETER ( UNSET_I      = 123456789  )        PARAMETER ( UNSET_I      = 123456789  )
45    
 C     Checkpoint data  
       INTEGER maxNoChkptLev  
       PARAMETER ( maxNoChkptLev = 2 )  
   
46  C--   COMMON /PARM_C/ Character valued parameters used by the model.  C--   COMMON /PARM_C/ Character valued parameters used by the model.
47  C     checkPtSuff :: List of checkpoint file suffices  C     buoyancyRelation :: Flag used to indicate which relation to use to
48    C                         get buoyancy.
49    C     eosType         :: choose the equation of state:
50    C                        LINEAR, POLY3, UNESCO, JMD95Z, JMD95P, MDJWF, IDEALGAS
51    C     pickupSuff      :: force to start from pickup files (even if nIter0=0)
52    C                        and read pickup files with this suffix (max 10 Char.)
53    C     mdsioLocalDir   :: read-write tiled file from/to this directory name
54    C                        (+ 4 digits Processor-Rank) instead of current dir.
55  C     tRefFile      :: File containing reference Potential Temperat.  tRef (1.D)  C     tRefFile      :: File containing reference Potential Temperat.  tRef (1.D)
56  C     sRefFile      :: File containing reference salinity/spec.humid. sRef (1.D)  C     sRefFile      :: File containing reference salinity/spec.humid. sRef (1.D)
57  C     rhoRefFile    :: File containing reference density profile rhoRef (1.D)  C     rhoRefFile    :: File containing reference density profile rhoRef (1.D)
# Line 58  C     delXFile      :: File containing X Line 61  C     delXFile      :: File containing X
61  C     delYFile      :: File containing Y-spacing grid definition (1.D array)  C     delYFile      :: File containing Y-spacing grid definition (1.D array)
62  C     horizGridFile :: File containing horizontal-grid definition  C     horizGridFile :: File containing horizontal-grid definition
63  C                        (only when using curvilinear_grid)  C                        (only when using curvilinear_grid)
64  C     bathyFile   :: File containing bathymetry. If not defined bathymetry  C     bathyFile       :: File containing bathymetry. If not defined bathymetry
65  C                   is taken from inline function.  C                        is taken from inline function.
66  C     topoFile    :: File containing the topography of the surface (unit=m)  C     topoFile        :: File containing the topography of the surface (unit=m)
67  C                   (mainly used for the atmosphere = ground height).  C                        (mainly used for the atmosphere = ground height).
68  C     shelfIceFile:: File containing the topography of the shelfice draught  C     shelfIceFile    :: File containing the topography of the shelfice draught
69  C                    (unit=m)  C                        (unit=m)
70  C     hydrogThetaFile :: File containing initial hydrographic data for potential  C     hydrogThetaFile :: File containing initial hydrographic data (3-D)
71  C                       temperature.  C                        for potential temperature.
72  C     hydrogSaltFile  :: File containing initial hydrographic data for salinity.  C     hydrogSaltFile  :: File containing initial hydrographic data (3-D)
73    C                        for salinity.
74  C     diffKrFile      :: File containing 3D specification of vertical diffusivity  C     diffKrFile      :: File containing 3D specification of vertical diffusivity
75  C     zonalWindFile   :: File containing zonal wind data  C     zonalWindFile   :: File containing zonal wind data
76  C     meridWindFile   :: File containing meridional wind data  C     meridWindFile   :: File containing meridional wind data
77  C     thetaClimFile   :: File containing theta climataology used  C     thetaClimFile   :: File containing surface theta climataology used
78  C                       in relaxation term -lambda(theta-theta*)  C                       in relaxation term -lambda(theta-theta*)
79  C     saltClimFile    :: File containing salt climataology used  C     saltClimFile    :: File containing surface salt climataology used
80  C                       in relaxation term -lambda(salt-salt*)  C                       in relaxation term -lambda(salt-salt*)
81  C     surfQfile       :: File containing surface heat flux, excluding SW  C     surfQfile       :: File containing surface heat flux, excluding SW
82  C                        (old version, kept for backward compatibility)  C                        (old version, kept for backward compatibility)
# Line 80  C     surfQnetFile    :: File containing Line 84  C     surfQnetFile    :: File containing
84  C     surfQswFile     :: File containing surface shortwave radiation  C     surfQswFile     :: File containing surface shortwave radiation
85  C     dQdTfile        :: File containing thermal relaxation coefficient  C     dQdTfile        :: File containing thermal relaxation coefficient
86  C     EmPmRfile       :: File containing surface fresh water flux  C     EmPmRfile       :: File containing surface fresh water flux
87    C           NOTE: for backward compatibility EmPmRfile is specified in
88    C                 m/s when using external_fields_load.F.  It is converted
89    C                 to kg/m2/s by multiplying by rhoConstFresh.
90  C     saltFluxFile    :: File containing surface salt flux  C     saltFluxFile    :: File containing surface salt flux
91  C     pLoadFile       :: File containing pressure loading  C     pLoadFile       :: File containing pressure loading
92  C     eddyTauxFile    :: File containing zonal Eddy stress data  C     eddyTauxFile    :: File containing zonal Eddy stress data
93  C     eddyTauyFile    :: File containing meridional Eddy stress data  C     eddyTauyFile    :: File containing meridional Eddy stress data
 C     buoyancyRelation :: Flag used to indicate which relation to use to  
 C                        get buoyancy.  
 C     eosType         :: choose the equation of state:  
 C                        LINEAR, POLY3, UNESCO, JMD95Z, JMD95P, MDJWF, IDEALGAS  
94  C     the_run_name    :: string identifying the name of the model "run"  C     the_run_name    :: string identifying the name of the model "run"
95        COMMON /PARM_C/ checkPtSuff,        COMMON /PARM_C/
96         &                buoyancyRelation, eosType,
97         &                pickupSuff, mdsioLocalDir,
98       &                tRefFile, sRefFile, rhoRefFile,       &                tRefFile, sRefFile, rhoRefFile,
99       &                delRFile, delRcFile,       &                delRFile, delRcFile,
100       &                delXFile, delYFile, horizGridFile,       &                delXFile, delYFile, horizGridFile,
101       &                bathyFile, topoFile, shelfIceFile,       &                bathyFile, topoFile, shelfIceFile,
102       &                hydrogThetaFile, hydrogSaltFile, diffKrFile,       &                hydrogThetaFile, hydrogSaltFile, diffKrFile,
103       &                zonalWindFile, meridWindFile, thetaClimFile,       &                zonalWindFile, meridWindFile, thetaClimFile,
104       &                saltClimFile, buoyancyRelation,       &                saltClimFile,
105       &                EmPmRfile, saltFluxFile,       &                EmPmRfile, saltFluxFile,
106       &                surfQfile, surfQnetFile, surfQswFile,       &                surfQfile, surfQnetFile, surfQswFile,
107       &                lambdaThetaFile, lambdaSaltFile,       &                lambdaThetaFile, lambdaSaltFile,
108       &                uVelInitFile, vVelInitFile, pSurfInitFile,       &                uVelInitFile, vVelInitFile, pSurfInitFile,
109       &                dQdTfile, ploadFile,       &                dQdTfile, ploadFile,
110       &                eddyTauxFile, eddyTauyFile,       &                eddyTauxFile, eddyTauyFile,
      &                eosType, pickupSuff,  
      &                mdsioLocalDir,  
111       &                the_run_name       &                the_run_name
112        CHARACTER*(5) checkPtSuff(maxNoChkptLev)        CHARACTER*(MAX_LEN_FNAM) buoyancyRelation
113          CHARACTER*(6)  eosType
114          CHARACTER*(10) pickupSuff
115          CHARACTER*(MAX_LEN_FNAM) mdsioLocalDir
116        CHARACTER*(MAX_LEN_FNAM) tRefFile        CHARACTER*(MAX_LEN_FNAM) tRefFile
117        CHARACTER*(MAX_LEN_FNAM) sRefFile        CHARACTER*(MAX_LEN_FNAM) sRefFile
118        CHARACTER*(MAX_LEN_FNAM) rhoRefFile        CHARACTER*(MAX_LEN_FNAM) rhoRefFile
# Line 127  C     the_run_name    :: string identify Line 133  C     the_run_name    :: string identify
133        CHARACTER*(MAX_LEN_FNAM) surfQswFile        CHARACTER*(MAX_LEN_FNAM) surfQswFile
134        CHARACTER*(MAX_LEN_FNAM) EmPmRfile        CHARACTER*(MAX_LEN_FNAM) EmPmRfile
135        CHARACTER*(MAX_LEN_FNAM) saltFluxFile        CHARACTER*(MAX_LEN_FNAM) saltFluxFile
       CHARACTER*(MAX_LEN_FNAM) buoyancyRelation  
136        CHARACTER*(MAX_LEN_FNAM) uVelInitFile        CHARACTER*(MAX_LEN_FNAM) uVelInitFile
137        CHARACTER*(MAX_LEN_FNAM) vVelInitFile        CHARACTER*(MAX_LEN_FNAM) vVelInitFile
138        CHARACTER*(MAX_LEN_FNAM) pSurfInitFile        CHARACTER*(MAX_LEN_FNAM) pSurfInitFile
# Line 137  C     the_run_name    :: string identify Line 142  C     the_run_name    :: string identify
142        CHARACTER*(MAX_LEN_FNAM) eddyTauyFile        CHARACTER*(MAX_LEN_FNAM) eddyTauyFile
143        CHARACTER*(MAX_LEN_FNAM) lambdaThetaFile        CHARACTER*(MAX_LEN_FNAM) lambdaThetaFile
144        CHARACTER*(MAX_LEN_FNAM) lambdaSaltFile        CHARACTER*(MAX_LEN_FNAM) lambdaSaltFile
       CHARACTER*(MAX_LEN_FNAM) mdsioLocalDir  
145        CHARACTER*(MAX_LEN_PREC/2) the_run_name        CHARACTER*(MAX_LEN_PREC/2) the_run_name
       CHARACTER*(6) eosType  
       CHARACTER*(10) pickupSuff  
146    
147  C--   COMMON /PARM_I/ Integer valued parameters used by the model.  C--   COMMON /PARM_I/ Integer valued parameters used by the model.
148  C     cg2dMaxIters        :: Maximum number of iterations in the  C     cg2dMaxIters        :: Maximum number of iterations in the
# Line 155  C     cg3dChkResFreq      :: Frequency w Line 157  C     cg3dChkResFreq      :: Frequency w
157  C                           in con. grad solver.  C                           in con. grad solver.
158  C     nIter0              :: Start time-step number of for this run  C     nIter0              :: Start time-step number of for this run
159  C     nTimeSteps          :: Number of timesteps to execute  C     nTimeSteps          :: Number of timesteps to execute
 C     numStepsPerPickup   :: For offline setup. Frequency of pickup  
 C                           of flow fields.  
160  C     writeStatePrec      :: Precision used for writing model state.  C     writeStatePrec      :: Precision used for writing model state.
161  C     writeBinaryPrec     :: Precision used for writing binary files  C     writeBinaryPrec     :: Precision used for writing binary files
162  C     readBinaryPrec      :: Precision used for reading binary files  C     readBinaryPrec      :: Precision used for reading binary files
 C     nCheckLev           :: Holds current checkpoint level  
163  C     nonlinFreeSurf      :: option related to non-linear free surface  C     nonlinFreeSurf      :: option related to non-linear free surface
164  C                           =0 Linear free surface ; >0 Non-linear  C                           =0 Linear free surface ; >0 Non-linear
165  C     select_rStar        :: option related to r* vertical coordinate  C     select_rStar        :: option related to r* vertical coordinate
# Line 182  C     debugLevel          :: debug level Line 181  C     debugLevel          :: debug level
181       &        cg3dMaxIters,       &        cg3dMaxIters,
182       &        cg3dChkResFreq,       &        cg3dChkResFreq,
183       &        nIter0, nTimeSteps, nEndIter,       &        nIter0, nTimeSteps, nEndIter,
184       &        numStepsPerPickup,       &        writeStatePrec,
      &        writeStatePrec, nCheckLev,  
185       &        writeBinaryPrec, readBinaryPrec,       &        writeBinaryPrec, readBinaryPrec,
186       &        nonlinFreeSurf, select_rStar,       &        nonlinFreeSurf, select_rStar,
187       &        momForcingOutAB, tracForcingOutAB,       &        momForcingOutAB, tracForcingOutAB,
# Line 199  C     debugLevel          :: debug level Line 197  C     debugLevel          :: debug level
197        INTEGER nIter0        INTEGER nIter0
198        INTEGER nTimeSteps        INTEGER nTimeSteps
199        INTEGER nEndIter        INTEGER nEndIter
       INTEGER numStepsPerPickup  
200        INTEGER writeStatePrec        INTEGER writeStatePrec
201        INTEGER writeBinaryPrec        INTEGER writeBinaryPrec
202        INTEGER readBinaryPrec        INTEGER readBinaryPrec
       INTEGER nCheckLev  
203        INTEGER nonlinFreeSurf        INTEGER nonlinFreeSurf
204        INTEGER select_rStar        INTEGER select_rStar
205        INTEGER momForcingOutAB, tracForcingOutAB        INTEGER momForcingOutAB, tracForcingOutAB
# Line 223  C Line 219  C
219  C--   COMMON /PARM_L/ Logical valued parameters used by the model.  C--   COMMON /PARM_L/ Logical valued parameters used by the model.
220  C     usingCartesianGrid :: If TRUE grid generation will be in a cartesian  C     usingCartesianGrid :: If TRUE grid generation will be in a cartesian
221  C                          coordinate frame.  C                          coordinate frame.
222  C     usingSphericalPolarGrid :: If TRUE grid generation will be in a  C     usingSphericalPolarGrid :: If TRUE grid generation will be in a
223  C                               spherical polar frame.  C                               spherical polar frame.
224  C     usingCylindricalGrid :: If TRUE grid generation will be Cylindrical  C     usingCylindricalGrid :: If TRUE grid generation will be Cylindrical
225  C     usingCurvilinearGrid :: If TRUE, use a curvilinear grid (to be provided)  C     usingCurvilinearGrid :: If TRUE, use a curvilinear grid (to be provided)
# Line 243  C     tempAdvection :: Flag which turns Line 239  C     tempAdvection :: Flag which turns
239  C                     and off.  C                     and off.
240  C     tempForcing   :: Flag which turns external forcing of temperature on  C     tempForcing   :: Flag which turns external forcing of temperature on
241  C                     and off.  C                     and off.
242  C     saltAdvection :: Flag which turns advection of salinity on  C     saltAdvection :: Flag which turns advection of salinity on
243  C                     and off.  C                     and off.
244  C     saltForcing   :: Flag which turns external forcing of salinity on  C     saltForcing   :: Flag which turns external forcing of salinity on
245  C                     and off.  C                     and off.
246  C     useRealFreshWaterFlux :: if True (=Natural BCS), treats P+R-E flux  C     useRealFreshWaterFlux :: if True (=Natural BCS), treats P+R-E flux
247  C                         as a real Fresh Water (=> changes the Sea Level)  C                         as a real Fresh Water (=> changes the Sea Level)
248  C                         if F, converts P+R-E to salt flux (no SL effect)  C                         if F, converts P+R-E to salt flux (no SL effect)
249  C     useFullLeith   :: Set to true to use full Leith viscosity(may be unstable  C     useFullLeith   :: Set to true to use full Leith viscosity(may be unstable
# Line 259  C     rigidLid            :: Set to true Line 255  C     rigidLid            :: Set to true
255  C     implicitFreeSurface :: Set to true to use implicit free surface  C     implicitFreeSurface :: Set to true to use implicit free surface
256  C     exactConserv        :: Set to true to conserve exactly the total Volume  C     exactConserv        :: Set to true to conserve exactly the total Volume
257  C     linFSConserveTr     :: Set to true to correct source/sink of tracer  C     linFSConserveTr     :: Set to true to correct source/sink of tracer
258  C                            at the surface due to Linear Free Surface  C                            at the surface due to Linear Free Surface
259  C     uniformLin_PhiSurf  :: Set to true to use a uniform Bo_surf in the  C     uniformLin_PhiSurf  :: Set to true to use a uniform Bo_surf in the
260  C                           linear relation Phi_surf = Bo_surf*eta  C                           linear relation Phi_surf = Bo_surf*eta
261  C     use3Dsolver   :: set to true to use 3-D pressure solver  C     use3Dsolver   :: set to true to use 3-D pressure solver
# Line 291  C     momDissip_In_AB   :: if False, put Line 287  C     momDissip_In_AB   :: if False, put
287  C                          out off Adams-Bashforth time stepping.  C                          out off Adams-Bashforth time stepping.
288  C     doAB_onGtGs       :: if the Adams-Bashforth time stepping is used, always  C     doAB_onGtGs       :: if the Adams-Bashforth time stepping is used, always
289  C                          apply AB on tracer tendencies (rather than on Tracer)  C                          apply AB on tracer tendencies (rather than on Tracer)
290    C     pickupStrictlyMatch :: check and stop if pickup-file do not stricly match
291  C     startFromPickupAB2 :: with AB-3 code, start from an AB-2 pickup  C     startFromPickupAB2 :: with AB-3 code, start from an AB-2 pickup
292  C     usePickupBeforeC54 :: start from old-pickup files, generated with code from  C     usePickupBeforeC54 :: start from old-pickup files, generated with code from
293  C                           before checkpoint-54a, Jul 06, 2004.  C                           before checkpoint-54a, Jul 06, 2004.
# Line 326  C     pickup_write_immed :: echo the pic Line 323  C     pickup_write_immed :: echo the pic
323  C     timeave_mdsio      :: use mdsio for timeave output  C     timeave_mdsio      :: use mdsio for timeave output
324  C     snapshot_mdsio     :: use mdsio for "snapshot" (dumpfreq/diagfreq) output  C     snapshot_mdsio     :: use mdsio for "snapshot" (dumpfreq/diagfreq) output
325  C     monitor_stdio      :: use stdio for monitor output  C     monitor_stdio      :: use stdio for monitor output
326  C     dumpInitAndLast :: dumps model state to files at Initial (nIter0)  C     dumpInitAndLast :: dumps model state to files at Initial (nIter0)
327  C                        & Last iteration, in addition multiple of dumpFreq iter.  C                        & Last iteration, in addition multiple of dumpFreq iter.
328  C     balanceEmPmR    :: substract global mean of EmPmR at every time step  C     balanceEmPmR    :: substract global mean of EmPmR at every time step
329  C     balanceQnet     :: substract global mean of Qnet at every time step  C     balanceQnet     :: substract global mean of Qnet at every time step
# Line 363  C     balancePrintMean:: print substract Line 360  C     balancePrintMean:: print substract
360       & usingPCoords, usingZCoords, useDynP_inEos_Zc,       & usingPCoords, usingZCoords, useDynP_inEos_Zc,
361       & nonHydrostatic, quasiHydrostatic, globalFiles, useSingleCpuIO,       & nonHydrostatic, quasiHydrostatic, globalFiles, useSingleCpuIO,
362       & allowFreezing, useOldFreezing,       & allowFreezing, useOldFreezing,
363       & usePickupBeforeC54, startFromPickupAB2,       & pickupStrictlyMatch, usePickupBeforeC54, startFromPickupAB2,
364       & pickup_read_mdsio, pickup_write_mdsio, pickup_write_immed,       & pickup_read_mdsio, pickup_write_mdsio, pickup_write_immed,
365       & timeave_mdsio, snapshot_mdsio, monitor_stdio,       & timeave_mdsio, snapshot_mdsio, monitor_stdio,
366       & outputTypesInclusive, dumpInitAndLast, debugMode,       & outputTypesInclusive, dumpInitAndLast, debugMode,
# Line 443  C     balancePrintMean:: print substract Line 440  C     balancePrintMean:: print substract
440        LOGICAL useSingleCpuIO        LOGICAL useSingleCpuIO
441        LOGICAL allowFreezing        LOGICAL allowFreezing
442        LOGICAL useOldFreezing        LOGICAL useOldFreezing
443          LOGICAL pickupStrictlyMatch
444        LOGICAL usePickupBeforeC54        LOGICAL usePickupBeforeC54
445        LOGICAL startFromPickupAB2        LOGICAL startFromPickupAB2
446        LOGICAL dumpInitAndLast        LOGICAL dumpInitAndLast
# Line 690  C                      (i.e. allows conv Line 688  C                      (i.e. allows conv
688       & gravity, recip_gravity, gBaro,       & gravity, recip_gravity, gBaro,
689       & rhonil, recip_rhonil, rhoConst, recip_rhoConst,       & rhonil, recip_rhonil, rhoConst, recip_rhoConst,
690       & rhoFacC, recip_rhoFacC, rhoFacF, recip_rhoFacF,       & rhoFacC, recip_rhoFacC, rhoFacF, recip_rhoFacF,
691       & rhoConstFresh, convertEmP2rUnit, tRef, sRef, phiRef, dBdrRef,       & rhoConstFresh, tRef, sRef, phiRef, dBdrRef,
692       & rVel2wUnit, wUnit2rVel, mass2rUnit, rUnit2mass,       & rVel2wUnit, wUnit2rVel, mass2rUnit, rUnit2mass,
693       & baseTime, startTime, endTime,       & baseTime, startTime, endTime,
694       & chkPtFreq, pChkPtFreq, dumpFreq, adjDumpFreq,       & chkPtFreq, pChkPtFreq, dumpFreq, adjDumpFreq,
# Line 785  C                      (i.e. allows conv Line 783  C                      (i.e. allows conv
783        _RL rhoFacC(Nr),   recip_rhoFacC(Nr)        _RL rhoFacC(Nr),   recip_rhoFacC(Nr)
784        _RL rhoFacF(Nr+1), recip_rhoFacF(Nr+1)        _RL rhoFacF(Nr+1), recip_rhoFacF(Nr+1)
785        _RL rhoConstFresh        _RL rhoConstFresh
       _RL convertEmP2rUnit  
786        _RL tRef(Nr)        _RL tRef(Nr)
787        _RL sRef(Nr)        _RL sRef(Nr)
788        _RL phiRef(2*Nr+1)        _RL phiRef(2*Nr+1)
# Line 898  C Logical flags for selecting packages Line 895  C Logical flags for selecting packages
895        LOGICAL useRunClock        LOGICAL useRunClock
896        LOGICAL useEMBED_FILES        LOGICAL useEMBED_FILES
897        LOGICAL useMYPACKAGE        LOGICAL useMYPACKAGE
898          LOGICAL useSALT_PLUME
899        COMMON /PARM_PACKAGES/        COMMON /PARM_PACKAGES/
900       &        useOPPS, usePP81, useMY82, useGGL90, useKPP,       &        useOPPS, usePP81, useMY82, useGGL90, useKPP,
901       &        useGAD, useGMRedi, useOBCS, useAIM, useLand,       &        useGAD, useGMRedi, useOBCS, useAIM, useLand,
# Line 907  C Logical flags for selecting packages Line 905  C Logical flags for selecting packages
905       &        useSBO, useSEAICE, useShelfIce,       &        useSBO, useSEAICE, useShelfIce,
906       &        useThSIce, useATM2D, useBulkForce,       &        useThSIce, useATM2D, useBulkForce,
907       &        usefizhi, usegridalt, useDiagnostics, useMNC, useREGRID,       &        usefizhi, usegridalt, useDiagnostics, useMNC, useREGRID,
908       &        useRunClock, useEMBED_FILES, useMYPACKAGE       &        useRunClock, useEMBED_FILES, useMYPACKAGE, useSALT_PLUME
909    
910  CEH3 ;;; Local Variables: ***  CEH3 ;;; Local Variables: ***
911  CEH3 ;;; mode:fortran ***  CEH3 ;;; mode:fortran ***

Legend:
Removed from v.1.203  
changed lines
  Added in v.1.210

  ViewVC Help
Powered by ViewVC 1.1.22