/[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.191 by jmc, Tue Nov 28 22:44:44 2006 UTC revision 1.213 by mlosch, Mon Feb 25 20:57:24 2008 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
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 79  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,       &                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 115  C     the_run_name    :: string identify Line 122  C     the_run_name    :: string identify
122        CHARACTER*(MAX_LEN_FNAM) delYFile        CHARACTER*(MAX_LEN_FNAM) delYFile
123        CHARACTER*(MAX_LEN_FNAM) horizGridFile        CHARACTER*(MAX_LEN_FNAM) horizGridFile
124        CHARACTER*(MAX_LEN_FNAM) bathyFile, topoFile, shelfIceFile        CHARACTER*(MAX_LEN_FNAM) bathyFile, topoFile, shelfIceFile
125        CHARACTER*(MAX_LEN_FNAM) hydrogThetaFile        CHARACTER*(MAX_LEN_FNAM) hydrogThetaFile, hydrogSaltFile
126        CHARACTER*(MAX_LEN_FNAM) hydrogSaltFile        CHARACTER*(MAX_LEN_FNAM) diffKrFile
127        CHARACTER*(MAX_LEN_FNAM) zonalWindFile        CHARACTER*(MAX_LEN_FNAM) zonalWindFile
128        CHARACTER*(MAX_LEN_FNAM) meridWindFile        CHARACTER*(MAX_LEN_FNAM) meridWindFile
129        CHARACTER*(MAX_LEN_FNAM) thetaClimFile        CHARACTER*(MAX_LEN_FNAM) thetaClimFile
# Line 126  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 136  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
145        CHARACTER*(MAX_LEN_FNAM) mdsioLocalDir        CHARACTER*(MAX_LEN_PREC/2) the_run_name
       CHARACTER*(MAX_LEN_FNAM) 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 154  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 173  C     tempVertAdvScheme   :: Temp. Vert. Line 173  C     tempVertAdvScheme   :: Temp. Vert.
173  C     saltAdvScheme       :: Salt. Horiz.advection scheme selector  C     saltAdvScheme       :: Salt. Horiz.advection scheme selector
174  C     saltVertAdvScheme   :: Salt. Vert. Advection scheme selector  C     saltVertAdvScheme   :: Salt. Vert. Advection scheme selector
175  C     selectKEscheme      :: Kinetic Energy scheme selector (Vector Inv.)  C     selectKEscheme      :: Kinetic Energy scheme selector (Vector Inv.)
176    C     monitorSelect       :: select group of variables to monitor
177    C                            =1 : dynvars ; =2 : + vort ; =3 : + surface
178  C     debugLevel          :: debug level selector: higher -> more writing  C     debugLevel          :: debug level selector: higher -> more writing
179    
180        COMMON /PARM_I/        COMMON /PARM_I/
# Line 181  C     debugLevel          :: debug level Line 183  C     debugLevel          :: debug level
183       &        cg3dMaxIters,       &        cg3dMaxIters,
184       &        cg3dChkResFreq,       &        cg3dChkResFreq,
185       &        nIter0, nTimeSteps, nEndIter,       &        nIter0, nTimeSteps, nEndIter,
186       &        numStepsPerPickup,       &        writeStatePrec,
      &        writeStatePrec, nCheckLev,  
187       &        writeBinaryPrec, readBinaryPrec,       &        writeBinaryPrec, readBinaryPrec,
188       &        nonlinFreeSurf, select_rStar,       &        nonlinFreeSurf, select_rStar,
189       &        momForcingOutAB, tracForcingOutAB,       &        momForcingOutAB, tracForcingOutAB,
190       &        tempAdvScheme, tempVertAdvScheme,       &        tempAdvScheme, tempVertAdvScheme,
191       &        saltAdvScheme, saltVertAdvScheme,       &        saltAdvScheme, saltVertAdvScheme,
192       &        selectKEscheme,       &        selectKEscheme,
193       &        debugLevel       &        monitorSelect, debugLevel
194        INTEGER cg2dMaxIters        INTEGER cg2dMaxIters
195        INTEGER cg2dChkResFreq        INTEGER cg2dChkResFreq
196        INTEGER cg2dPreCondFreq        INTEGER cg2dPreCondFreq
# Line 198  C     debugLevel          :: debug level Line 199  C     debugLevel          :: debug level
199        INTEGER nIter0        INTEGER nIter0
200        INTEGER nTimeSteps        INTEGER nTimeSteps
201        INTEGER nEndIter        INTEGER nEndIter
       INTEGER numStepsPerPickup  
202        INTEGER writeStatePrec        INTEGER writeStatePrec
203        INTEGER writeBinaryPrec        INTEGER writeBinaryPrec
204        INTEGER readBinaryPrec        INTEGER readBinaryPrec
       INTEGER nCheckLev  
205        INTEGER nonlinFreeSurf        INTEGER nonlinFreeSurf
206        INTEGER select_rStar        INTEGER select_rStar
207        INTEGER momForcingOutAB, tracForcingOutAB        INTEGER momForcingOutAB, tracForcingOutAB
208        INTEGER tempAdvScheme, tempVertAdvScheme        INTEGER tempAdvScheme, tempVertAdvScheme
209        INTEGER saltAdvScheme, saltVertAdvScheme        INTEGER saltAdvScheme, saltVertAdvScheme
210        INTEGER selectKEscheme        INTEGER selectKEscheme
211          INTEGER monitorSelect
212        INTEGER debugLevel        INTEGER debugLevel
213    
214  C  C
# Line 222  C Line 222  C
222  C--   COMMON /PARM_L/ Logical valued parameters used by the model.  C--   COMMON /PARM_L/ Logical valued parameters used by the model.
223  C     usingCartesianGrid :: If TRUE grid generation will be in a cartesian  C     usingCartesianGrid :: If TRUE grid generation will be in a cartesian
224  C                          coordinate frame.  C                          coordinate frame.
225  C     usingSphericalPolarGrid :: If TRUE grid generation will be in a  C     usingSphericalPolarGrid :: If TRUE grid generation will be in a
226  C                               spherical polar frame.  C                               spherical polar frame.
227  C     usingCylindricalGrid :: If TRUE grid generation will be Cylindrical  C     usingCylindricalGrid :: If TRUE grid generation will be Cylindrical
228    C     usingCurvilinearGrid :: If TRUE, use a curvilinear grid (to be provided)
229    C     deepAtmosphere :: deep model (drop the shallow-atmosphere approximation)
230  C     no_slip_sides :: Impose "no-slip" at lateral boundaries.  C     no_slip_sides :: Impose "no-slip" at lateral boundaries.
231  C     no_slip_bottom :: Impose "no-slip" at bottom boundary.  C     no_slip_bottom :: Impose "no-slip" at bottom boundary.
232  C     momViscosity  :: Flag which turns momentum friction terms on and off.  C     momViscosity  :: Flag which turns momentum friction terms on and off.
# Line 240  C     tempAdvection :: Flag which turns Line 242  C     tempAdvection :: Flag which turns
242  C                     and off.  C                     and off.
243  C     tempForcing   :: Flag which turns external forcing of temperature on  C     tempForcing   :: Flag which turns external forcing of temperature on
244  C                     and off.  C                     and off.
245  C     saltAdvection :: Flag which turns advection of salinity on  C     saltAdvection :: Flag which turns advection of salinity on
246  C                     and off.  C                     and off.
247  C     saltForcing   :: Flag which turns external forcing of salinity on  C     saltForcing   :: Flag which turns external forcing of salinity on
248  C                     and off.  C                     and off.
249  C     useRealFreshWaterFlux :: if True (=Natural BCS), treats P+R-E flux  C     useRealFreshWaterFlux :: if True (=Natural BCS), treats P+R-E flux
250  C                         as a real Fresh Water (=> changes the Sea Level)  C                         as a real Fresh Water (=> changes the Sea Level)
251  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)
252  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 255  C     useStrainTensionVisc:: Set to true Line 257  C     useStrainTensionVisc:: Set to true
257  C     rigidLid            :: Set to true to use rigid lid  C     rigidLid            :: Set to true to use rigid lid
258  C     implicitFreeSurface :: Set to true to use implicit free surface  C     implicitFreeSurface :: Set to true to use implicit free surface
259  C     exactConserv        :: Set to true to conserve exactly the total Volume  C     exactConserv        :: Set to true to conserve exactly the total Volume
260    C     linFSConserveTr     :: Set to true to correct source/sink of tracer
261    C                            at the surface due to Linear Free Surface
262  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
263  C                           linear relation Phi_surf = Bo_surf*eta  C                           linear relation Phi_surf = Bo_surf*eta
264  C     use3Dsolver   :: set to true to use 3-D pressure solver  C     use3Dsolver   :: set to true to use 3-D pressure solver
# Line 285  C     useMultiDimAdvec  :: True if multi Line 289  C     useMultiDimAdvec  :: True if multi
289  C     momDissip_In_AB   :: if False, put Dissipation tendency contribution  C     momDissip_In_AB   :: if False, put Dissipation tendency contribution
290  C                          out off Adams-Bashforth time stepping.  C                          out off Adams-Bashforth time stepping.
291  C     doAB_onGtGs       :: if the Adams-Bashforth time stepping is used, always  C     doAB_onGtGs       :: if the Adams-Bashforth time stepping is used, always
292  C                          apply AB on tracer tendencies (rather than on Tracer)  C                          apply AB on tracer tendencies (rather than on Tracer)
293  C     startFromPickupAB2 :: with AB-3 code, start from an AB-2 pickup  C     pickupStrictlyMatch :: check and stop if pickup-file do not stricly match
294    C     startFromPickupAB2 :: with AB-3 code, start from an AB-2 pickup
295    C     usePickupBeforeC54 :: start from old-pickup files, generated with code from
296    C                           before checkpoint-54a, Jul 06, 2004.
297  C     doThetaClimRelax :: Set true if relaxation to temperature  C     doThetaClimRelax :: Set true if relaxation to temperature
298  C                        climatology is required.  C                        climatology is required.
299  C     doSaltClimRelax  :: Set true if relaxation to salinity  C     doSaltClimRelax  :: Set true if relaxation to salinity
# Line 316  C     useOldFreezing :: use the old vers Line 323  C     useOldFreezing :: use the old vers
323  C     pickup_write_mdsio :: use mdsio to write pickups  C     pickup_write_mdsio :: use mdsio to write pickups
324  C     pickup_read_mdsio  :: use mdsio to read  pickups  C     pickup_read_mdsio  :: use mdsio to read  pickups
325  C     pickup_write_immed :: echo the pickup immediately (for conversion)  C     pickup_write_immed :: echo the pickup immediately (for conversion)
326    C     writePickupAtEnd   :: write pickup at the last timestep
327  C     timeave_mdsio      :: use mdsio for timeave output  C     timeave_mdsio      :: use mdsio for timeave output
328  C     snapshot_mdsio     :: use mdsio for "snapshot" (dumpfreq/diagfreq) output  C     snapshot_mdsio     :: use mdsio for "snapshot" (dumpfreq/diagfreq) output
329  C     monitor_stdio      :: use stdio for monitor output  C     monitor_stdio      :: use stdio for monitor output
330  C     dumpInitAndLast :: dumps model state to files at Initial (nIter0)  C     dumpInitAndLast :: dumps model state to files at Initial (nIter0)
331  C                        & Last iteration, in addition multiple of dumpFreq iter.  C                        & Last iteration, in addition multiple of dumpFreq iter.
332  C     balanceEmPmR    :: substract global mean of EmPmR at every time step  C     balanceEmPmR    :: substract global mean of EmPmR at every time step
333  C     balanceQnet     :: substract global mean of Qnet at every time step  C     balanceQnet     :: substract global mean of Qnet at every time step
334  C     balancePrintMean:: print substracted global means to STDOUT  C     balancePrintMean:: print substracted global means to STDOUT
335    C     rotateGrid      :: rotate grid coordinates to geographical coordinates
336    C                        according to Euler angles phiEuler, thetaEuler, psiEuler
337    
338        COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid,        COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid,
339       & usingCurvilinearGrid, usingCylindricalGrid,       & usingCurvilinearGrid, usingCylindricalGrid,
340       & setInterFDr, setCenterDr,       & deepAtmosphere, setInterFDr, setCenterDr,
341       & no_slip_sides,no_slip_bottom,       & no_slip_sides,no_slip_bottom,
342       & momViscosity, momAdvection, momForcing, useCoriolis,       & momViscosity, momAdvection, momForcing, useCoriolis,
343       & momPressureForcing, vectorInvariantMomentum,       & momPressureForcing, vectorInvariantMomentum,
# Line 336  C     balancePrintMean:: print substract Line 346  C     balancePrintMean:: print substract
346       & useRealFreshWaterFlux,       & useRealFreshWaterFlux,
347       & useFullLeith, useStrainTensionVisc,       & useFullLeith, useStrainTensionVisc,
348       & useAreaViscLength,       & useAreaViscLength,
349       & rigidLid, implicitFreeSurface, exactConserv, uniformLin_PhiSurf,       & rigidLid, implicitFreeSurface, exactConserv, linFSConserveTr,
350         & uniformLin_PhiSurf,
351       & use3Dsolver, implicitIntGravWave, staggerTimeStep,       & use3Dsolver, implicitIntGravWave, staggerTimeStep,
352       & momStepping, tempStepping, saltStepping,       & momStepping, tempStepping, saltStepping,
353       & metricTerms, useNHMTerms,       & metricTerms, useNHMTerms,
# Line 355  C     balancePrintMean:: print substract Line 366  C     balancePrintMean:: print substract
366       & usingPCoords, usingZCoords, useDynP_inEos_Zc,       & usingPCoords, usingZCoords, useDynP_inEos_Zc,
367       & nonHydrostatic, quasiHydrostatic, globalFiles, useSingleCpuIO,       & nonHydrostatic, quasiHydrostatic, globalFiles, useSingleCpuIO,
368       & allowFreezing, useOldFreezing,       & allowFreezing, useOldFreezing,
369       & usePickupBeforeC35, usePickupBeforeC54, startFromPickupAB2,       & pickupStrictlyMatch, usePickupBeforeC54, startFromPickupAB2,
370       & pickup_read_mdsio, pickup_write_mdsio, pickup_write_immed,       & pickup_read_mdsio, pickup_write_mdsio, pickup_write_immed,
371         & writePickupAtEnd,
372       & timeave_mdsio, snapshot_mdsio, monitor_stdio,       & timeave_mdsio, snapshot_mdsio, monitor_stdio,
373       & outputTypesInclusive, dumpInitAndLast, debugMode,       & outputTypesInclusive, dumpInitAndLast, debugMode,
374       & inAdMode, inAdTrue, inAdFalse, inAdExact,       & inAdMode, inAdTrue, inAdFalse, inAdExact,
375       & balanceEmPmR, balanceQnet, balancePrintMean       & balanceEmPmR, balanceQnet, balancePrintMean,
376         & rotateGrid
377    
378        LOGICAL usingCartesianGrid        LOGICAL usingCartesianGrid
379        LOGICAL usingSphericalPolarGrid        LOGICAL usingSphericalPolarGrid
380        LOGICAL usingCylindricalGrid        LOGICAL usingCylindricalGrid
381        LOGICAL usingCurvilinearGrid        LOGICAL usingCurvilinearGrid
382          LOGICAL deepAtmosphere
383        LOGICAL setInterFDr        LOGICAL setInterFDr
384        LOGICAL setCenterDr        LOGICAL setCenterDr
385        LOGICAL useNHMTerms        LOGICAL useNHMTerms
# Line 388  C     balancePrintMean:: print substract Line 402  C     balancePrintMean:: print substract
402        LOGICAL rigidLid        LOGICAL rigidLid
403        LOGICAL implicitFreeSurface        LOGICAL implicitFreeSurface
404        LOGICAL exactConserv        LOGICAL exactConserv
405          LOGICAL linFSConserveTr
406        LOGICAL uniformLin_PhiSurf        LOGICAL uniformLin_PhiSurf
407        LOGICAL use3Dsolver        LOGICAL use3Dsolver
408        LOGICAL implicitIntGravWave        LOGICAL implicitIntGravWave
# Line 433  C     balancePrintMean:: print substract Line 448  C     balancePrintMean:: print substract
448        LOGICAL useSingleCpuIO        LOGICAL useSingleCpuIO
449        LOGICAL allowFreezing        LOGICAL allowFreezing
450        LOGICAL useOldFreezing        LOGICAL useOldFreezing
451        LOGICAL usePickupBeforeC35        LOGICAL pickupStrictlyMatch
452        LOGICAL usePickupBeforeC54        LOGICAL usePickupBeforeC54
453        LOGICAL startFromPickupAB2        LOGICAL startFromPickupAB2
454        LOGICAL dumpInitAndLast        LOGICAL dumpInitAndLast
455        LOGICAL debugMode        LOGICAL debugMode
456        LOGICAL pickup_read_mdsio, pickup_write_mdsio        LOGICAL pickup_read_mdsio, pickup_write_mdsio
457        LOGICAL pickup_write_immed        LOGICAL pickup_write_immed, writePickupAtEnd
458        LOGICAL timeave_mdsio, snapshot_mdsio, monitor_stdio        LOGICAL timeave_mdsio, snapshot_mdsio, monitor_stdio
459        LOGICAL outputTypesInclusive        LOGICAL outputTypesInclusive
460        LOGICAL inAdMode, inAdTrue, inAdFalse, inAdExact        LOGICAL inAdMode, inAdTrue, inAdFalse, inAdExact
# Line 448  C     balancePrintMean:: print substract Line 463  C     balancePrintMean:: print substract
463        LOGICAL balanceQnet        LOGICAL balanceQnet
464        LOGICAL balancePrintMean        LOGICAL balancePrintMean
465    
466          LOGICAL rotateGrid
467    
468  C--   COMMON /PARM_R/ "Real" valued parameters used by the model.  C--   COMMON /PARM_R/ "Real" valued parameters used by the model.
469  C     cg2dTargetResidual  C     cg2dTargetResidual
470  C          :: Target residual for cg2d solver; no unit (RHS normalisation)  C          :: Target residual for cg2d solver; no unit (RHS normalisation)
# Line 487  C     phiRef    :: reference potential ( Line 504  C     phiRef    :: reference potential (
504  C     dBdrRef   :: vertical gradient of reference boyancy  [(m/s/r)^2)]:  C     dBdrRef   :: vertical gradient of reference boyancy  [(m/s/r)^2)]:
505  C               :: z-coord: = N^2_ref = Brunt-Vaissala frequency [s^-2]  C               :: z-coord: = N^2_ref = Brunt-Vaissala frequency [s^-2]
506  C               :: p-coord: = -(d.alpha/dp)_ref          [(m^2.s/kg)^2]  C               :: p-coord: = -(d.alpha/dp)_ref          [(m^2.s/kg)^2]
507    C     rVel2wUnit :: units conversion factor (Non-Hydrostatic code),
508    C                :: from r-coordinate vertical velocity to vertical velocity [m/s].
509    C                :: z-coord: = 1 ; p-coord: wSpeed [m/s] = rVel [Pa/s] * rVel2wUnit
510    C     wUnit2rVel :: units conversion factor (Non-Hydrostatic code),
511    C                :: from vertical velocity [m/s] to r-coordinate vertical velocity.
512    C                :: z-coord: = 1 ; p-coord: rVel [Pa/s] = wSpeed [m/s] * wUnit2rVel
513    C     mass2rUnit :: units conversion factor (surface forcing),
514    C                :: from mass per unit area [kg/m2] to vertical r-coordinate unit.
515    C                :: z-coord: = 1/rhoConst ( [kg/m2] / rho = [m] ) ;
516    C                :: p-coord: = gravity    ( [kg/m2] *  g = [Pa] ) ;
517    C     rUnit2mass :: units conversion factor (surface forcing),
518    C                :: from vertical r-coordinate unit to mass per unit area [kg/m2].
519    C                :: z-coord: = rhoConst  ( [m] * rho = [kg/m2] ) ;
520    C                :: p-coord: = 1/gravity ( [Pa] /  g = [kg/m2] ) ;
521  C     phiMin    :: Latitude of southern most cell face.  C     phiMin    :: Latitude of southern most cell face.
522  C     thetaMin  :: Longitude of western most cell face (this  C     thetaMin  :: Longitude of western most cell face (this
523  C                 is an "inert" parameter but it is included  C                 is an "inert" parameter but it is included
# Line 556  C     diffKrBL79surf :: T/S surface diff Line 587  C     diffKrBL79surf :: T/S surface diff
587  C     diffKrBL79deep :: T/S deep diffusivity (m^2/s) Bryan and Lewis, 1979  C     diffKrBL79deep :: T/S deep diffusivity (m^2/s) Bryan and Lewis, 1979
588  C     diffKrBL79scl  :: depth scale for arctan fn (m) Bryan and Lewis, 1979  C     diffKrBL79scl  :: depth scale for arctan fn (m) Bryan and Lewis, 1979
589  C     diffKrBL79Ho   :: depth offset for arctan fn (m) Bryan and Lewis, 1979  C     diffKrBL79Ho   :: depth offset for arctan fn (m) Bryan and Lewis, 1979
590    C     BL79LatVary    :: polarwise of this latitude diffKrBL79 is applied with
591    C                       gradual transition to diffKrBLEQ towards Equator
592    C     diffKrBLEQsurf :: same as diffKrBL79surf but at Equator
593    C     diffKrBLEQdeep :: same as diffKrBL79deep but at Equator
594    C     diffKrBLEQscl  :: same as diffKrBL79scl but at Equator
595    C     diffKrBLEQHo   :: same as diffKrBL79Ho but at Equator
596  C     deltaT    :: Default timestep ( s )  C     deltaT    :: Default timestep ( s )
597  C     deltaTClock  :: Timestep used as model "clock". This determines the  C     deltaTClock  :: Timestep used as model "clock". This determines the
598  C                    IO frequencies and is used in tagging output. It can  C                    IO frequencies and is used in tagging output. It can
# Line 622  C     salt_EvPrRn :: salinity of Rain & Line 659  C     salt_EvPrRn :: salinity of Rain &
659  C        (notes: a) tracer content of Rain/Evap only used if both  C        (notes: a) tracer content of Rain/Evap only used if both
660  C                     NonLin_FrSurf & useRealFreshWater are set.  C                     NonLin_FrSurf & useRealFreshWater are set.
661  C                b) use model surface (local) value if set to UNSET_RL)  C                b) use model surface (local) value if set to UNSET_RL)
662  C     horiVertRatio      :: Ratio on units in vertical to units in horizontal.  C     hMixCrit    :: criteria for mixed-layer diagnostic
663  C     recip_horiVertRatio  ( 1 if horiz in m and vertical in m ).  C     ivdc_kappa  :: implicit vertical diffusivity for convection [m^2/s]
664  C                          ( g*rho if horiz in m and vertical in Pa ).  C     Ro_SeaLevel :: standard position of Sea-Level in "R" coordinate, used as
665  C     Ro_SeaLevel        :: standard position of Sea-Level in "R" coordinate, used as  C                    starting value (k=1) for vertical coordinate (rf(1)=Ro_SeaLevel)
 C                          starting value (k=1) for vertical coordinate (rf(1)=Ro_SeaLevel)  
