/[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.86 by dimitri, Tue Feb 18 05:47:28 2003 UTC revision 1.123 by edhill, Tue Sep 7 21:32:09 2004 UTC
# Line 65  C     thetaClimFile   :: File containing Line 65  C     thetaClimFile   :: File containing
65  C                       in relaxation term -lambda(theta-theta*)  C                       in relaxation term -lambda(theta-theta*)
66  C     saltClimFile    :: File containing salt climataology used  C     saltClimFile    :: File containing salt climataology used
67  C                       in relaxation term -lambda(salt-salt*)  C                       in relaxation term -lambda(salt-salt*)
68  C     surfQfile       :: File containing surface heat flux  C     surfQfile       :: File containing surface heat flux, excluding SW
69  C     surfQswfile     :: File containing surface shortwave radiation  C                        (old version, kept for backward compatibility)
70    C     surfQnetFile    :: File containing surface net heat flux
71    C     surfQswFile     :: File containing surface shortwave radiation
72  C     dQdTfile        :: File containing thermal relaxation coefficient  C     dQdTfile        :: File containing thermal relaxation coefficient
73  C     EmPmRfile       :: File containing surface fresh water flux  C     EmPmRfile       :: File containing surface fresh water flux
74  C     pLoadFile       :: File containing pressure loading  C     pLoadFile       :: File containing pressure loading
75  C     buoyancyRelation :: Flag used to indicate which relation to use to  C     buoyancyRelation :: Flag used to indicate which relation to use to
76  C                        get buoyancy.  C                        get buoyancy.
77  C     eosType         :: choose the equation of state:  C     eosType         :: choose the equation of state:
78  C                        LINEAR, POLY3, UNESCO, JMD95Z, JMD95P  C                        LINEAR, POLY3, UNESCO, JMD95Z, JMD95P, MDJWF, IDEALGAS
79        COMMON /PARM_C/ checkPtSuff,        COMMON /PARM_C/ checkPtSuff,
80       &                bathyFile, topoFile,       &                bathyFile, topoFile,
81       &                hydrogThetaFile, hydrogSaltFile,       &                hydrogThetaFile, hydrogSaltFile,
82       &                zonalWindFile, meridWindFile, thetaClimFile,       &                zonalWindFile, meridWindFile, thetaClimFile,
83       &                saltClimFile, buoyancyRelation,       &                saltClimFile, buoyancyRelation,
84       &                EmPmRfile, surfQfile, surfQswfile,       &                EmPmRfile, surfQfile, surfQnetFile, surfQswFile,
85       &                uVelInitFile, vVelInitFile, pSurfInitFile,       &                uVelInitFile, vVelInitFile, pSurfInitFile,
86       &                dQdTfile, ploadFile,       &                dQdTfile, ploadFile,
87       &                eosType       &                eosType, pickupSuff,
88         &                mdsioLocalDir
89        CHARACTER*(5) checkPtSuff(maxNoChkptLev)        CHARACTER*(5) checkPtSuff(maxNoChkptLev)
90        CHARACTER*(MAX_LEN_FNAM) bathyFile, topoFile        CHARACTER*(MAX_LEN_FNAM) bathyFile, topoFile
91        CHARACTER*(MAX_LEN_FNAM) hydrogThetaFile        CHARACTER*(MAX_LEN_FNAM) hydrogThetaFile
# Line 92  C                        LINEAR, POLY3, Line 95  C                        LINEAR, POLY3,
95        CHARACTER*(MAX_LEN_FNAM) thetaClimFile        CHARACTER*(MAX_LEN_FNAM) thetaClimFile
96        CHARACTER*(MAX_LEN_FNAM) saltClimFile        CHARACTER*(MAX_LEN_FNAM) saltClimFile
97        CHARACTER*(MAX_LEN_FNAM) surfQfile        CHARACTER*(MAX_LEN_FNAM) surfQfile
98        CHARACTER*(MAX_LEN_FNAM) surfQswfile        CHARACTER*(MAX_LEN_FNAM) surfQnetFile
99          CHARACTER*(MAX_LEN_FNAM) surfQswFile
100        CHARACTER*(MAX_LEN_FNAM) EmPmRfile        CHARACTER*(MAX_LEN_FNAM) EmPmRfile
101        CHARACTER*(MAX_LEN_FNAM) buoyancyRelation        CHARACTER*(MAX_LEN_FNAM) buoyancyRelation
102        CHARACTER*(MAX_LEN_FNAM) uVelInitFile        CHARACTER*(MAX_LEN_FNAM) uVelInitFile
# Line 100  C                        LINEAR, POLY3, Line 104  C                        LINEAR, POLY3,
104        CHARACTER*(MAX_LEN_FNAM) pSurfInitFile        CHARACTER*(MAX_LEN_FNAM) pSurfInitFile
105        CHARACTER*(MAX_LEN_FNAM) dQdTfile        CHARACTER*(MAX_LEN_FNAM) dQdTfile
106        CHARACTER*(MAX_LEN_FNAM) ploadFile        CHARACTER*(MAX_LEN_FNAM) ploadFile
107          CHARACTER*(MAX_LEN_FNAM) mdsioLocalDir
108        CHARACTER*(6) eosType        CHARACTER*(6) eosType
109          CHARACTER*(10) pickupSuff
110    
111  C--   COMMON /PARM_I/ Integer valued parameters used by the model.  C--   COMMON /PARM_I/ Integer valued parameters used by the model.
112  C     cg2dMaxIters        :: Maximum number of iterations in the  C     cg2dMaxIters        :: Maximum number of iterations in the
113  C                           two-dimensional con. grad solver.  C                           two-dimensional con. grad solver.
114  C     cg2dChkResFreq      :: Frequency with which to check residual  C     cg2dChkResFreq      :: Frequency with which to check residual
115  C                           in con. grad solver.  C                           in con. grad solver.
116    C     cg2dPreCondFreq     :: Frequency for updating cg2d preconditioner
117    C                            (non-linear free-surf.)
118  C     cg3dMaxIters        :: Maximum number of iterations in the  C     cg3dMaxIters        :: Maximum number of iterations in the
119  C                           three-dimensional con. grad solver.  C                           three-dimensional con. grad solver.
120  C     cg3dChkResFreq      :: Frequency with which to check residual  C     cg3dChkResFreq      :: Frequency with which to check residual
# Line 123  C     nonlinFreeSurf      :: option rela Line 131  C     nonlinFreeSurf      :: option rela
131  C                           =0 Linear free surface ; >0 Non-linear  C                           =0 Linear free surface ; >0 Non-linear
132  C     select_rStar        :: option related to r* vertical coordinate  C     select_rStar        :: option related to r* vertical coordinate
133  C                           =0 (default) use r coord. ; > 0 use r*  C                           =0 (default) use r coord. ; > 0 use r*
134    C     tempAdvScheme       :: Temp. Horiz.Advection scheme selector
135    C     tempVertAdvScheme   :: Temp. Vert. Advection scheme selector
136    C     saltAdvScheme       :: Salt. Horiz.advection scheme selector
137    C     saltVertAdvScheme   :: Salt. Vert. Advection scheme selector
138    C     debugLevel          :: debug level selector: higher -> more writing
139    C     mon_iotype          :: flag for monitor output (MNC vs. STDOUT)
140    
141        COMMON /PARM_I/        COMMON /PARM_I/
142       &        cg2dMaxIters,       &        cg2dMaxIters,
143       &        cg2dChkResFreq,       &        cg2dChkResFreq, cg2dPreCondFreq,
144       &        cg3dMaxIters,       &        cg3dMaxIters,
145       &        cg3dChkResFreq,       &        cg3dChkResFreq,
146       &        nIter0, nTimeSteps, nEndIter,       &        nIter0, nTimeSteps, nEndIter,
# Line 134  C                           =0 (default) Line 148  C                           =0 (default)
148       &        writeStatePrec, nCheckLev,       &        writeStatePrec, nCheckLev,
149       &        writeBinaryPrec, readBinaryPrec,       &        writeBinaryPrec, readBinaryPrec,
150       &        nonlinFreeSurf, select_rStar,       &        nonlinFreeSurf, select_rStar,
151       &        tempAdvScheme, saltAdvScheme, tracerAdvScheme       &        tempAdvScheme, tempVertAdvScheme,
152         &        saltAdvScheme, saltVertAdvScheme,
153         &        tracerAdvScheme,
154         &        debugLevel,
155         &        mon_iotype
156        INTEGER cg2dMaxIters        INTEGER cg2dMaxIters
157        INTEGER cg2dChkResFreq        INTEGER cg2dChkResFreq
158          INTEGER cg2dPreCondFreq
159        INTEGER cg3dMaxIters        INTEGER cg3dMaxIters
160        INTEGER cg3dChkResFreq        INTEGER cg3dChkResFreq
161        INTEGER nIter0        INTEGER nIter0
# Line 149  C                           =0 (default) Line 168  C                           =0 (default)
168        INTEGER nCheckLev        INTEGER nCheckLev
169        INTEGER nonlinFreeSurf        INTEGER nonlinFreeSurf
170        INTEGER select_rStar        INTEGER select_rStar
171        INTEGER tempAdvScheme        INTEGER tempAdvScheme, tempVertAdvScheme
172        INTEGER saltAdvScheme        INTEGER saltAdvScheme, saltVertAdvScheme
173        INTEGER tracerAdvScheme        INTEGER tracerAdvScheme
174          INTEGER debugLevel
175          INTEGER mon_iotype
176    
177    C
178          INTEGER debLevZero
179          PARAMETER(debLevZero=0)
180          INTEGER debLevA
181          PARAMETER(debLevA=1)
182          INTEGER debLevB
183          PARAMETER(debLevB=2)
184    
185  C--   COMMON /PARM_L/ Logical valued parameters used by the model.  C--   COMMON /PARM_L/ Logical valued parameters used by the model.
186  C     usingCartesianGrid :: If TRUE grid generation will be in a cartesian  C     usingCartesianGrid :: If TRUE grid generation will be in a cartesian
187  C                          coordinate frame.  C                          coordinate frame.
188  C     usingSphericalPolarGrid :: If TRUE grid generation will be in a  C     usingSphericalPolarGrid :: If TRUE grid generation will be in a
189  C                               spherical polar frame.  C                               spherical polar frame.
190    C     usingCylindricalGrid :: If TRUE grid generation will be Cylindrical
191  C     no_slip_sides :: Impose "no-slip" at lateral boundaries.  C     no_slip_sides :: Impose "no-slip" at lateral boundaries.
192  C     no_slip_bottom :: Impose "no-slip" at bottom boundary.  C     no_slip_bottom :: Impose "no-slip" at bottom boundary.
193  C     staggerTimeStep :: enable a Stagger time stepping T,S Rho then U,V  C     staggerTimeStep :: enable a Stagger time stepping T,S Rho then U,V
# Line 198  C     tr1Stepping   :: Turns passive tra Line 228  C     tr1Stepping   :: Turns passive tra
228  C     useConstantF  :: Coriolis parameter set to f0  C     useConstantF  :: Coriolis parameter set to f0
229  C     useBetaPlaneF :: Coriolis parameter set to f0 + beta.y  C     useBetaPlaneF :: Coriolis parameter set to f0 + beta.y
230  C     useSphereF    :: Coriolis parameter set to 2.omega.sin(phi)  C     useSphereF    :: Coriolis parameter set to 2.omega.sin(phi)
231    C     useCDscheme   :: use CD-scheme to calculate Coriolis terms.
232  C     useJamartWetPoints :: Use wet-point method for Coriolis (Jamart and Ozer, 1986)  C     useJamartWetPoints :: Use wet-point method for Coriolis (Jamart and Ozer, 1986)
233    C     useJamartMomAdv :: Use wet-point method for V.I. non-linear term
234    C     SadournyCoriolis :: use the enstrophy conserving scheme by Sadourny
235    C     upwindVorticity :: bias interpolation of vorticity in the Coriolis term
236    C     highOrderVorticity :: use 3rd/4th order interp. of vorticity in Coriolis
237    C     useAbsVorticity :: work with f+zeta in Coriolis terms
238  C     implicitDiffusion :: Turns implicit vertical diffusion on  C     implicitDiffusion :: Turns implicit vertical diffusion on
239  C     implicitViscosity :: Turns implicit vertical viscosity on  C     implicitViscosity :: Turns implicit vertical viscosity on
240    C     tempImplVertAdv :: Turns on implicit vertical advection for Temperature
241    C     saltImplVertAdv :: Turns on implicit vertical advection for Salinity
242    C     momImplVertAdv  :: Turns on implicit vertical advection for Momentum
243  C     multiDimAdvection :: Flag that enable multi-dimension advection  C     multiDimAdvection :: Flag that enable multi-dimension advection
244    C     useMultiDimAdvec  :: True if multi-dim advection is used at least once
245  C     forcing_In_AB :: if False, put forcing (Temp,Salt,Tracers) contribution  C     forcing_In_AB :: if False, put forcing (Temp,Salt,Tracers) contribution
246  C                      out off Adams-Bashforth time stepping.  C                      out off Adams-Bashforth time stepping.
247  C     doThetaClimRelax :: Set true if relaxation to temperature  C     doThetaClimRelax :: Set true if relaxation to temperature
# Line 210  C     doSaltClimRelax  :: Set true if re Line 250  C     doSaltClimRelax  :: Set true if re
250  C                        climatology is required.  C                        climatology is required.
251  C     periodicExternalForcing :: Set true if forcing is time-dependant  C     periodicExternalForcing :: Set true if forcing is time-dependant
252  C     usingPCoords     :: Set to indicate that we are working in pressure  C     usingPCoords     :: Set to indicate that we are working in pressure
253  C                        coords.  C                        coords. (jmc: is it still used ?)
254  C     usingZCoords     :: Set to indicate that we are working in height  C     usingZCoords     :: Set to indicate that we are working in height
255  C                        coords.  C                        coords. (jmc: is it still used ?)
256    C     useDynP_inEos_Zc :: use the dynamical pressure in EOS (with Z-coord.)
257    C                         this requires specific code for restart & exchange
258  C     setCenterDr    :: set cell Center depth and put Interface at the middle  C     setCenterDr    :: set cell Center depth and put Interface at the middle
259  C     nonHydrostatic :: Using non-hydrostatic terms  C     nonHydrostatic :: Using non-hydrostatic terms
260  C     quasiHydrostatic :: Using non-hydrostatic terms in hydrostatic algorithm  C     quasiHydrostatic :: Using non-hydrostatic terms in hydrostatic algorithm
# Line 221  C     useSingleCpuIO :: On SGI platforms Line 263  C     useSingleCpuIO :: On SGI platforms
263  C                       slow (f77) or does not work (f90).  When  C                       slow (f77) or does not work (f90).  When
264  C                       useSingleCpuIO is set, mdsio_writefield.F  C                       useSingleCpuIO is set, mdsio_writefield.F
265  C                       outputs from master mpi process only.  C                       outputs from master mpi process only.
266  C     allowFreezing  :: Allows water to freeze and form ice  C     allowFreezing  :: Allows surface water to freeze and form ice
267    C     useOldFreezing :: use the old version (before checkpoint52a_pre, 2003-11-12)
268  C     groundAtK1  :: put the surface(k=1) at the Lower Boundary (=ground)  C     groundAtK1  :: put the surface(k=1) at the Lower Boundary (=ground)
269        COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid,        COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid,
270       & usingCurvilinearGrid,       & usingCurvilinearGrid, usingCylindricalGrid,
271       & no_slip_sides,no_slip_bottom,       & no_slip_sides,no_slip_bottom,
272       & staggerTimeStep,       & staggerTimeStep,
273       & momViscosity, momAdvection, momForcing, useCoriolis,       & momViscosity, momAdvection, momForcing, useCoriolis,
# Line 236  C     groundAtK1  :: put the surface(k=1 Line 279  C     groundAtK1  :: put the surface(k=1
279       & momStepping, tempStepping, saltStepping, tr1Stepping,       & momStepping, tempStepping, saltStepping, tr1Stepping,
280       & metricTerms, usingSphericalPolarMTerms, useNHMTerms,       & metricTerms, usingSphericalPolarMTerms, useNHMTerms,
281       & useConstantF, useBetaPlaneF, useSphereF,       & useConstantF, useBetaPlaneF, useSphereF,
282       & useEnergyConservingCoriolis, useJamartWetPoints,       & useCDscheme,
283         & useEnergyConservingCoriolis, useJamartWetPoints, useJamartMomAdv,
284         & SadournyCoriolis, upwindVorticity, highOrderVorticity,
285         & useAbsVorticity,
286       & implicitDiffusion, implicitViscosity,       & implicitDiffusion, implicitViscosity,
287       & multiDimAdvection, forcing_In_AB,       & tempImplVertAdv, saltImplVertAdv, momImplVertAdv,
288         & multiDimAdvection, useMultiDimAdvec, forcing_In_AB,
289       & doThetaClimRelax, doSaltClimRelax, doTr1ClimRelax,       & doThetaClimRelax, doSaltClimRelax, doTr1ClimRelax,
290       & periodicExternalForcing,       & periodicExternalForcing,
291       & usingPCoords, usingZCoords, setCenterDr,       & usingPCoords, usingZCoords, useDynP_inEos_Zc, setCenterDr,
292       & nonHydrostatic, quasiHydrostatic, globalFiles, useSingleCpuIO,       & nonHydrostatic, quasiHydrostatic, globalFiles, useSingleCpuIO,
293       & allowFreezing, groundAtK1,       & allowFreezing, useOldFreezing, groundAtK1,
294       & usePickupBeforeC35, debugMode,       & usePickupBeforeC35, usePickupBeforeC54, debugMode,
295       & readPickupWithTracer, writePickupWithTracer       & readPickupWithTracer, writePickupWithTracer
296        LOGICAL usingCartesianGrid        LOGICAL usingCartesianGrid
297        LOGICAL usingSphericalPolarGrid        LOGICAL usingSphericalPolarGrid
298          LOGICAL usingCylindricalGrid
299        LOGICAL usingCurvilinearGrid        LOGICAL usingCurvilinearGrid
300        LOGICAL usingSphericalPolarMTerms        LOGICAL usingSphericalPolarMTerms
301        LOGICAL useNHMTerms        LOGICAL useNHMTerms
# Line 279  C     groundAtK1  :: put the surface(k=1 Line 327  C     groundAtK1  :: put the surface(k=1
327        LOGICAL useConstantF        LOGICAL useConstantF
328        LOGICAL useBetaPlaneF        LOGICAL useBetaPlaneF
329        LOGICAL useSphereF        LOGICAL useSphereF
330          LOGICAL useCDscheme
331        LOGICAL useEnergyConservingCoriolis        LOGICAL useEnergyConservingCoriolis
332        LOGICAL useJamartWetPoints        LOGICAL useJamartWetPoints
333          LOGICAL useJamartMomAdv
334          LOGICAL SadournyCoriolis
335          LOGICAL upwindVorticity
336          LOGICAL highOrderVorticity
337          LOGICAL useAbsVorticity
338        LOGICAL implicitDiffusion        LOGICAL implicitDiffusion
339        LOGICAL implicitViscosity        LOGICAL implicitViscosity
340          LOGICAL tempImplVertAdv
341          LOGICAL saltImplVertAdv
342          LOGICAL momImplVertAdv
343        LOGICAL multiDimAdvection        LOGICAL multiDimAdvection
344          LOGICAL useMultiDimAdvec
345        LOGICAL forcing_In_AB        LOGICAL forcing_In_AB
346        LOGICAL doThetaClimRelax        LOGICAL doThetaClimRelax
347        LOGICAL doSaltClimRelax        LOGICAL doSaltClimRelax
# Line 291  C     groundAtK1  :: put the surface(k=1 Line 349  C     groundAtK1  :: put the surface(k=1
349        LOGICAL periodicExternalForcing        LOGICAL periodicExternalForcing
350        LOGICAL usingPCoords        LOGICAL usingPCoords
351        LOGICAL usingZCoords        LOGICAL usingZCoords
352          LOGICAL useDynP_inEos_Zc
353        LOGICAL setCenterDr        LOGICAL setCenterDr
354        LOGICAL nonHydrostatic        LOGICAL nonHydrostatic
355        LOGICAL quasiHydrostatic        LOGICAL quasiHydrostatic
356        LOGICAL globalFiles        LOGICAL globalFiles
357        LOGICAL useSingleCpuIO        LOGICAL useSingleCpuIO
358        LOGICAL allowFreezing        LOGICAL allowFreezing
359          LOGICAL useOldFreezing
360        LOGICAL groundAtK1        LOGICAL groundAtK1
361        LOGICAL usePickupBeforeC35        LOGICAL usePickupBeforeC35
362          LOGICAL usePickupBeforeC54
363        LOGICAL debugMode        LOGICAL debugMode
364        LOGICAL readPickupWithTracer        LOGICAL readPickupWithTracer
365        LOGICAL writePickupWithTracer        LOGICAL writePickupWithTracer
366    
367  C--   COMMON /PARM_R/ "Real" valued parameters used by the model.  C--   COMMON /PARM_R/ "Real" valued parameters used by the model.
368  C     gg2dTargetResidual  C     cg2dTargetResidual
369  C          :: Target residual for cg2d solver; no unit (RHS normalisation)  C          :: Target residual for cg2d solver; no unit (RHS normalisation)
370  C     cg2dTargetResWunit  C     cg2dTargetResWunit
371  C          :: Target residual for cg2d solver; W unit (No RHS normalisation)  C          :: Target residual for cg2d solver; W unit (No RHS normalisation)
# Line 324  C           number of iterations for con Line 385  C           number of iterations for con
385  C           drop form 192 -> 134! Need to investigate this further!  C           drop form 192 -> 134! Need to investigate this further!
386  C           For now I have introduced a parameter cg2dpcOffDFac which  C           For now I have introduced a parameter cg2dpcOffDFac which
387  C           defaults to 0.51 but can be set at runtime.  C           defaults to 0.51 but can be set at runtime.
 C     delP      :: Vertical grid spacing ( Pa ).  
 C     delZ      :: Vertical grid spacing ( m  ).  
388  C     delR      :: Vertical grid spacing ( units of r ).  C     delR      :: Vertical grid spacing ( units of r ).
389  C     delRc     :: Vertical grid spacing between cell centers (r unit).  C     delRc     :: Vertical grid spacing between cell centers (r unit).
390  C     delX      :: Separation between cell faces (m) or (deg), depending  C     delX      :: Separation between cell faces (m) or (deg), depending
# Line 347  C     f0        :: Reference coriolis pa Line 406  C     f0        :: Reference coriolis pa
406  C                 ( Southern edge f for beta plane )  C                 ( Southern edge f for beta plane )
407  C     beta      :: df/dy ( s^-1.m^-1 )  C     beta      :: df/dy ( s^-1.m^-1 )
408  C     omega     :: Angular velocity ( rad/s )  C     omega     :: Angular velocity ( rad/s )
409    C     rotationPeriod :: Rotation period (s) (= 2.pi/omega)
410  C     viscAh    :: Eddy viscosity coeff. for mixing of  C     viscAh    :: Eddy viscosity coeff. for mixing of
411  C                 momentum laterally ( m^2/s )  C                 momentum laterally ( m^2/s )
 C     viscAz    :: Eddy viscosity coeff. for mixing of  
 C                 momentum vertically ( m^2/s )  
 C     viscAp    :: Eddy viscosity coeff. for mixing of  
 C                 momentum vertically ( Pa^2/s )  
412  C     viscAr    :: Eddy viscosity coeff. for mixing of  C     viscAr    :: Eddy viscosity coeff. for mixing of
413  C                 momentum vertically ( units of r^2/s )  C                 momentum vertically ( units of r^2/s )
414  C     viscA4    :: Biharmonic viscosity coeff. for mixing of  C     viscA4    :: Biharmonic viscosity coeff. for mixing of
415  C                 momentum laterally ( m^4/s )  C                 momentum laterally ( m^4/s )
416    C     viscC2leith :: Leith non-dimensional viscosity factor
417    C     viscAhMax :: Maximum eddy viscosity coeff. for mixing of
418    C                 momentum laterally ( m^2/s )
419    C     viscA4Max :: Maximum biharmonic viscosity coeff. for mixing of
420    C                 momentum laterally ( m^4/s )
421    C     viscAhGrid:: non-dimensional grid-size dependent viscosity
422    C     viscA4Grid:: non-dimensional grid-size dependent bi-harmonic viscosity
423    C     viscC4leith :: Leith non-dimensional viscosity factor
424  C     diffKhT   :: Laplacian diffusion coeff. for mixing of  C     diffKhT   :: Laplacian diffusion coeff. for mixing of
425  C                 heat laterally ( m^2/s )  C                 heat laterally ( m^2/s )
 C     diffKzT   :: Laplacian diffusion coeff. for mixing of  
 C                 heat vertically ( m^2/s )  
 C     diffKpT   :: Laplacian diffusion coeff. for mixing of  
 C                 heat vertically ( Pa^2/s )  
426  C     diffKrT   :: Laplacian diffusion coeff. for mixing of  C     diffKrT   :: Laplacian diffusion coeff. for mixing of
427  C                 heat vertically ( units of r^2/s )  C                 heat vertically ( units of r^2/s )
428  C     diffK4T   :: Biharmonic diffusion coeff. for mixing of  C     diffK4T   :: Biharmonic diffusion coeff. for mixing of
429  C                 heat laterally ( m^4/s )  C                 heat laterally ( m^4/s )
430  C     diffKhS  ::  Laplacian diffusion coeff. for mixing of  C     diffKhS  ::  Laplacian diffusion coeff. for mixing of
431  C                 salt laterally ( m^2/s )  C                 salt laterally ( m^2/s )
 C     diffKzS   :: Laplacian diffusion coeff. for mixing of  
 C                 salt vertically ( m^2/s )  
 C     diffKpS   :: Laplacian diffusion coeff. for mixing of  
 C                 salt vertically ( Pa^2/s )  
432  C     diffKrS   :: Laplacian diffusion coeff. for mixing of  C     diffKrS   :: Laplacian diffusion coeff. for mixing of
433  C                 salt vertically ( units of r^2/s )  C                 salt vertically ( units of r^2/s )
434  C     diffK4S   :: Biharmonic diffusion coeff. for mixing of  C     diffK4S   :: Biharmonic diffusion coeff. for mixing of
435  C                 salt laterally ( m^4/s )  C                 salt laterally ( m^4/s )
436    C     diffKrBL79surf :: T/S surface diffusivity (m^2/s) Bryan and Lewis, 1979
437    C     diffKrBL79deep :: T/S deep diffusivity (m^2/s) Bryan and Lewis, 1979
438    C     diffKrBL79scl  :: depth scale for arctan fn (m) Bryan and Lewis, 1979
439    C     diffKrBL79Ho   :: depth offset for arctan fn (m) Bryan and Lewis, 1979
440  C     deltaT    :: Default timestep ( s )  C     deltaT    :: Default timestep ( s )
441  C     deltaTClock  :: Timestep used as model "clock". This determines the  C     deltaTClock  :: Timestep used as model "clock". This determines the
442  C                    IO frequencies and is used in tagging output. It can  C                    IO frequencies and is used in tagging output. It can
# Line 428  C     tauThetaClimRelax :: Relaxation to Line 488  C     tauThetaClimRelax :: Relaxation to
488  C     lambdaThetaClimRelax :: Inverse time scale for relaxation ( 1/s ).  C     lambdaThetaClimRelax :: Inverse time scale for relaxation ( 1/s ).
489  C     tauSaltClimRelax :: Relaxation to climatology time scale ( s ).  C     tauSaltClimRelax :: Relaxation to climatology time scale ( s ).
490  C     lambdaSaltClimRelax :: Inverse time scale for relaxation ( 1/s ).  C     lambdaSaltClimRelax :: Inverse time scale for relaxation ( 1/s ).
491    C     latBandClimRelax :: latitude band where Relaxation to Clim. is applied,
492    C                         i.e. where |yC| <= latBandClimRelax
493  C     externForcingPeriod :: Is the period of which forcing varies (eg. 1 month)  C     externForcingPeriod :: Is the period of which forcing varies (eg. 1 month)
494  C     externForcingCycle :: Is the repeat time of the forcing (eg. 1 year)  C     externForcingCycle :: Is the repeat time of the forcing (eg. 1 year)
495  C                          (note: externForcingCycle must be an integer  C                          (note: externForcingCycle must be an integer
# Line 449  C     bottomDragLinear   :: Drag coeffic Line 511  C     bottomDragLinear   :: Drag coeffic
511  C      --"-"--  Quadratic  ( linear: 1/s, quadratic: 1/m )  C      --"-"--  Quadratic  ( linear: 1/s, quadratic: 1/m )
512        COMMON /PARM_R/ cg2dTargetResidual, cg2dTargetResWunit,        COMMON /PARM_R/ cg2dTargetResidual, cg2dTargetResWunit,
513       & cg2dpcOffDFac, cg3dTargetResidual,       & cg2dpcOffDFac, cg3dTargetResidual,
514       & delP, delZ, delR, delRc, delX, delY,       & delR, delRc, delX, delY,
515       & deltaT, deltaTmom, deltaTtracer, deltaTfreesurf, deltaTClock,       & deltaT, deltaTmom, deltaTtracer, deltaTfreesurf, deltaTClock,
516       & abeps, startTime,       & abeps, startTime,
517       & phiMin, thetaMin, rSphere, recip_RSphere, f0, beta,       & phiMin, thetaMin, rSphere, recip_RSphere, f0, beta,
518       & fCori, fCoriG, fCoriCos,       & fCori, fCoriG, fCoriCos,
519       & viscAh,  viscAz,  viscA4,  viscAr, viscAstrain, viscAtension,       & viscAh,  viscAhMax, viscAhGrid, viscC2leith,
520       & diffKhT, diffKzT, diffK4T, diffKrT,       & viscA4,  viscA4Max, viscA4Grid, viscC4leith,
521       & diffKhS, diffKzS, diffK4S, diffKrS,       & viscAr, viscAstrain, viscAtension,
522         & diffKhT, diffK4T, diffKrT,
523         & diffKhS, diffK4S, diffKrS,
524         & diffKrBL79surf, diffKrBL79deep, diffKrBL79scl, diffKrBL79Ho,
525       & delT, tauCD, rCD, freeSurfFac, implicSurfPress, implicDiv2Dflow,       & delT, tauCD, rCD, freeSurfFac, implicSurfPress, implicDiv2Dflow,
526       & hFacMin, hFacMinDz, hFacInf, hFacSup,       & hFacMin, hFacMinDz, hFacInf, hFacSup,
527       & gravity, recip_Gravity, gBaro, rhonil, recip_rhonil,       & gravity, recip_Gravity, gBaro, rhonil, recip_rhonil,
528       & recip_rhoConst, rhoConst,       & recip_rhoConst, rhoConst,
529       & rhoConstFresh, convertEmP2rUnit, tRef, sRef,       & rhoConstFresh, convertEmP2rUnit, tRef, sRef,
530       & endTime, chkPtFreq, pchkPtFreq, dumpFreq,       & endTime, chkPtFreq, pchkPtFreq, dumpFreq, adjDumpFreq,
531       & diagFreq, taveFreq, tave_lastIter, monitorFreq,       & diagFreq, taveFreq, tave_lastIter, monitorFreq,
532       & afFacMom, vfFacMom, pfFacMom, cfFacMom, foFacMom, mtFacMom,       & afFacMom, vfFacMom, pfFacMom, cfFacMom, foFacMom, mtFacMom,
533       & cosPower, cAdjFreq, omega,       & cosPower, cAdjFreq, omega, rotationPeriod,
534       & tauThetaClimRelax, lambdaThetaClimRelax,       & tauThetaClimRelax, lambdaThetaClimRelax,
535       & tauSaltClimRelax, lambdaSaltClimRelax,       & tauSaltClimRelax, lambdaSaltClimRelax,
536       & tauTr1ClimRelax, lambdaTr1ClimRelax,       & tauTr1ClimRelax, lambdaTr1ClimRelax, latBandClimRelax,
537       & externForcingCycle, externForcingPeriod,       & externForcingCycle, externForcingPeriod,
538       & convertFW2Salt, temp_EvPrRn, salt_EvPrRn, trac_EvPrRn,       & convertFW2Salt, temp_EvPrRn, salt_EvPrRn, trac_EvPrRn,
539       & viscAp, diffKpT, diffKpS, hFacMinDr, hFacMinDp,       & hFacMinDr, hFacMinDp,
540       & horiVertRatio, recip_horiVertRatio,       & horiVertRatio, recip_horiVertRatio,
541       & ivdc_kappa, Ro_SeaLevel,       & ivdc_kappa, Ro_SeaLevel,
542       & bottomDragLinear,bottomDragQuadratic       & bottomDragLinear,bottomDragQuadratic,
543         & tCyl
544    
545        _RL cg2dTargetResidual        _RL cg2dTargetResidual
546        _RL cg2dTargetResWunit        _RL cg2dTargetResWunit
547        _RL cg3dTargetResidual        _RL cg3dTargetResidual
548        _RL cg2dpcOffDFac        _RL cg2dpcOffDFac
       _RL delZ(Nr)  
       _RL delP(Nr)  
549        _RL delR(Nr)        _RL delR(Nr)
550        _RL delRc(Nr+1)        _RL delRc(Nr+1)
551        _RL delX(Nx)        _RL delX(Nx)
# Line 508  C      --"-"--  Quadratic  ( linear: 1/s Line 572  C      --"-"--  Quadratic  ( linear: 1/s
572        _RL hFacSup        _RL hFacSup
573        _RL beta        _RL beta
574        _RL viscAh        _RL viscAh
575          _RL viscAhMax
576          _RL viscAhGrid
577          _RL viscC2leith
578        _RL viscAstrain        _RL viscAstrain
579        _RL viscAtension        _RL viscAtension
       _RL viscAz  
       _RL viscAp  
580        _RL viscAr        _RL viscAr
581        _RL viscA4        _RL viscA4
582          _RL viscA4Max
583          _RL viscA4Grid
584          _RL viscC4leith
585        _RL diffKhT        _RL diffKhT
586        _RL diffKrT        _RL diffKrT
       _RL diffKzT  
       _RL diffKpT  
587        _RL diffK4T        _RL diffK4T
588        _RL diffKhS        _RL diffKhS
589        _RL diffKrS        _RL diffKrS
       _RL diffKzS  
       _RL diffKpS  
590        _RL diffK4S        _RL diffK4S
591          _RL diffKrBL79surf
592          _RL diffKrBL79deep
593          _RL diffKrBL79scl
594          _RL diffKrBL79Ho
595        _RL delt        _RL delt
596        _RL tauCD        _RL tauCD
597        _RL rCD        _RL rCD
# Line 546  C      --"-"--  Quadratic  ( linear: 1/s Line 614  C      --"-"--  Quadratic  ( linear: 1/s
614        _RL chkPtFreq        _RL chkPtFreq
615        _RL pChkPtFreq        _RL pChkPtFreq
616        _RL dumpFreq        _RL dumpFreq
617          _RL adjDumpFreq
618        _RL diagFreq        _RL diagFreq
619        _RL taveFreq        _RL taveFreq
620        _RL tave_lastIter        _RL tave_lastIter
# Line 559  C      --"-"--  Quadratic  ( linear: 1/s Line 628  C      --"-"--  Quadratic  ( linear: 1/s
628        _RL cosPower        _RL cosPower
629        _RL cAdjFreq        _RL cAdjFreq
630        _RL omega        _RL omega
631          _RL rotationPeriod
632        _RL tauThetaClimRelax        _RL tauThetaClimRelax
633        _RL lambdaThetaClimRelax        _RL lambdaThetaClimRelax
634        _RL tauSaltClimRelax        _RL tauSaltClimRelax
635        _RL lambdaSaltClimRelax        _RL lambdaSaltClimRelax
636        _RL tauTr1ClimRelax        _RL tauTr1ClimRelax
637        _RL lambdaTr1ClimRelax        _RL lambdaTr1ClimRelax
638          _RL latBandClimRelax
639        _RL externForcingCycle        _RL externForcingCycle
640        _RL externForcingPeriod        _RL externForcingPeriod
641        _RL convertFW2Salt        _RL convertFW2Salt
# Line 577  C      --"-"--  Quadratic  ( linear: 1/s Line 648  C      --"-"--  Quadratic  ( linear: 1/s
648        _RL Ro_SeaLevel        _RL Ro_SeaLevel
649        _RL bottomDragLinear        _RL bottomDragLinear
650        _RL bottomDragQuadratic        _RL bottomDragQuadratic
651          _RL tCyl
652    
653        COMMON /PARM_A/ HeatCapacity_Cp,recip_Cp,  C--   COMMON /PARM_A/ Thermodynamics constants ?
654       &                Lamba_theta        COMMON /PARM_A/ HeatCapacity_Cp,recip_Cp
655        _RL HeatCapacity_Cp        _RL HeatCapacity_Cp
       _RL Lamba_theta  
656        _RL recip_Cp        _RL recip_Cp
657    
658  CmlC Equation of State (polynomial coeffients)  C--   COMMON /PARM_ATM/ Atmospheric physical parameters (Ideal Gas EOS, ...)
659  Cml      COMMON /PARM_EOS_NL/ eosC,eosSig0,eosRefT,eosRefS  C     celsius2K :: convert centigrade (Celsius) degree to Kelvin
 Cml      _RL eosC(9,Nr+1),eosSig0(Nr+1),eosRefT(Nr+1),eosRefS(Nr+1)  
 CmlC Linear equation of state  
 CmlC     tAlpha    :: Linear EOS thermal expansion coefficient ( 1/degree ).  
 CmlC     sBeta     :: Linear EOS haline contraction coefficient.  
 Cml      COMMON /PARM_EOS_LIN/ tAlpha,sBeta,eosType  
 Cml      _RL tAlpha  
 Cml      _RL sBeta  
   
 C Atmospheric physical parameters (Ideal Gas EOS, ...)  
660  C     atm_Po    :: standard reference pressure  C     atm_Po    :: standard reference pressure
661  C     atm_Cp    :: specific heat (Cp) of the (dry) air at constant pressure  C     atm_Cp    :: specific heat (Cp) of the (dry) air at constant pressure
662  C     atm_Rd    :: gas constant for dry air  C     atm_Rd    :: gas constant for dry air
663  C     atm_kappa :: kappa = R/Cp (R: constant of Ideal Gas EOS)  C     atm_kappa :: kappa = R/Cp (R: constant of Ideal Gas EOS)
664    C     atm_Rq    :: water vapour specific volume anomaly relative to dry air
665    C                  (e.g. typical value = (29/18 -1) 10^-3 with q [g/kg])
666  C     integr_GeoPot :: option to select the way we integrate the geopotential  C     integr_GeoPot :: option to select the way we integrate the geopotential
667  C                     (still a subject of discussions ...)  C                     (still a subject of discussions ...)
668  C     selectFindRoSurf :: select the way surf. ref. pressure (=Ro_surf) is  C     selectFindRoSurf :: select the way surf. ref. pressure (=Ro_surf) is
669  C             derived from the orography. Implemented: 0,1 (see INI_P_GROUND)  C             derived from the orography. Implemented: 0,1 (see INI_P_GROUND)
670        COMMON /PARM_ATM/ atm_Cp, atm_Rd, atm_kappa, atm_Po,        COMMON /PARM_ATM/
671       &                  integr_GeoPot, selectFindRoSurf       &            celsius2K,
672        _RL atm_Po, atm_Cp, atm_Rd, atm_kappa       &            atm_Cp, atm_Rd, atm_kappa, atm_Rq, atm_Po,
673         &            integr_GeoPot, selectFindRoSurf
674          _RL celsius2K
675          _RL atm_Po, atm_Cp, atm_Rd, atm_kappa, atm_Rq
676        INTEGER integr_GeoPot, selectFindRoSurf        INTEGER integr_GeoPot, selectFindRoSurf
677    
678  C Logical flags for selecting packages  C Logical flags for selecting packages
679          LOGICAL usePP81
680          LOGICAL useMY82
681        LOGICAL useKPP        LOGICAL useKPP
682        LOGICAL useGMRedi        LOGICAL useGMRedi
683        LOGICAL useOBCS        LOGICAL useOBCS
684        LOGICAL useAIM        LOGICAL useAIM
685          LOGICAL useLand
686        LOGICAL useGrdchk        LOGICAL useGrdchk
687        LOGICAL useECCO        LOGICAL useECCO
688        LOGICAL useSHAP_FILT        LOGICAL useSHAP_FILT
# Line 621  C Logical flags for selecting packages Line 691  C Logical flags for selecting packages
691        LOGICAL usePTRACERS        LOGICAL usePTRACERS
692        LOGICAL useSBO        LOGICAL useSBO
693        LOGICAL useSEAICE        LOGICAL useSEAICE
694  cswdblk -- add ---        LOGICAL useBulkForce
695        LOGICAL useBulkforce        LOGICAL useThSIce
696        LOGICAL useThermSEAICE        LOGICAL usefizhi
697  cswdblk --- end add ---        LOGICAL usegridalt
698          LOGICAL usediagnostics
699          LOGICAL useEBM
700        COMMON /PARM_PACKAGES/        COMMON /PARM_PACKAGES/
701       &        useKPP, useGMRedi, useOBCS, useAIM, useECCO,       &        useKPP, useGMRedi, useOBCS, useAIM, useLand, useECCO,
702       &        useSHAP_FILT, useZONAL_FILT, useGrdchk, useFLT,       &        useSHAP_FILT, useZONAL_FILT, useGrdchk, useFLT,
703       &        usePTRACERS,  useSBO, useSEAICE,       &        usePTRACERS,  useSBO, useSEAICE, useThSIce, useBulkForce,
704  cswdblk -- add ---       &        usefizhi,  usegridalt, usediagnostics, useEBM,
705       &        useThermSEAICE, useBulkforce       &        usePP81, useMY82
706  cswdblk --- end add ---  
707    C     Run-time flags for early-initialization of MNC
708          LOGICAL
709         &     useMNC,
710         &     mnc_use_indir, mnc_use_outdir, mnc_outdir_date,
711         &     mnc_echo_gvtypes, mnc_pickup_write, mnc_pickup_read,
712         &     mnc_use_for_mon
713          CHARACTER*(MAX_LEN_FNAM) mnc_outdir_str
714          CHARACTER*(MAX_LEN_FNAM) mnc_indir_str
715          CHARACTER*(MAX_LEN_FNAM) the_run_name
716          COMMON /PARM_MNC/
717         &     useMNC,
718         &     mnc_use_indir, mnc_use_outdir, mnc_outdir_date,
719         &     mnc_echo_gvtypes, mnc_pickup_write, mnc_pickup_read,
720         &     mnc_use_for_mon,
721         &     mnc_outdir_str, mnc_indir_str,
722         &     the_run_name
723    
724    
725    CEH3 ;;; Local Variables: ***
726    CEH3 ;;; mode:fortran ***
727    CEH3 ;;; End: ***

Legend:
Removed from v.1.86  
changed lines
  Added in v.1.123

  ViewVC Help
Powered by ViewVC 1.1.22