/[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.114 - (hide annotations) (download)
Thu Jun 24 20:25:44 2004 UTC (19 years, 10 months ago) by afe
Branch: MAIN
CVS Tags: checkpoint53f_post
Changes since 1.113: +6 -3 lines
File MIME type: text/plain
merged cylindrical coord configuration and rotating_tank exp

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

  ViewVC Help
Powered by ViewVC 1.1.22