666  C     sideDragFactor     :: side-drag scaling factor (used only if no_slip_sides)  C     sideDragFactor     :: side-drag scaling factor (used only if no_slip_sides)
667  C                           (default=2: full drag ; =1: gives half-slip BC)  C                           (default=2: full drag ; =1: gives half-slip BC)
668  C     bottomDragLinear    :: Linear    bottom-drag coefficient (units of [r]/s)  C     bottomDragLinear    :: Linear    bottom-drag coefficient (units of [r]/s)
# Line 637  C                           is to be rep Line 673  C                           is to be rep
673  C                           (affects myabs, mymin, mymax)  C                           (affects myabs, mymin, mymax)
674  C     nh_Am2        :: scales the non-hydrostatic terms and changes internal scales  C     nh_Am2        :: scales the non-hydrostatic terms and changes internal scales
675  C                      (i.e. allows convection at different Rayleigh numbers)  C                      (i.e. allows convection at different Rayleigh numbers)
676    C     phiEuler      :: Euler angle, rotation about original z-axis
677    C     thetaEuler    :: Euler angle, rotation about new x-axis
678    C     psiEuler      :: Euler angle, rotation about new z-axis
679        COMMON /PARM_R/ cg2dTargetResidual, cg2dTargetResWunit,        COMMON /PARM_R/ cg2dTargetResidual, cg2dTargetResWunit,
680       & cg2dpcOffDFac, cg3dTargetResidual,       & cg2dpcOffDFac, cg3dTargetResidual,
681       & delR, delRc, delX, delY,       & delR, delRc, delX, delY,
# Line 655  C                      (i.e. allows conv Line 694  C                      (i.e. allows conv
694       & diffKhT, diffK4T, diffKrNrT,       & diffKhT, diffK4T, diffKrNrT,
695       & diffKhS, diffK4S, diffKrNrS,       & diffKhS, diffK4S, diffKrNrS,
696       & diffKrBL79surf, diffKrBL79deep, diffKrBL79scl, diffKrBL79Ho,       & diffKrBL79surf, diffKrBL79deep, diffKrBL79scl, diffKrBL79Ho,
697         & BL79LatVary,
698         & diffKrBLEQsurf, diffKrBLEQdeep, diffKrBLEQscl, diffKrBLEQHo,
699       & delT, tauCD, rCD, freeSurfFac, implicSurfPress, implicDiv2Dflow,       & delT, tauCD, rCD, freeSurfFac, implicSurfPress, implicDiv2Dflow,
700       & hFacMin, hFacMinDz, hFacInf, hFacSup,       & hFacMin, hFacMinDz, hFacInf, hFacSup,
701       & gravity, recip_Gravity, gBaro,       & gravity, recip_gravity, gBaro,
702       & rhonil, recip_rhonil, rhoConst, recip_rhoConst,       & rhonil, recip_rhonil, rhoConst, recip_rhoConst,
703       & rhoFacC, recip_rhoFacC, rhoFacF, recip_rhoFacF,       & rhoFacC, recip_rhoFacC, rhoFacF, recip_rhoFacF,
704       & rhoConstFresh, convertEmP2rUnit, tRef, sRef, phiRef, dBdrRef,       & rhoConstFresh, tRef, sRef, phiRef, dBdrRef,
705         & rVel2wUnit, wUnit2rVel, mass2rUnit, rUnit2mass,
706       & baseTime, startTime, endTime,       & baseTime, startTime, endTime,
707       & chkPtFreq, pChkPtFreq, dumpFreq, adjDumpFreq,       & chkPtFreq, pChkPtFreq, dumpFreq, adjDumpFreq,
708       & diagFreq, taveFreq, tave_lastIter, monitorFreq, adjMonitorFreq,       & diagFreq, taveFreq, tave_lastIter, monitorFreq, adjMonitorFreq,
# Line 671  C                      (i.e. allows conv Line 713  C                      (i.e. allows conv
713       & externForcingCycle, externForcingPeriod,       & externForcingCycle, externForcingPeriod,
714       & convertFW2Salt, temp_EvPrRn, salt_EvPrRn,       & convertFW2Salt, temp_EvPrRn, salt_EvPrRn,
715       & hFacMinDr, hFacMinDp,       & hFacMinDr, hFacMinDp,
716       & horiVertRatio, recip_horiVertRatio,       & ivdc_kappa, hMixCriteria, Ro_SeaLevel,
      & ivdc_kappa, Ro_SeaLevel,  
