/[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.200 by dimitri, Wed Apr 11 00:00:47 2007 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  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 174  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 182  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 199  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 223  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)  C     usingCurvilinearGrid :: If TRUE, use a curvilinear grid (to be provided)
# Line 243  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 259  C     rigidLid            :: Set to true Line 258  C     rigidLid            :: Set to true
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  C     linFSConserveTr     :: Set to true to correct source/sink of tracer
261  C                            at the surface due to Linear Free Surface  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 291  C     momDissip_In_AB   :: if False, put Line 290  C     momDissip_In_AB   :: if False, put
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     pickupStrictlyMatch :: check and stop if pickup-file do not stricly match
294  C     startFromPickupAB2 :: with AB-3 code, start from an AB-2 pickup  C     startFromPickupAB2 :: with AB-3 code, start from an AB-2 pickup
295  C     usePickupBeforeC54 :: start from old-pickup files, generated with code from  C     usePickupBeforeC54 :: start from old-pickup files, generated with code from
296  C                           before checkpoint-54a, Jul 06, 2004.  C                           before checkpoint-54a, Jul 06, 2004.
# Line 323  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,
# Line 363  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       & 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
# Line 443  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 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 457  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 502  C                :: z-coord: = 1 ; p-coo Line 510  C                :: z-coord: = 1 ; p-coo
510  C     wUnit2rVel :: units conversion factor (Non-Hydrostatic code),  C     wUnit2rVel :: units conversion factor (Non-Hydrostatic code),
511  C                :: from vertical velocity [m/s] to r-coordinate vertical velocity.  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  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 568  C                 for mixing of salt ver Line 584  C                 for mixing of salt ver
584  C     diffK4S   :: Biharmonic diffusion coeff. for mixing of  C     diffK4S   :: Biharmonic diffusion coeff. for mixing of
585  C                 salt laterally ( m^4/s )  C                 salt laterally ( m^4/s )
586  C     diffKrBL79surf :: T/S surface diffusivity (m^2/s) Bryan and Lewis, 1979  C     diffKrBL79surf :: T/S surface diffusivity (m^2/s) Bryan and Lewis, 1979
 C     diffKrBLEQsurf :: same as above at Equator  
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
 C     diffKrBLEQdeep :: same as above at Equator  
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
 C     diffKrBLEQscl  :: same as above at Equator  
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     diffKrBLEQHo   :: same as above at Equator  C     BL79LatVary    :: polarwise of this latitude diffKrBL79 is applied with
591  C     KbryanLewisLatTransition :: polarwise of this latitude diffKrBL79 is  C                       gradual transition to diffKrBLEQ towards Equator
592  C               applied with gradual transition to diffKrBLEQ towards Equator  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 644  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 659  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 677  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,       & diffKrBLEQsurf, diffKrBLEQdeep, diffKrBLEQscl, diffKrBLEQHo,
      & KbryanLewisLatTransition,  
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,       & 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 696  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 764  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        _RL diffKrBLEQsurf
786        _RL diffKrBLEQdeep        _RL diffKrBLEQdeep
787        _RL diffKrBLEQscl        _RL diffKrBLEQscl
788        _RL diffKrBLEQHo        _RL diffKrBLEQHo
       _RL KbryanLewisLatTransition  
789        _RL delt        _RL delt
790        _RL tauCD        _RL tauCD
791        _RL rCD        _RL rCD
# Line 780  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)        _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 818  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 829  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 893  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       &        useGAD, useGMRedi, useOBCS, useAIM, useLand,       &        useGAD, useGMRedi, useOBCS, useAIM, useLand,
# Line 902  C Logical flags for selecting packages Line 920  C Logical flags for selecting packages
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.200  
changed lines
  Added in v.1.213

  ViewVC Help
Powered by ViewVC 1.1.22