/[MITgcm]/MITgcm/model/inc/PARAMS.h
ViewVC logotype

Annotation of /MITgcm/model/inc/PARAMS.h

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.119 - (hide annotations) (download)
Fri Jul 9 22:31:16 2004 UTC (19 years, 10 months ago) by jmc
Branch: MAIN
Changes since 1.118: +6 -3 lines
File MIME type: text/plain
Only update cg2d preconditioner every "cg2dPreCondFreq" iter. (default=1)

1 jmc 1.119 C $Header: /u/gcmpack/MITgcm/model/inc/PARAMS.h,v 1.118 2004/07/07 22:22:18 jmc Exp $
2 mlosch 1.74 C $Name: $
3 cnh 1.1 C
4 cnh 1.63 CBOP
5     C !ROUTINE: PARAMS.h
6     C !INTERFACE:
7     C include PARAMS.h
8     C !DESCRIPTION: \bv
9     C *==========================================================*
10     C | PARAMS.h
11     C | o Header file defining model "parameters".
12     C *==========================================================*
13     C | The values from the model standard input file are
14     C | stored into the variables held here. Notes describing
15     C | the parameters can also be found here.
16     C *==========================================================*
17     C \ev
18     CEOP
19 cnh 1.13
20     C Macros for special grid options
21     #include "PARAMS_MACROS.h"
22 cnh 1.1
23     C-- Contants
24     C Useful physical values
25     Real*8 PI
26     PARAMETER ( PI = 3.14159265358979323844D0 )
27     Real*8 deg2rad
28     PARAMETER ( deg2rad = 2.D0*PI/360.D0 )
29    
30 cnh 1.7 C Symbolic values
31 cnh 1.63 C precXXXX :: Used to indicate what precision to use for
32 cnh 1.7 C dumping model state.
33     INTEGER precFloat32
34 adcroft 1.36 PARAMETER ( precFloat32 = 32 )
35 cnh 1.7 INTEGER precFloat64
36 adcroft 1.36 PARAMETER ( precFloat64 = 64 )
37 cnh 1.63 C UNSET_xxx :: Used to indicate variables that have not been given a value
38 cnh 1.28 Real*8 UNSET_FLOAT8
39     PARAMETER ( UNSET_FLOAT8 = 1.234567D5 )
40     Real*4 UNSET_FLOAT4
41     PARAMETER ( UNSET_FLOAT4 = 1.234567E5 )
42     _RL UNSET_RL
43     PARAMETER ( UNSET_RL = 1.234567D5 )
44     _RS UNSET_RS
45     PARAMETER ( UNSET_RS = 1.234567E5 )
46     INTEGER UNSET_I
47     PARAMETER ( UNSET_I = 123456789 )
48 cnh 1.7
49     C Checkpoint data
50     INTEGER maxNoChkptLev
51     PARAMETER ( maxNoChkptLev = 2 )
52    
53 cnh 1.1 C-- COMMON /PARM_C/ Character valued parameters used by the model.
54 cnh 1.63 C checkPtSuff :: List of checkpoint file suffices
55     C bathyFile :: File containing bathymetry. If not defined bathymetry
56 cnh 1.16 C is taken from inline function.
57 cnh 1.63 C topoFile :: File containing the topography of the surface (unit=m)
58 jmc 1.55 C (mainly used for the atmosphere = ground height).
59 cnh 1.63 C hydrogThetaFile :: File containing initial hydrographic data for potential
60 cnh 1.16 C temperature.
61 cnh 1.63 C hydrogSaltFile :: File containing initial hydrographic data for salinity.
62     C zonalWindFile :: File containing zonal wind data
63     C meridWindFile :: File containing meridional wind data
64     C thetaClimFile :: File containing theta climataology used
65 cnh 1.18 C in relaxation term -lambda(theta-theta*)
66 cnh 1.63 C saltClimFile :: File containing salt climataology used
67 cnh 1.18 C in relaxation term -lambda(salt-salt*)
68 cnh 1.63 C surfQfile :: File containing surface heat flux
69     C surfQswfile :: File containing surface shortwave radiation
70     C dQdTfile :: File containing thermal relaxation coefficient
71     C EmPmRfile :: File containing surface fresh water flux
72 mlosch 1.73 C pLoadFile :: File containing pressure loading
73 cnh 1.63 C buoyancyRelation :: Flag used to indicate which relation to use to
74 cnh 1.26 C get buoyancy.
75 mlosch 1.74 C eosType :: choose the equation of state:
76 jmc 1.87 C LINEAR, POLY3, UNESCO, JMD95Z, JMD95P, MDJWF, IDEALGAS
77 cnh 1.16 COMMON /PARM_C/ checkPtSuff,
78 jmc 1.55 & bathyFile, topoFile,
79     & hydrogThetaFile, hydrogSaltFile,
80 cnh 1.18 & zonalWindFile, meridWindFile, thetaClimFile,
81 adcroft 1.37 & saltClimFile, buoyancyRelation,
82 heimbach 1.45 & EmPmRfile, surfQfile, surfQswfile,
83 heimbach 1.50 & uVelInitFile, vVelInitFile, pSurfInitFile,
84 mlosch 1.74 & dQdTfile, ploadFile,
85 heimbach 1.92 & eosType, pickupSuff,
86 afe 1.116 & mdsioLocalDir
87 cnh 1.7 CHARACTER*(5) checkPtSuff(maxNoChkptLev)
88 jmc 1.55 CHARACTER*(MAX_LEN_FNAM) bathyFile, topoFile
89 cnh 1.16 CHARACTER*(MAX_LEN_FNAM) hydrogThetaFile
90     CHARACTER*(MAX_LEN_FNAM) hydrogSaltFile
91     CHARACTER*(MAX_LEN_FNAM) zonalWindFile
92     CHARACTER*(MAX_LEN_FNAM) meridWindFile
93 cnh 1.18 CHARACTER*(MAX_LEN_FNAM) thetaClimFile
94     CHARACTER*(MAX_LEN_FNAM) saltClimFile
95 adcroft 1.37 CHARACTER*(MAX_LEN_FNAM) surfQfile
96 heimbach 1.45 CHARACTER*(MAX_LEN_FNAM) surfQswfile
97 adcroft 1.37 CHARACTER*(MAX_LEN_FNAM) EmPmRfile
98 cnh 1.26 CHARACTER*(MAX_LEN_FNAM) buoyancyRelation
99 adcroft 1.42 CHARACTER*(MAX_LEN_FNAM) uVelInitFile
100     CHARACTER*(MAX_LEN_FNAM) vVelInitFile
101 adcroft 1.43 CHARACTER*(MAX_LEN_FNAM) pSurfInitFile
102 heimbach 1.50 CHARACTER*(MAX_LEN_FNAM) dQdTfile
103 mlosch 1.73 CHARACTER*(MAX_LEN_FNAM) ploadFile
104 heimbach 1.92 CHARACTER*(MAX_LEN_FNAM) mdsioLocalDir
105 mlosch 1.74 CHARACTER*(6) eosType
106 adcroft 1.90 CHARACTER*(10) pickupSuff
107 cnh 1.7
108 cnh 1.1 C-- COMMON /PARM_I/ Integer valued parameters used by the model.
109 cnh 1.63 C cg2dMaxIters :: Maximum number of iterations in the
110 cnh 1.1 C two-dimensional con. grad solver.
111 cnh 1.63 C cg2dChkResFreq :: Frequency with which to check residual
112 cnh 1.1 C in con. grad solver.
113 jmc 1.119 C cg2dPreCondFreq :: Frequency for updating cg2d preconditioner
114     C (non-linear free-surf.)
115 cnh 1.63 C cg3dMaxIters :: Maximum number of iterations in the
116 cnh 1.33 C three-dimensional con. grad solver.
117 cnh 1.63 C cg3dChkResFreq :: Frequency with which to check residual
118 cnh 1.33 C in con. grad solver.
119 cnh 1.63 C nIter0 :: Start time-step number of for this run
120     C nTimeSteps :: Number of timesteps to execute
121     C numStepsPerPickup :: For offline setup. Frequency of pickup
122 cnh 1.1 C of flow fields.
123 cnh 1.63 C writeStatePrec :: Precision used for writing model state.
124     C writeBinaryPrec :: Precision used for writing binary files
125     C readBinaryPrec :: Precision used for reading binary files
126     C nCheckLev :: Holds current checkpoint level
127     C nonlinFreeSurf :: option related to non-linear free surface
128 jmc 1.55 C =0 Linear free surface ; >0 Non-linear
129 jmc 1.84 C select_rStar :: option related to r* vertical coordinate
130     C =0 (default) use r coord. ; > 0 use r*
131 jmc 1.115 C tempAdvScheme :: Temp. Horiz.Advection scheme selector
132     C tempVertAdvScheme :: Temp. Vert. Advection scheme selector
133     C saltAdvScheme :: Salt. Horiz.advection scheme selector
134     C saltVertAdvScheme :: Salt. Vert. Advection scheme selector
135     C debugLevel :: debug level selector: higher -> more writing
136 cnh 1.34
137 cnh 1.1 COMMON /PARM_I/
138     & cg2dMaxIters,
139 jmc 1.119 & cg2dChkResFreq, cg2dPreCondFreq,
140 cnh 1.33 & cg3dMaxIters,
141     & cg3dChkResFreq,
142 adcroft 1.41 & nIter0, nTimeSteps, nEndIter,
143 cnh 1.7 & numStepsPerPickup,
144     & writeStatePrec, nCheckLev,
145 cnh 1.34 & writeBinaryPrec, readBinaryPrec,
146 jmc 1.84 & nonlinFreeSurf, select_rStar,
147 jmc 1.115 & tempAdvScheme, tempVertAdvScheme,
148     & saltAdvScheme, saltVertAdvScheme,
149     & tracerAdvScheme,
150 heimbach 1.92 & debugLevel
151 cnh 1.1 INTEGER cg2dMaxIters
152     INTEGER cg2dChkResFreq
153 jmc 1.119 INTEGER cg2dPreCondFreq
154 cnh 1.33 INTEGER cg3dMaxIters
155     INTEGER cg3dChkResFreq
156 cnh 1.1 INTEGER nIter0
157     INTEGER nTimeSteps
158 adcroft 1.41 INTEGER nEndIter
159 cnh 1.1 INTEGER numStepsPerPickup
160 cnh 1.7 INTEGER writeStatePrec
161     INTEGER writeBinaryPrec
162     INTEGER readBinaryPrec
163     INTEGER nCheckLev
164 jmc 1.55 INTEGER nonlinFreeSurf
165 jmc 1.84 INTEGER select_rStar
166 jmc 1.115 INTEGER tempAdvScheme, tempVertAdvScheme
167     INTEGER saltAdvScheme, saltVertAdvScheme
168 adcroft 1.57 INTEGER tracerAdvScheme
169 heimbach 1.92 INTEGER debugLevel
170    
171     C
172     INTEGER debLevZero
173     PARAMETER(debLevZero=0)
174     INTEGER debLevA
175     PARAMETER(debLevA=1)
176     INTEGER debLevB
177     PARAMETER(debLevB=2)
178 cnh 1.1
179     C-- COMMON /PARM_L/ Logical valued parameters used by the model.
180 cnh 1.63 C usingCartesianGrid :: If TRUE grid generation will be in a cartesian
181 cnh 1.1 C coordinate frame.
182 cnh 1.63 C usingSphericalPolarGrid :: If TRUE grid generation will be in a
183 cnh 1.1 C spherical polar frame.
184 afe 1.114 C usingCylindricalGrid :: If TRUE grid generation will be Cylindrical
185 cnh 1.63 C no_slip_sides :: Impose "no-slip" at lateral boundaries.
186     C no_slip_bottom :: Impose "no-slip" at bottom boundary.
187     C staggerTimeStep :: enable a Stagger time stepping T,S Rho then U,V
188     C momViscosity :: Flag which turns momentum friction terms on and off.
189     C momAdvection :: Flag which turns advection of momentum on and off.
190     C momForcing :: Flag which turns external forcing of momentum on
191 cnh 1.1 C and off.
192 cnh 1.63 C momPressureForcing :: Flag which turns pressure term in momentum equation
193 cnh 1.9 C on and off.
194 cnh 1.63 C metricTerms :: Flag which turns metric terms on or off.
195     C usingSphericalPolarMTerms :: If TRUE use spherical polar metric terms.
196 adcroft 1.77 C useNHMTerms :: If TRUE use non-hydrostatic metric terms.
197 cnh 1.63 C useCoriolis :: Flag which turns the coriolis terms on and off.
198     C tempDiffusion :: Flag which turns diffusion of temperature on
199 cnh 1.1 C and off.
200 cnh 1.63 C tempAdvection :: Flag which turns advection of temperature on
201 cnh 1.1 C and off.
202 cnh 1.63 C tempForcing :: Flag which turns external forcing of temperature on
203 cnh 1.1 C and off.
204 jmc 1.71 C saltDiffusion :: Flag which turns diffusion of salinity on
205 cnh 1.1 C and off.
206 jmc 1.71 C saltAdvection :: Flag which turns advection of salinity on
207 cnh 1.1 C and off.
208 jmc 1.71 C saltForcing :: Flag which turns external forcing of salinity on
209 cnh 1.1 C and off.
210 jmc 1.71 C useRealFreshWaterFlux :: if True (=Natural BCS), treats P+R-E flux
211     C as a real Fresh Water (=> changes the Sea Level)
212     C if F, converts P+R-E to salt flux (no SL effect)
213 cnh 1.63 C rigidLid :: Set to true to use rigid lid
214     C implicitFreeSurface :: Set to true to use implcit free surface
215     C exactConserv :: Set to true to conserve exactly the total Volume
216     C uniformLin_PhiSurf :: Set to true to use a uniform Bo_surf in the
217 jmc 1.55 C linear relation Phi_surf = Bo_surf*eta
218 cnh 1.63 C momStepping :: Turns momentum equation time-stepping off
219     C tempStepping :: Turns temperature equation time-stepping off
220     C saltStepping :: Turns salinity equation time-stepping off
221     C tr1Stepping :: Turns passive tracer 1 time-stepping on/off
222     C useConstantF :: Coriolis parameter set to f0
223     C useBetaPlaneF :: Coriolis parameter set to f0 + beta.y
224     C useSphereF :: Coriolis parameter set to 2.omega.sin(phi)
225 jmc 1.89 C useCDscheme :: use CD-scheme to calculate Coriolis terms.
226 jmc 1.71 C useJamartWetPoints :: Use wet-point method for Coriolis (Jamart and Ozer, 1986)
227 adcroft 1.113 C useJamartMomAdv :: Use wet-point method for V.I. non-linear term
228 adcroft 1.111 C SadournyCoriolis :: use the enstrophy conserving scheme by Sadourny
229     C upwindVorticity :: bias interpolation of vorticity in the Coriolis term
230     C highOrderVorticity :: use 3rd/4th order interp. of vorticity in Coriolis
231     C useAbsVorticity :: work with f+zeta in Coriolis terms
232 cnh 1.63 C implicitDiffusion :: Turns implicit vertical diffusion on
233     C implicitViscosity :: Turns implicit vertical viscosity on
234 jmc 1.100 C tempImplVertAdv :: Turns on implicit vertical advection for Temperature
235     C saltImplVertAdv :: Turns on implicit vertical advection for Salinity
236     C momImplVertAdv :: Turns on implicit vertical advection for Momentum
237 jmc 1.71 C multiDimAdvection :: Flag that enable multi-dimension advection
238 jmc 1.118 C useMultiDimAdvec :: True if multi-dim advection is used at least once
239 jmc 1.71 C forcing_In_AB :: if False, put forcing (Temp,Salt,Tracers) contribution
240     C out off Adams-Bashforth time stepping.
241 cnh 1.63 C doThetaClimRelax :: Set true if relaxation to temperature
242 cnh 1.18 C climatology is required.
243 cnh 1.63 C doSaltClimRelax :: Set true if relaxation to salinity
244 cnh 1.18 C climatology is required.
245 cnh 1.63 C periodicExternalForcing :: Set true if forcing is time-dependant
246     C usingPCoords :: Set to indicate that we are working in pressure
247 jmc 1.87 C coords. (jmc: is it still used ?)
248 cnh 1.63 C usingZCoords :: Set to indicate that we are working in height
249 jmc 1.87 C coords. (jmc: is it still used ?)
250     C useDynP_inEos_Zc :: use the dynamical pressure in EOS (with Z-coord.)
251     C this requires specific code for restart & exchange
252 jmc 1.70 C setCenterDr :: set cell Center depth and put Interface at the middle
253 cnh 1.63 C nonHydrostatic :: Using non-hydrostatic terms
254 adcroft 1.79 C quasiHydrostatic :: Using non-hydrostatic terms in hydrostatic algorithm
255 cnh 1.63 C globalFiles :: Selects between "global" and "tiled" files
256 dimitri 1.85 C useSingleCpuIO :: On SGI platforms, option globalFiles is either
257     C slow (f77) or does not work (f90). When
258     C useSingleCpuIO is set, mdsio_writefield.F
259     C outputs from master mpi process only.
260 jmc 1.97 C allowFreezing :: Allows surface water to freeze and form ice
261     C useOldFreezing :: use the old version (before checkpoint52a_pre, 2003-11-12)
262 cnh 1.63 C groundAtK1 :: put the surface(k=1) at the Lower Boundary (=ground)
263 cnh 1.1 COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid,
264 afe 1.114 & usingCurvilinearGrid, usingCylindricalGrid,
265 adcroft 1.36 & no_slip_sides,no_slip_bottom,
266 adcroft 1.46 & staggerTimeStep,
267 cnh 1.33 & momViscosity, momAdvection, momForcing, useCoriolis,
268 adcroft 1.58 & momPressureForcing, vectorInvariantMomentum,
269     & tempDiffusion, tempAdvection, tempForcing,
270 cnh 1.8 & saltDiffusion, saltAdvection, saltForcing,
271 jmc 1.68 & useRealFreshWaterFlux,
272 jmc 1.55 & rigidLid, implicitFreeSurface, exactConserv, uniformLin_PhiSurf,
273 heimbach 1.56 & momStepping, tempStepping, saltStepping, tr1Stepping,
274 adcroft 1.77 & metricTerms, usingSphericalPolarMTerms, useNHMTerms,
275 cnh 1.15 & useConstantF, useBetaPlaneF, useSphereF,
276 jmc 1.89 & useCDscheme,
277 adcroft 1.113 & useEnergyConservingCoriolis, useJamartWetPoints, useJamartMomAdv,
278 adcroft 1.111 & SadournyCoriolis, upwindVorticity, highOrderVorticity,
279     & useAbsVorticity,
280 adcroft 1.40 & implicitDiffusion, implicitViscosity,
281 jmc 1.100 & tempImplVertAdv, saltImplVertAdv, momImplVertAdv,
282 jmc 1.118 & multiDimAdvection, useMultiDimAdvec, forcing_In_AB,
283 heimbach 1.56 & doThetaClimRelax, doSaltClimRelax, doTr1ClimRelax,
284 jmc 1.70 & periodicExternalForcing,
285 jmc 1.87 & usingPCoords, usingZCoords, useDynP_inEos_Zc, setCenterDr,
286 dimitri 1.85 & nonHydrostatic, quasiHydrostatic, globalFiles, useSingleCpuIO,
287 jmc 1.97 & allowFreezing, useOldFreezing, groundAtK1,
288 jmc 1.117 & usePickupBeforeC35, usePickupBeforeC54, debugMode,
289 jmc 1.71 & readPickupWithTracer, writePickupWithTracer
290 cnh 1.1 LOGICAL usingCartesianGrid
291     LOGICAL usingSphericalPolarGrid
292 afe 1.114 LOGICAL usingCylindricalGrid
293 adcroft 1.52 LOGICAL usingCurvilinearGrid
294 cnh 1.15 LOGICAL usingSphericalPolarMTerms
295 adcroft 1.77 LOGICAL useNHMTerms
296 adcroft 1.36 LOGICAL no_slip_sides
297     LOGICAL no_slip_bottom
298 adcroft 1.46 LOGICAL staggerTimeStep
299 cnh 1.1 LOGICAL momViscosity
300     LOGICAL momAdvection
301     LOGICAL momForcing
302 cnh 1.9 LOGICAL momPressureForcing
303 cnh 1.1 LOGICAL useCoriolis
304 adcroft 1.58 LOGICAL vectorInvariantMomentum
305 cnh 1.1 LOGICAL tempDiffusion
306     LOGICAL tempAdvection
307     LOGICAL tempForcing
308     LOGICAL saltDiffusion
309     LOGICAL saltAdvection
310     LOGICAL saltForcing
311 jmc 1.68 LOGICAL useRealFreshWaterFlux
312 adcroft 1.52 LOGICAL rigidLid
313 cnh 1.8 LOGICAL implicitFreeSurface
314 adcroft 1.52 LOGICAL exactConserv
315 jmc 1.55 LOGICAL uniformLin_PhiSurf
316 cnh 1.10 LOGICAL momStepping
317     LOGICAL tempStepping
318 adcroft 1.17 LOGICAL saltStepping
319 heimbach 1.56 LOGICAL tr1Stepping
320 cnh 1.15 LOGICAL metricTerms
321     LOGICAL useConstantF
322     LOGICAL useBetaPlaneF
323     LOGICAL useSphereF
324 jmc 1.89 LOGICAL useCDscheme
325 jmc 1.71 LOGICAL useEnergyConservingCoriolis
326     LOGICAL useJamartWetPoints
327 adcroft 1.113 LOGICAL useJamartMomAdv
328 adcroft 1.111 LOGICAL SadournyCoriolis
329     LOGICAL upwindVorticity
330     LOGICAL highOrderVorticity
331     LOGICAL useAbsVorticity
332 adcroft 1.14 LOGICAL implicitDiffusion
333 adcroft 1.40 LOGICAL implicitViscosity
334 jmc 1.100 LOGICAL tempImplVertAdv
335     LOGICAL saltImplVertAdv
336     LOGICAL momImplVertAdv
337 jmc 1.71 LOGICAL multiDimAdvection
338 jmc 1.118 LOGICAL useMultiDimAdvec
339 jmc 1.71 LOGICAL forcing_In_AB
340 cnh 1.18 LOGICAL doThetaClimRelax
341     LOGICAL doSaltClimRelax
342 heimbach 1.56 LOGICAL doTr1ClimRelax
343 adcroft 1.19 LOGICAL periodicExternalForcing
344 cnh 1.29 LOGICAL usingPCoords
345     LOGICAL usingZCoords
346 jmc 1.87 LOGICAL useDynP_inEos_Zc
347 jmc 1.70 LOGICAL setCenterDr
348 adcroft 1.37 LOGICAL nonHydrostatic
349 adcroft 1.79 LOGICAL quasiHydrostatic
350 adcroft 1.38 LOGICAL globalFiles
351 dimitri 1.85 LOGICAL useSingleCpuIO
352 adcroft 1.38 LOGICAL allowFreezing
353 jmc 1.97 LOGICAL useOldFreezing
354 adcroft 1.46 LOGICAL groundAtK1
355 heimbach 1.51 LOGICAL usePickupBeforeC35
356 jmc 1.117 LOGICAL usePickupBeforeC54
357 adcroft 1.54 LOGICAL debugMode
358 heimbach 1.56 LOGICAL readPickupWithTracer
359     LOGICAL writePickupWithTracer
360 cnh 1.1
361     C-- COMMON /PARM_R/ "Real" valued parameters used by the model.
362 jmc 1.119 C cg2dTargetResidual
363 cnh 1.63 C :: Target residual for cg2d solver; no unit (RHS normalisation)
364 adcroft 1.52 C cg2dTargetResWunit
365 cnh 1.63 C :: Target residual for cg2d solver; W unit (No RHS normalisation)
366 cnh 1.33 C cg3dTargetResidual
367 cnh 1.63 C :: Target residual for cg3d solver.
368     C cg2dpcOffDFac :: Averaging weight for preconditioner off-diagonal.
369 cnh 1.7 C Note. 20th May 1998
370     C I made a weird discovery! In the model paper we argue
371     C for the form of the preconditioner used here ( see
372     C A Finite-volume, Incompressible Navier-Stokes Model
373     C ...., Marshall et. al ). The algebra gives a simple
374     C 0.5 factor for the averaging of ac and aCw to get a
375     C symmettric pre-conditioner. By using a factor of 0.51
376     C i.e. scaling the off-diagonal terms in the
377     C preconditioner down slightly I managed to get the
378     C number of iterations for convergence in a test case to
379     C drop form 192 -> 134! Need to investigate this further!
380     C For now I have introduced a parameter cg2dpcOffDFac which
381     C defaults to 0.51 but can be set at runtime.
382 cnh 1.63 C delR :: Vertical grid spacing ( units of r ).
383 jmc 1.70 C delRc :: Vertical grid spacing between cell centers (r unit).
384 cnh 1.63 C delX :: Separation between cell faces (m) or (deg), depending
385 cnh 1.1 C delY on input flags.
386 cnh 1.63 C gravity :: Accel. due to gravity ( m/s^2 )
387 cnh 1.32 C recip_gravity and its inverse
388 cnh 1.63 C gBaro :: Accel. due to gravity used in barotropic equation ( m/s^2 )
389 mlosch 1.75 C rhoNil :: Reference density for the linear equation of state
390 cnh 1.63 C rhoConst :: Vertically constant reference density
391 mlosch 1.75 C rhoConstFresh :: Constant reference density for fresh water (rain)
392 cnh 1.63 C startTime :: Start time for model ( s )
393     C phiMin :: Latitude of southern most cell face.
394     C thetaMin :: Longitude of western most cell face (this
395 cnh 1.1 C is an "inert" parameter but it is included
396     C to make geographical references simple.)
397 cnh 1.63 C rSphere :: Radius of sphere for a spherical polar grid ( m ).
398     C recip_RSphere :: Reciprocal radius of sphere ( m ).
399     C f0 :: Reference coriolis parameter ( 1/s )
400 cnh 1.1 C ( Southern edge f for beta plane )
401 cnh 1.63 C beta :: df/dy ( s^-1.m^-1 )
402     C omega :: Angular velocity ( rad/s )
403 jmc 1.88 C rotationPeriod :: Rotation period (s) (= 2.pi/omega)
404 cnh 1.63 C viscAh :: Eddy viscosity coeff. for mixing of
405 cnh 1.1 C momentum laterally ( m^2/s )
406 cnh 1.63 C viscAr :: Eddy viscosity coeff. for mixing of
407 cnh 1.24 C momentum vertically ( units of r^2/s )
408 cnh 1.63 C viscA4 :: Biharmonic viscosity coeff. for mixing of
409 cnh 1.1 C momentum laterally ( m^4/s )
410 adcroft 1.110 C viscC2leith :: Leith non-dimensional viscosity factor
411 adcroft 1.102 C viscAhMax :: Maximum eddy viscosity coeff. for mixing of
412     C momentum laterally ( m^2/s )
413     C viscA4Max :: Maximum biharmonic viscosity coeff. for mixing of
414     C momentum laterally ( m^4/s )
415     C viscAhGrid:: non-dimensional grid-size dependent viscosity
416     C viscA4Grid:: non-dimensional grid-size dependent bi-harmonic viscosity
417 adcroft 1.110 C viscC4leith :: Leith non-dimensional viscosity factor
418 cnh 1.63 C diffKhT :: Laplacian diffusion coeff. for mixing of
419 cnh 1.1 C heat laterally ( m^2/s )
420 cnh 1.63 C diffKrT :: Laplacian diffusion coeff. for mixing of
421 cnh 1.24 C heat vertically ( units of r^2/s )
422 cnh 1.63 C diffK4T :: Biharmonic diffusion coeff. for mixing of
423 cnh 1.1 C heat laterally ( m^4/s )
424 cnh 1.63 C diffKhS :: Laplacian diffusion coeff. for mixing of
425 cnh 1.1 C salt laterally ( m^2/s )
426 cnh 1.63 C diffKrS :: Laplacian diffusion coeff. for mixing of
427 cnh 1.24 C salt vertically ( units of r^2/s )
428 cnh 1.63 C diffK4S :: Biharmonic diffusion coeff. for mixing of
429 cnh 1.1 C salt laterally ( m^4/s )
430 adcroft 1.112 C diffKrBL79surf :: T/S surface diffusivity (m^2/s) Bryan and Lewis, 1979
431     C diffKrBL79deep :: T/S deep diffusivity (m^2/s) Bryan and Lewis, 1979
432     C diffKrBL79scl :: depth scale for arctan fn (m) Bryan and Lewis, 1979
433     C diffKrBL79Ho :: depth offset for arctan fn (m) Bryan and Lewis, 1979
434 cnh 1.63 C deltaT :: Default timestep ( s )
435     C deltaTClock :: Timestep used as model "clock". This determines the
436 cnh 1.7 C IO frequencies and is used in tagging output. It can
437     C be totally different to the dynamical time. Typically
438     C it will be the deep-water timestep for accelerated runs.
439     C Frequency of checkpointing and dumping of the model state
440     C are referenced to this clock. ( s )
441 cnh 1.63 C deltaTMom :: Timestep for momemtum equations ( s )
442     C deltaTtracer :: Timestep for tracer equations ( s )
443 adcroft 1.72 C deltaTfreesurf :: Timestep for free-surface equation ( s )
444 cnh 1.63 C freesurfFac :: Parameter to turn implicit free surface term on or off
445 cnh 1.8 C freesurfac = 1. uses implicit free surface
446     C freesurfac = 0. uses rigid lid
447 cnh 1.63 C implicSurfPress :: parameter of the Crank-Nickelson time stepping :
448 jmc 1.48 C Implicit part of Surface Pressure Gradient ( 0-1 )
449 cnh 1.63 C implicDiv2Dflow :: parameter of the Crank-Nickelson time stepping :
450 jmc 1.48 C Implicit part of barotropic flow Divergence ( 0-1 )
451 cnh 1.63 C hFacMin :: Minimum fraction size of a cell (affects hFacC etc...)
452     C hFacMinDz :: Minimum dimesional size of a cell (affects hFacC etc..., m)
453     C hFacMinDp :: Minimum dimesional size of a cell (affects hFacC etc..., Pa)
454     C hFacMinDr :: Minimum dimesional size of a cell (affects hFacC etc..., units of r)
455     C hFacInf :: Threshold (inf and sup) for fraction size of surface cell
456 adcroft 1.52 C hFacSup that control vanishing and creating levels
457 cnh 1.63 C tauCD :: CD scheme coupling timescale ( 1/s )
458     C rCD :: CD scheme normalised coupling parameter ( 0-1 )
459     C startTime :: Starting time for this integration ( s ).
460     C endTime :: Ending time for this integration ( s ).
461     C chkPtFreq :: Frequency of rolling check pointing ( s ).
462     C pChkPtFreq :: Frequency of permanent check pointing ( s ).
463     C dumpFreq :: Frequency with which model state is written to
464 cnh 1.24 C post-processing files ( s ).
465 cnh 1.63 C diagFreq :: Frequency with which model writes diagnostic output
466 adcroft 1.59 C of intermediate quantities.
467 cnh 1.63 C afFacMom :: Advection of momentum term tracer parameter
468     C vfFacMom :: Momentum viscosity tracer parameter
469     C pfFacMom :: Momentum pressure forcing tracer parameter
470     C cfFacMom :: Coriolis term tracer parameter
471     C foFacMom :: Momentum forcing tracer parameter
472     C mtFacMom :: Metric terms tracer parameter
473     C cosPower :: Power of cosine of latitude to multiply viscosity
474     C cAdjFreq :: Frequency of convective adjustment
475 cnh 1.24 C
476 jmc 1.76 C taveFreq :: Frequency with which time-averaged model state
477     C is written to post-processing files ( s ).
478     C tave_lastIter :: (for state variable only) fraction of the last time
479     C step (of each taveFreq period) put in the time average.
480     C (fraction for 1rst iter = 1 - tave_lastIter)
481 cnh 1.63 C tauThetaClimRelax :: Relaxation to climatology time scale ( s ).
482     C lambdaThetaClimRelax :: Inverse time scale for relaxation ( 1/s ).
483     C tauSaltClimRelax :: Relaxation to climatology time scale ( s ).
484     C lambdaSaltClimRelax :: Inverse time scale for relaxation ( 1/s ).
485 jmc 1.95 C latBandClimRelax :: latitude band where Relaxation to Clim. is applied,
486     C i.e. where |yC| <= latBandClimRelax
487 cnh 1.63 C externForcingPeriod :: Is the period of which forcing varies (eg. 1 month)
488     C externForcingCycle :: Is the repeat time of the forcing (eg. 1 year)
489 adcroft 1.19 C (note: externForcingCycle must be an integer
490     C number times externForcingPeriod)
491 jmc 1.68 C convertFW2Salt :: salinity, used to convert Fresh-Water Flux to Salt Flux
492     C (use model surface (local) value if set to -1)
493     C temp_EvPrRn :: temperature of Rain & Evap.
494     C salt_EvPrRn :: salinity of Rain & Evap.
495     C trac_EvPrRn :: tracer concentration in Rain & Evap.
496     C (notes: a) tracer content of Rain/Evap only used if both
497     C NonLin_FrSurf & useRealFreshWater are set.
498     C b) use model surface (local) value if set to UNSET_RL)
499 cnh 1.63 C horiVertRatio :: Ratio on units in vertical to units in horizontal.
500 cnh 1.31 C recip_horiVertRatio ( 1 if horiz in m and vertical in m ).
501 cnh 1.30 C ( g*rho if horiz in m and vertical in Pa ).
502 cnh 1.63 C Ro_SeaLevel :: standard position of Sea-Level in "R" coordinate, used as
503 adcroft 1.46 C starting value (k=1) for vertical coordinate (rf(1)=Ro_SeaLevel)
504 cnh 1.63 C bottomDragLinear :: Drag coefficient built in to core dynamics
505 adcroft 1.64 C --"-"-- Quadratic ( linear: 1/s, quadratic: 1/m )
506 adcroft 1.52 COMMON /PARM_R/ cg2dTargetResidual, cg2dTargetResWunit,
507     & cg2dpcOffDFac, cg3dTargetResidual,
508 jmc 1.96 & delR, delRc, delX, delY,
509 adcroft 1.72 & deltaT, deltaTmom, deltaTtracer, deltaTfreesurf, deltaTClock,
510     & abeps, startTime,
511 adcroft 1.52 & phiMin, thetaMin, rSphere, recip_RSphere, f0, beta,
512 adcroft 1.78 & fCori, fCoriG, fCoriCos,
513 adcroft 1.110 & viscAh, viscAhMax, viscAhGrid, viscC2leith,
514     & viscA4, viscA4Max, viscA4Grid, viscC4leith,
515 adcroft 1.102 & viscAr, viscAstrain, viscAtension,
516 jmc 1.96 & diffKhT, diffK4T, diffKrT,
517     & diffKhS, diffK4S, diffKrS,
518 adcroft 1.112 & diffKrBL79surf, diffKrBL79deep, diffKrBL79scl, diffKrBL79Ho,
519 jmc 1.48 & delT, tauCD, rCD, freeSurfFac, implicSurfPress, implicDiv2Dflow,
520 adcroft 1.52 & hFacMin, hFacMinDz, hFacInf, hFacSup,
521 cnh 1.32 & gravity, recip_Gravity, gBaro, rhonil, recip_rhonil,
522 mlosch 1.75 & recip_rhoConst, rhoConst,
523 jmc 1.76 & rhoConstFresh, convertEmP2rUnit, tRef, sRef,
524 heimbach 1.103 & endTime, chkPtFreq, pchkPtFreq, dumpFreq, adjDumpFreq,
525 jmc 1.76 & diagFreq, taveFreq, tave_lastIter, monitorFreq,
526 cnh 1.15 & afFacMom, vfFacMom, pfFacMom, cfFacMom, foFacMom, mtFacMom,
527 jmc 1.88 & cosPower, cAdjFreq, omega, rotationPeriod,
528 heimbach 1.56 & tauThetaClimRelax, lambdaThetaClimRelax,
529 adcroft 1.19 & tauSaltClimRelax, lambdaSaltClimRelax,
530 jmc 1.95 & tauTr1ClimRelax, lambdaTr1ClimRelax, latBandClimRelax,
531 cnh 1.27 & externForcingCycle, externForcingPeriod,
532 jmc 1.68 & convertFW2Salt, temp_EvPrRn, salt_EvPrRn, trac_EvPrRn,
533 jmc 1.96 & hFacMinDr, hFacMinDp,
534 jmc 1.68 & horiVertRatio, recip_horiVertRatio,
535 jmc 1.67 & ivdc_kappa, Ro_SeaLevel,
536 afe 1.116 & bottomDragLinear,bottomDragQuadratic,
537     & tCyl
538 cnh 1.27
539 adcroft 1.6 _RL cg2dTargetResidual
540 adcroft 1.52 _RL cg2dTargetResWunit
541 cnh 1.33 _RL cg3dTargetResidual
542 cnh 1.7 _RL cg2dpcOffDFac
543 cnh 1.25 _RL delR(Nr)
544 jmc 1.70 _RL delRc(Nr+1)
545 adcroft 1.6 _RL delX(Nx)
546     _RL delY(Ny)
547     _RL deltaT
548 cnh 1.7 _RL deltaTClock
549 adcroft 1.6 _RL deltaTmom
550     _RL deltaTtracer
551 adcroft 1.72 _RL deltaTfreesurf
552 adcroft 1.6 _RL abeps
553     _RL phiMin
554     _RL thetaMin
555     _RL rSphere
556 cnh 1.25 _RL recip_RSphere
557 adcroft 1.6 _RL f0
558 cnh 1.8 _RL freeSurfFac
559 jmc 1.48 _RL implicSurfPress
560     _RL implicDiv2Dflow
561 adcroft 1.22 _RL hFacMin
562     _RL hFacMinDz
563 cnh 1.28 _RL hFacMinDp
564 cnh 1.27 _RL hFacMinDr
565 adcroft 1.52 _RL hFacInf
566     _RL hFacSup
567 adcroft 1.6 _RL beta
568     _RL viscAh
569 adcroft 1.102 _RL viscAhMax
570     _RL viscAhGrid
571 adcroft 1.110 _RL viscC2leith
572 adcroft 1.60 _RL viscAstrain
573     _RL viscAtension
574 cnh 1.25 _RL viscAr
575 adcroft 1.6 _RL viscA4
576 adcroft 1.102 _RL viscA4Max
577     _RL viscA4Grid
578 adcroft 1.110 _RL viscC4leith
579 adcroft 1.6 _RL diffKhT
580 cnh 1.25 _RL diffKrT
581 adcroft 1.6 _RL diffK4T
582     _RL diffKhS
583 cnh 1.25 _RL diffKrS
584 adcroft 1.6 _RL diffK4S
585 adcroft 1.112 _RL diffKrBL79surf
586     _RL diffKrBL79deep
587     _RL diffKrBL79scl
588     _RL diffKrBL79Ho
589 adcroft 1.6 _RL delt
590     _RL tauCD
591     _RL rCD
592     _RL gravity
593 cnh 1.32 _RL recip_gravity
594 cnh 1.8 _RL gBaro
595 adcroft 1.6 _RL rhonil
596 cnh 1.25 _RL recip_rhonil
597     _RL rhoConst
598 cnh 1.26 _RL recip_rhoConst
599 mlosch 1.75 _RL rhoConstFresh
600 jmc 1.76 _RL convertEmP2rUnit
601 cnh 1.25 _RL tRef(Nr)
602     _RL sRef(Nr)
603 adcroft 1.52 _RS fCori(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
604     _RS fCoriG(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
605 adcroft 1.78 _RS fCoriCos(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
606 adcroft 1.6 _RL startTime
607     _RL endTime
608     _RL chkPtFreq
609 cnh 1.7 _RL pChkPtFreq
610 adcroft 1.6 _RL dumpFreq
611 heimbach 1.103 _RL adjDumpFreq
612 adcroft 1.59 _RL diagFreq
613 adcroft 1.20 _RL taveFreq
614 jmc 1.76 _RL tave_lastIter
615 adcroft 1.53 _RL monitorFreq
616 cnh 1.9 _RL afFacMom
617     _RL vfFacMom
618     _RL pfFacMom
619     _RL cfFacMom
620     _RL foFacMom
621 cnh 1.15 _RL mTFacMom
622 adcroft 1.39 _RL cosPower
623 cnh 1.9 _RL cAdjFreq
624 cnh 1.15 _RL omega
625 jmc 1.88 _RL rotationPeriod
626 cnh 1.18 _RL tauThetaClimRelax
627     _RL lambdaThetaClimRelax
628     _RL tauSaltClimRelax
629     _RL lambdaSaltClimRelax
630 heimbach 1.56 _RL tauTr1ClimRelax
631     _RL lambdaTr1ClimRelax
632 jmc 1.95 _RL latBandClimRelax
633 adcroft 1.19 _RL externForcingCycle
634     _RL externForcingPeriod
635 jmc 1.68 _RL convertFW2Salt
636     _RL temp_EvPrRn
637     _RL salt_EvPrRn
638     _RL trac_EvPrRn
639 cnh 1.30 _RL horiVertRatio
640 cnh 1.31 _RL recip_horiVertRatio
641 adcroft 1.41 _RL ivdc_kappa
642 adcroft 1.46 _RL Ro_SeaLevel
643     _RL bottomDragLinear
644     _RL bottomDragQuadratic
645 afe 1.116 _RL tCyl
646 adcroft 1.6
647 jmc 1.91 C-- COMMON /PARM_A/ Thermodynamics constants ?
648     COMMON /PARM_A/ HeatCapacity_Cp,recip_Cp
649 adcroft 1.6 _RL HeatCapacity_Cp
650 adcroft 1.36 _RL recip_Cp
651 jmc 1.55
652 jmc 1.91 C-- COMMON /PARM_ATM/ Atmospheric physical parameters (Ideal Gas EOS, ...)
653     C celsius2K :: convert centigrade (Celsius) degree to Kelvin
654 jmc 1.83 C atm_Po :: standard reference pressure
655     C atm_Cp :: specific heat (Cp) of the (dry) air at constant pressure
656     C atm_Rd :: gas constant for dry air
657 cnh 1.63 C atm_kappa :: kappa = R/Cp (R: constant of Ideal Gas EOS)
658 jmc 1.94 C atm_Rq :: water vapour specific volume anomaly relative to dry air
659     C (e.g. typical value = (29/18 -1) 10^-3 with q [g/kg])
660 jmc 1.83 C integr_GeoPot :: option to select the way we integrate the geopotential
661 jmc 1.55 C (still a subject of discussions ...)
662 jmc 1.83 C selectFindRoSurf :: select the way surf. ref. pressure (=Ro_surf) is
663     C derived from the orography. Implemented: 0,1 (see INI_P_GROUND)
664 jmc 1.91 COMMON /PARM_ATM/
665     & celsius2K,
666 jmc 1.94 & atm_Cp, atm_Rd, atm_kappa, atm_Rq, atm_Po,
667 jmc 1.91 & integr_GeoPot, selectFindRoSurf
668     _RL celsius2K
669 jmc 1.94 _RL atm_Po, atm_Cp, atm_Rd, atm_kappa, atm_Rq
670 jmc 1.83 INTEGER integr_GeoPot, selectFindRoSurf
671 cnh 1.7
672 adcroft 1.44 C Logical flags for selecting packages
673 heimbach 1.45 LOGICAL useKPP
674     LOGICAL useGMRedi
675 adcroft 1.46 LOGICAL useOBCS
676 jmc 1.49 LOGICAL useAIM
677 jmc 1.91 LOGICAL useLand
678 heimbach 1.56 LOGICAL useGrdchk
679 heimbach 1.45 LOGICAL useECCO
680 adcroft 1.52 LOGICAL useSHAP_FILT
681 jmc 1.67 LOGICAL useZONAL_FILT
682 adcroft 1.62 LOGICAL useFLT
683 adcroft 1.69 LOGICAL usePTRACERS
684 dimitri 1.86 LOGICAL useSBO
685 heimbach 1.80 LOGICAL useSEAICE
686 jmc 1.98 LOGICAL useBulkForce
687     LOGICAL useThSIce
688 molod 1.99 LOGICAL usefizhi
689     LOGICAL usegridalt
690 molod 1.101 LOGICAL usediagnostics
691 heimbach 1.109 LOGICAL useEBM
692 adcroft 1.44 COMMON /PARM_PACKAGES/
693 jmc 1.91 & useKPP, useGMRedi, useOBCS, useAIM, useLand, useECCO,
694 adcroft 1.69 & useSHAP_FILT, useZONAL_FILT, useGrdchk, useFLT,
695 molod 1.101 & usePTRACERS, useSBO, useSEAICE, useThSIce, useBulkForce,
696 heimbach 1.109 & usefizhi, usegridalt, usediagnostics, useEBM
697 edhill 1.105
698     C Run-time flags for early-initialization of MNC
699     LOGICAL
700     & useMNC,
701 edhill 1.106 & mnc_use_indir, mnc_use_outdir, mnc_outdir_date,
702 edhill 1.108 & mnc_echo_gvtypes, mnc_pickup_write, mnc_pickup_read,
703 edhill 1.107 & mnc_use_for_mon
704 edhill 1.106 CHARACTER*(MAX_LEN_FNAM) mnc_outdir_str
705     CHARACTER*(MAX_LEN_FNAM) mnc_indir_str
706 edhill 1.105 COMMON /PARM_MNC/
707     & useMNC,
708 edhill 1.106 & mnc_use_indir, mnc_use_outdir, mnc_outdir_date,
709 edhill 1.108 & mnc_echo_gvtypes, mnc_pickup_write, mnc_pickup_read,
710 edhill 1.107 & mnc_outdir_str, mnc_indir_str,
711     & mnc_use_for_mon
712 edhill 1.105
713    
714     CEH3 ;;; Local Variables: ***
715     CEH3 ;;; mode:fortran ***
716     CEH3 ;;; End: ***

  ViewVC Help
Powered by ViewVC 1.1.22