717       & sideDragFactor, bottomDragLinear, bottomDragQuadratic, nh_Am2,       & sideDragFactor, bottomDragLinear, bottomDragQuadratic, nh_Am2,
718       & smoothAbsFuncRange,       & smoothAbsFuncRange,
719       & tCylIn, tCylOut       & tCylIn, tCylOut,
720         & phiEuler, thetaEuler, psiEuler
721    
722        _RL cg2dTargetResidual        _RL cg2dTargetResidual
723        _RL cg2dTargetResWunit        _RL cg2dTargetResWunit
# Line 739  C                      (i.e. allows conv Line 781  C                      (i.e. allows conv
781        _RL diffKrBL79deep        _RL diffKrBL79deep
782        _RL diffKrBL79scl        _RL diffKrBL79scl
783        _RL diffKrBL79Ho        _RL diffKrBL79Ho
784          _RL BL79LatVary
785          _RL diffKrBLEQsurf
786          _RL diffKrBLEQdeep
787          _RL diffKrBLEQscl
788          _RL diffKrBLEQHo
789        _RL delt        _RL delt
790        _RL tauCD        _RL tauCD
791        _RL rCD        _RL rCD
# Line 750  C                      (i.e. allows conv Line 797  C                      (i.e. allows conv
797        _RL rhoFacC(Nr),   recip_rhoFacC(Nr)        _RL rhoFacC(Nr),   recip_rhoFacC(Nr)
798        _RL rhoFacF(Nr+1), recip_rhoFacF(Nr+1)        _RL rhoFacF(Nr+1), recip_rhoFacF(Nr+1)
799        _RL rhoConstFresh        _RL rhoConstFresh
       _RL convertEmP2rUnit  
