/[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.111 by adcroft, Wed Jun 2 13:23:55 2004 UTC revision 1.122 by edhill, Sat Sep 4 18:19:21 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
# Line 79  C                        LINEAR, POLY3, Line 81  C                        LINEAR, POLY3,
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, pickupSuff,       &                eosType, pickupSuff,
# Line 93  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 110  C     cg2dMaxIters        :: Maximum num Line 113  C     cg2dMaxIters        :: Maximum num
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 126  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    
140        COMMON /PARM_I/        COMMON /PARM_I/
141       &        cg2dMaxIters,       &        cg2dMaxIters,
142       &        cg2dChkResFreq,       &        cg2dChkResFreq, cg2dPreCondFreq,
143       &        cg3dMaxIters,       &        cg3dMaxIters,
144       &        cg3dChkResFreq,       &        cg3dChkResFreq,
145       &        nIter0, nTimeSteps, nEndIter,       &        nIter0, nTimeSteps, nEndIter,
# Line 137  C                           =0 (default) Line 147  C                           =0 (default)
147       &        writeStatePrec, nCheckLev,       &        writeStatePrec, nCheckLev,
148       &        writeBinaryPrec, readBinaryPrec,       &        writeBinaryPrec, readBinaryPrec,
149       &        nonlinFreeSurf, select_rStar,       &        nonlinFreeSurf, select_rStar,
150       &        tempAdvScheme, saltAdvScheme, tracerAdvScheme,       &        tempAdvScheme, tempVertAdvScheme,
151         &        saltAdvScheme, saltVertAdvScheme,
152         &        tracerAdvScheme,
153       &        debugLevel       &        debugLevel
154        INTEGER cg2dMaxIters        INTEGER cg2dMaxIters
155        INTEGER cg2dChkResFreq        INTEGER cg2dChkResFreq
156          INTEGER cg2dPreCondFreq
157        INTEGER cg3dMaxIters        INTEGER cg3dMaxIters
158        INTEGER cg3dChkResFreq        INTEGER cg3dChkResFreq
159        INTEGER nIter0        INTEGER nIter0
# Line 153  C                           =0 (default) Line 166  C                           =0 (default)
166        INTEGER nCheckLev        INTEGER nCheckLev
167        INTEGER nonlinFreeSurf        INTEGER nonlinFreeSurf
168        INTEGER select_rStar        INTEGER select_rStar
169        INTEGER tempAdvScheme        INTEGER tempAdvScheme, tempVertAdvScheme
170        INTEGER saltAdvScheme        INTEGER saltAdvScheme, saltVertAdvScheme
171        INTEGER tracerAdvScheme        INTEGER tracerAdvScheme
172        INTEGER debugLevel        INTEGER debugLevel
173    
# Line 171  C     usingCartesianGrid :: If TRUE grid Line 184  C     usingCartesianGrid :: If TRUE grid
184  C                          coordinate frame.  C                          coordinate frame.
185  C     usingSphericalPolarGrid :: If TRUE grid generation will be in a  C     usingSphericalPolarGrid :: If TRUE grid generation will be in a
186  C                               spherical polar frame.  C                               spherical polar frame.
187    C     usingCylindricalGrid :: If TRUE grid generation will be Cylindrical
188  C     no_slip_sides :: Impose "no-slip" at lateral boundaries.  C     no_slip_sides :: Impose "no-slip" at lateral boundaries.
189  C     no_slip_bottom :: Impose "no-slip" at bottom boundary.  C     no_slip_bottom :: Impose "no-slip" at bottom boundary.
190  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 213  C     useBetaPlaneF :: Coriolis paramete Line 227  C     useBetaPlaneF :: Coriolis paramete
227  C     useSphereF    :: Coriolis parameter set to 2.omega.sin(phi)  C     useSphereF    :: Coriolis parameter set to 2.omega.sin(phi)
228  C     useCDscheme   :: use CD-scheme to calculate Coriolis terms.  C     useCDscheme   :: use CD-scheme to calculate Coriolis terms.
229  C     useJamartWetPoints :: Use wet-point method for Coriolis (Jamart and Ozer, 1986)  C     useJamartWetPoints :: Use wet-point method for Coriolis (Jamart and Ozer, 1986)
230    C     useJamartMomAdv :: Use wet-point method for V.I. non-linear term
231  C     SadournyCoriolis :: use the enstrophy conserving scheme by Sadourny  C     SadournyCoriolis :: use the enstrophy conserving scheme by Sadourny
232  C     upwindVorticity :: bias interpolation of vorticity in the Coriolis term  C     upwindVorticity :: bias interpolation of vorticity in the Coriolis term
233  C     highOrderVorticity :: use 3rd/4th order interp. of vorticity in Coriolis  C     highOrderVorticity :: use 3rd/4th order interp. of vorticity in Coriolis
# Line 223  C     tempImplVertAdv :: Turns on implic Line 238  C     tempImplVertAdv :: Turns on implic
238  C     saltImplVertAdv :: Turns on implicit vertical advection for Salinity  C     saltImplVertAdv :: Turns on implicit vertical advection for Salinity
239  C     momImplVertAdv  :: Turns on implicit vertical advection for Momentum  C     momImplVertAdv  :: Turns on implicit vertical advection for Momentum
240  C     multiDimAdvection :: Flag that enable multi-dimension advection  C     multiDimAdvection :: Flag that enable multi-dimension advection
241    C     useMultiDimAdvec  :: True if multi-dim advection is used at least once
242  C     forcing_In_AB :: if False, put forcing (Temp,Salt,Tracers) contribution  C     forcing_In_AB :: if False, put forcing (Temp,Salt,Tracers) contribution
243  C                      out off Adams-Bashforth time stepping.  C                      out off Adams-Bashforth time stepping.
244  C     doThetaClimRelax :: Set true if relaxation to temperature  C     doThetaClimRelax :: Set true if relaxation to temperature
# Line 248  C     allowFreezing  :: Allows surface w Line 264  C     allowFreezing  :: Allows surface w
264  C     useOldFreezing :: use the old version (before checkpoint52a_pre, 2003-11-12)  C     useOldFreezing :: use the old version (before checkpoint52a_pre, 2003-11-12)
265  C     groundAtK1  :: put the surface(k=1) at the Lower Boundary (=ground)  C     groundAtK1  :: put the surface(k=1) at the Lower Boundary (=ground)
266        COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid,        COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid,
267       & usingCurvilinearGrid,       & usingCurvilinearGrid, usingCylindricalGrid,
268       & no_slip_sides,no_slip_bottom,       & no_slip_sides,no_slip_bottom,
269       & staggerTimeStep,       & staggerTimeStep,
270       & momViscosity, momAdvection, momForcing, useCoriolis,       & momViscosity, momAdvection, momForcing, useCoriolis,
# Line 261  C     groundAtK1  :: put the surface(k=1 Line 277  C     groundAtK1  :: put the surface(k=1
277       & metricTerms, usingSphericalPolarMTerms, useNHMTerms,       & metricTerms, usingSphericalPolarMTerms, useNHMTerms,
278       & useConstantF, useBetaPlaneF, useSphereF,       & useConstantF, useBetaPlaneF, useSphereF,
279       & useCDscheme,       & useCDscheme,
280       & useEnergyConservingCoriolis, useJamartWetPoints,       & useEnergyConservingCoriolis, useJamartWetPoints, useJamartMomAdv,
281       & SadournyCoriolis, upwindVorticity, highOrderVorticity,       & SadournyCoriolis, upwindVorticity, highOrderVorticity,
282       & useAbsVorticity,       & useAbsVorticity,
283       & implicitDiffusion, implicitViscosity,       & implicitDiffusion, implicitViscosity,
284       & tempImplVertAdv, saltImplVertAdv, momImplVertAdv,       & tempImplVertAdv, saltImplVertAdv, momImplVertAdv,
285       & multiDimAdvection, forcing_In_AB,       & multiDimAdvection, useMultiDimAdvec, forcing_In_AB,
286       & doThetaClimRelax, doSaltClimRelax, doTr1ClimRelax,       & doThetaClimRelax, doSaltClimRelax, doTr1ClimRelax,
287       & periodicExternalForcing,       & periodicExternalForcing,
288       & usingPCoords, usingZCoords, useDynP_inEos_Zc, setCenterDr,       & usingPCoords, usingZCoords, useDynP_inEos_Zc, setCenterDr,
289       & nonHydrostatic, quasiHydrostatic, globalFiles, useSingleCpuIO,       & nonHydrostatic, quasiHydrostatic, globalFiles, useSingleCpuIO,
290       & allowFreezing, useOldFreezing, groundAtK1,       & allowFreezing, useOldFreezing, groundAtK1,
291       & usePickupBeforeC35, debugMode,       & usePickupBeforeC35, usePickupBeforeC54, debugMode,
292       & readPickupWithTracer, writePickupWithTracer       & readPickupWithTracer, writePickupWithTracer
293        LOGICAL usingCartesianGrid        LOGICAL usingCartesianGrid
294        LOGICAL usingSphericalPolarGrid        LOGICAL usingSphericalPolarGrid
295          LOGICAL usingCylindricalGrid
296        LOGICAL usingCurvilinearGrid        LOGICAL usingCurvilinearGrid
297        LOGICAL usingSphericalPolarMTerms        LOGICAL usingSphericalPolarMTerms
298        LOGICAL useNHMTerms        LOGICAL useNHMTerms
# Line 310  C     groundAtK1  :: put the surface(k=1 Line 327  C     groundAtK1  :: put the surface(k=1
327        LOGICAL useCDscheme        LOGICAL useCDscheme
328        LOGICAL useEnergyConservingCoriolis        LOGICAL useEnergyConservingCoriolis
329        LOGICAL useJamartWetPoints        LOGICAL useJamartWetPoints
330          LOGICAL useJamartMomAdv
331        LOGICAL SadournyCoriolis        LOGICAL SadournyCoriolis
332        LOGICAL upwindVorticity        LOGICAL upwindVorticity
333        LOGICAL highOrderVorticity        LOGICAL highOrderVorticity
# Line 320  C     groundAtK1  :: put the surface(k=1 Line 338  C     groundAtK1  :: put the surface(k=1
338        LOGICAL saltImplVertAdv        LOGICAL saltImplVertAdv
339        LOGICAL momImplVertAdv        LOGICAL momImplVertAdv
340        LOGICAL multiDimAdvection        LOGICAL multiDimAdvection
341          LOGICAL useMultiDimAdvec
342        LOGICAL forcing_In_AB        LOGICAL forcing_In_AB
343        LOGICAL doThetaClimRelax        LOGICAL doThetaClimRelax
344        LOGICAL doSaltClimRelax        LOGICAL doSaltClimRelax
# Line 337  C     groundAtK1  :: put the surface(k=1 Line 356  C     groundAtK1  :: put the surface(k=1
356        LOGICAL useOldFreezing        LOGICAL useOldFreezing
357        LOGICAL groundAtK1        LOGICAL groundAtK1
358        LOGICAL usePickupBeforeC35        LOGICAL usePickupBeforeC35
359          LOGICAL usePickupBeforeC54
360        LOGICAL debugMode        LOGICAL debugMode
361        LOGICAL readPickupWithTracer        LOGICAL readPickupWithTracer
362        LOGICAL writePickupWithTracer        LOGICAL writePickupWithTracer
363    
364  C--   COMMON /PARM_R/ "Real" valued parameters used by the model.  C--   COMMON /PARM_R/ "Real" valued parameters used by the model.
365  C     gg2dTargetResidual  C     cg2dTargetResidual
366  C          :: Target residual for cg2d solver; no unit (RHS normalisation)  C          :: Target residual for cg2d solver; no unit (RHS normalisation)
367  C     cg2dTargetResWunit  C     cg2dTargetResWunit
368  C          :: Target residual for cg2d solver; W unit (No RHS normalisation)  C          :: Target residual for cg2d solver; W unit (No RHS normalisation)
# Line 410  C     diffKrS   :: Laplacian diffusion c Line 430  C     diffKrS   :: Laplacian diffusion c
430  C                 salt vertically ( units of r^2/s )  C                 salt vertically ( units of r^2/s )
431  C     diffK4S   :: Biharmonic diffusion coeff. for mixing of  C     diffK4S   :: Biharmonic diffusion coeff. for mixing of
432  C                 salt laterally ( m^4/s )  C                 salt laterally ( m^4/s )
433    C     diffKrBL79surf :: T/S surface diffusivity (m^2/s) Bryan and Lewis, 1979
434    C     diffKrBL79deep :: T/S deep diffusivity (m^2/s) Bryan and Lewis, 1979
435    C     diffKrBL79scl  :: depth scale for arctan fn (m) Bryan and Lewis, 1979
436    C     diffKrBL79Ho   :: depth offset for arctan fn (m) Bryan and Lewis, 1979
437  C     deltaT    :: Default timestep ( s )  C     deltaT    :: Default timestep ( s )
438  C     deltaTClock  :: Timestep used as model "clock". This determines the  C     deltaTClock  :: Timestep used as model "clock". This determines the
439  C                    IO frequencies and is used in tagging output. It can  C                    IO frequencies and is used in tagging output. It can
# Line 494  C      --"-"--  Quadratic  ( linear: 1/s Line 518  C      --"-"--  Quadratic  ( linear: 1/s
518       & viscAr, viscAstrain, viscAtension,       & viscAr, viscAstrain, viscAtension,
519       & diffKhT, diffK4T, diffKrT,       & diffKhT, diffK4T, diffKrT,
520       & diffKhS, diffK4S, diffKrS,       & diffKhS, diffK4S, diffKrS,
521         & diffKrBL79surf, diffKrBL79deep, diffKrBL79scl, diffKrBL79Ho,
522       & delT, tauCD, rCD, freeSurfFac, implicSurfPress, implicDiv2Dflow,       & delT, tauCD, rCD, freeSurfFac, implicSurfPress, implicDiv2Dflow,
523       & hFacMin, hFacMinDz, hFacInf, hFacSup,       & hFacMin, hFacMinDz, hFacInf, hFacSup,
524       & gravity, recip_Gravity, gBaro, rhonil, recip_rhonil,       & gravity, recip_Gravity, gBaro, rhonil, recip_rhonil,
# Line 511  C      --"-"--  Quadratic  ( linear: 1/s Line 536  C      --"-"--  Quadratic  ( linear: 1/s
536       & hFacMinDr, hFacMinDp,       & hFacMinDr, hFacMinDp,
537       & horiVertRatio, recip_horiVertRatio,       & horiVertRatio, recip_horiVertRatio,
538       & ivdc_kappa, Ro_SeaLevel,       & ivdc_kappa, Ro_SeaLevel,
539       & bottomDragLinear,bottomDragQuadratic       & bottomDragLinear,bottomDragQuadratic,
540         & tCyl
541    
542        _RL cg2dTargetResidual        _RL cg2dTargetResidual
543        _RL cg2dTargetResWunit        _RL cg2dTargetResWunit
# Line 559  C      --"-"--  Quadratic  ( linear: 1/s Line 585  C      --"-"--  Quadratic  ( linear: 1/s
585        _RL diffKhS        _RL diffKhS
586        _RL diffKrS        _RL diffKrS
587        _RL diffK4S        _RL diffK4S
588          _RL diffKrBL79surf
589          _RL diffKrBL79deep
590          _RL diffKrBL79scl
591          _RL diffKrBL79Ho
592        _RL delt        _RL delt
593        _RL tauCD        _RL tauCD
594        _RL rCD        _RL rCD
# Line 615  C      --"-"--  Quadratic  ( linear: 1/s Line 645  C      --"-"--  Quadratic  ( linear: 1/s
645        _RL Ro_SeaLevel        _RL Ro_SeaLevel
646        _RL bottomDragLinear        _RL bottomDragLinear
647        _RL bottomDragQuadratic        _RL bottomDragQuadratic
648          _RL tCyl
649    
650  C--   COMMON /PARM_A/ Thermodynamics constants ?  C--   COMMON /PARM_A/ Thermodynamics constants ?
651        COMMON /PARM_A/ HeatCapacity_Cp,recip_Cp        COMMON /PARM_A/ HeatCapacity_Cp,recip_Cp
# Line 642  C             derived from the orography Line 673  C             derived from the orography
673        INTEGER integr_GeoPot, selectFindRoSurf        INTEGER integr_GeoPot, selectFindRoSurf
674    
675  C Logical flags for selecting packages  C Logical flags for selecting packages
676          LOGICAL usePP81
677          LOGICAL useMY82
678        LOGICAL useKPP        LOGICAL useKPP
679        LOGICAL useGMRedi        LOGICAL useGMRedi
680        LOGICAL useOBCS        LOGICAL useOBCS
# Line 665  C Logical flags for selecting packages Line 698  C Logical flags for selecting packages
698       &        useKPP, useGMRedi, useOBCS, useAIM, useLand, useECCO,       &        useKPP, useGMRedi, useOBCS, useAIM, useLand, useECCO,
699       &        useSHAP_FILT, useZONAL_FILT, useGrdchk, useFLT,       &        useSHAP_FILT, useZONAL_FILT, useGrdchk, useFLT,
700       &        usePTRACERS,  useSBO, useSEAICE, useThSIce, useBulkForce,       &        usePTRACERS,  useSBO, useSEAICE, useThSIce, useBulkForce,
701       &        usefizhi,  usegridalt, usediagnostics, useEBM       &        usefizhi,  usegridalt, usediagnostics, useEBM,
702         &        usePP81, useMY82
703    
704  C     Run-time flags for early-initialization of MNC  C     Run-time flags for early-initialization of MNC
705        LOGICAL        LOGICAL
# Line 675  C     Run-time flags for early-initializ Line 709  C     Run-time flags for early-initializ
709       &     mnc_use_for_mon       &     mnc_use_for_mon
710        CHARACTER*(MAX_LEN_FNAM) mnc_outdir_str        CHARACTER*(MAX_LEN_FNAM) mnc_outdir_str
711        CHARACTER*(MAX_LEN_FNAM) mnc_indir_str        CHARACTER*(MAX_LEN_FNAM) mnc_indir_str
712          CHARACTER*(MAX_LEN_FNAM) the_run_name
713        COMMON /PARM_MNC/        COMMON /PARM_MNC/
714       &     useMNC,       &     useMNC,
715       &     mnc_use_indir, mnc_use_outdir, mnc_outdir_date,       &     mnc_use_indir, mnc_use_outdir, mnc_outdir_date,
716       &     mnc_echo_gvtypes, mnc_pickup_write, mnc_pickup_read,       &     mnc_echo_gvtypes, mnc_pickup_write, mnc_pickup_read,
717         &     mnc_use_for_mon,
718       &     mnc_outdir_str, mnc_indir_str,       &     mnc_outdir_str, mnc_indir_str,
719       &     mnc_use_for_mon       &     the_run_name
720    
721    
722  CEH3 ;;; Local Variables: ***  CEH3 ;;; Local Variables: ***

Legend:
Removed from v.1.111  
changed lines
  Added in v.1.122

  ViewVC Help
Powered by ViewVC 1.1.22