800        _RL tRef(Nr)        _RL tRef(Nr)
801        _RL sRef(Nr)        _RL sRef(Nr)
802        _RL phiRef(2*Nr+1)        _RL phiRef(2*Nr+1)
803        _RL dBdrRef(Nr)        _RL dBdrRef(Nr)
804          _RL rVel2wUnit(Nr+1), wUnit2rVel(Nr+1)
805          _RL mass2rUnit, rUnit2mass
806        _RL baseTime        _RL baseTime
807        _RL startTime        _RL startTime
808        _RL endTime        _RL endTime
# Line 787  C                      (i.e. allows conv Line 835  C                      (i.e. allows conv
835        _RL convertFW2Salt        _RL convertFW2Salt
836        _RL temp_EvPrRn        _RL temp_EvPrRn
837        _RL salt_EvPrRn        _RL salt_EvPrRn
       _RL horiVertRatio  
       _RL recip_horiVertRatio  
838        _RL ivdc_kappa        _RL ivdc_kappa
839          _RL hMixCriteria
840        _RL Ro_SeaLevel        _RL Ro_SeaLevel
841        _RL sideDragFactor        _RL sideDragFactor
842        _RL bottomDragLinear        _RL bottomDragLinear
# Line 798  C                      (i.e. allows conv Line 845  C                      (i.e. allows conv
845        _RL nh_Am2        _RL nh_Am2
846        _RL tCylIn        _RL tCylIn
847        _RL tCylOut        _RL tCylOut
848          _RL phiEuler, thetaEuler, psiEuler
849    
850  C--   COMMON /PARM_A/ Thermodynamics constants ?  C--   COMMON /PARM_A/ Thermodynamics constants ?
851        COMMON /PARM_A/ HeatCapacity_Cp,recip_Cp        COMMON /PARM_A/ HeatCapacity_Cp,recip_Cp
# Line 830  C Logical flags for selecting packages Line 878  C Logical flags for selecting packages
878        LOGICAL useMY82        LOGICAL useMY82
879        LOGICAL useGGL90        LOGICAL useGGL90
880        LOGICAL useKPP        LOGICAL useKPP
881          LOGICAL useGAD
882        LOGICAL useGMRedi        LOGICAL useGMRedi
883        LOGICAL useOBCS        LOGICAL useOBCS
884        LOGICAL useAIM        LOGICAL useAIM
# Line 861  C Logical flags for selecting packages Line 910  C Logical flags for selecting packages
910        LOGICAL useRunClock        LOGICAL useRunClock
911        LOGICAL useEMBED_FILES        LOGICAL useEMBED_FILES
912        LOGICAL useMYPACKAGE        LOGICAL useMYPACKAGE
913          LOGICAL useSALT_PLUME
914        COMMON /PARM_PACKAGES/        COMMON /PARM_PACKAGES/
915       &        useOPPS, usePP81, useMY82, useGGL90, useKPP,       &        useOPPS, usePP81, useMY82, useGGL90, useKPP,
916       &        useGMRedi, useOBCS, useAIM, useLand,       &        useGAD, useGMRedi, useOBCS, useAIM, useLand,
917       &        useCAL, useEXF, useEBM, useGrdchk, useECCO,       &        useCAL, useEXF, useEBM, useGrdchk, useECCO,
918       &        useSHAP_FILT, useZONAL_FILT, useFLT,       &        useSHAP_FILT, useZONAL_FILT, useFLT,
919       &        usePTRACERS, useGCHEM, useRBCS, useOffLine, useMATRIX,       &        usePTRACERS, useGCHEM, useRBCS, useOffLine, useMATRIX,
920       &        useSBO, useSEAICE, useShelfIce,       &        useSBO, useSEAICE, useShelfIce,
921       &        useThSIce, useATM2D, useBulkForce,       &        useThSIce, useATM2D, useBulkForce,
922       &        usefizhi, usegridalt, useDiagnostics, useMNC, useREGRID,       &        usefizhi, usegridalt, useDiagnostics, useMNC, useREGRID,
923       &        useRunClock, useEMBED_FILES, useMYPACKAGE       &        useRunClock, useEMBED_FILES, useMYPACKAGE, useSALT_PLUME
924    
925  CEH3 ;;; Local Variables: ***  CEH3 ;;; Local Variables: ***
926  CEH3 ;;; mode:fortran ***  CEH3 ;;; mode:fortran ***

Legend:
Removed from v.1.191  
changed lines
  Added in v.1.213

  ViewVC Help
Powered by ViewVC 1.1.22