/[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.287 - (hide annotations) (download)
Tue May 2 18:11:05 2017 UTC (6 years, 11 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint66k, checkpoint66j, checkpoint66i, checkpoint66h
Changes since 1.286: +4 -2 lines
File MIME type: text/plain
new run-time param (useMin4hFacEdges) to select method for setting hFacC

1 jmc 1.287 C $Header: /u/gcmpack/MITgcm/model/inc/PARAMS.h,v 1.286 2017/04/04 23:19:33 jmc Exp $
2 mlosch 1.74 C $Name: $
3 cnh 1.1 C
4 edhill 1.124
5 cnh 1.63 CBOP
6 edhill 1.124 C !ROUTINE: PARAMS.h
7     C !INTERFACE:
8     C #include PARAMS.h
9    
10     C !DESCRIPTION:
11     C Header file defining model "parameters". The values from the
12     C model standard input file are stored into the variables held
13     C here. Notes describing the parameters can also be found here.
14    
15 cnh 1.63 CEOP
16 cnh 1.13
17 cnh 1.1 C-- Contants
18     C Useful physical values
19     Real*8 PI
20     PARAMETER ( PI = 3.14159265358979323844D0 )
21     Real*8 deg2rad
22     PARAMETER ( deg2rad = 2.D0*PI/360.D0 )
23    
24     C-- COMMON /PARM_C/ Character valued parameters used by the model.
25 jmc 1.205 C buoyancyRelation :: Flag used to indicate which relation to use to
26     C get buoyancy.
27     C eosType :: choose the equation of state:
28     C LINEAR, POLY3, UNESCO, JMD95Z, JMD95P, MDJWF, IDEALGAS
29     C pickupSuff :: force to start from pickup files (even if nIter0=0)
30     C and read pickup files with this suffix (max 10 Char.)
31     C mdsioLocalDir :: read-write tiled file from/to this directory name
32     C (+ 4 digits Processor-Rank) instead of current dir.
33 jmc 1.246 C adTapeDir :: read-write checkpointing tape files from/to this
34 mlosch 1.245 C directory name instead of current dir. Conflicts
35     C mdsioLocalDir, so only one of the two can be set.
36 jmc 1.191 C tRefFile :: File containing reference Potential Temperat. tRef (1.D)
37     C sRefFile :: File containing reference salinity/spec.humid. sRef (1.D)
38     C rhoRefFile :: File containing reference density profile rhoRef (1.D)
39 jmc 1.282 C gravityFile :: File containing gravity vertical profile (1.D)
40 jmc 1.191 C delRFile :: File containing vertical grid spacing delR (1.D array)
41     C delRcFile :: File containing vertical grid spacing delRc (1.D array)
42 jmc 1.239 C hybSigmFile :: File containing hybrid-sigma vertical coord. coeff. (2x 1.D)
43 jmc 1.162 C delXFile :: File containing X-spacing grid definition (1.D array)
44     C delYFile :: File containing Y-spacing grid definition (1.D array)
45 jmc 1.191 C horizGridFile :: File containing horizontal-grid definition
46 jmc 1.162 C (only when using curvilinear_grid)
47 jmc 1.205 C bathyFile :: File containing bathymetry. If not defined bathymetry
48     C is taken from inline function.
49     C topoFile :: File containing the topography of the surface (unit=m)
50     C (mainly used for the atmosphere = ground height).
51 jmc 1.273 C addWwallFile :: File containing 2-D additional Western cell-edge wall
52     C addSwallFile :: File containing 2-D additional Southern cell-edge wall
53     C (e.g., to add "thin-wall" where it is =1)
54 jmc 1.205 C hydrogThetaFile :: File containing initial hydrographic data (3-D)
55     C for potential temperature.
56     C hydrogSaltFile :: File containing initial hydrographic data (3-D)
57     C for salinity.
58 dimitri 1.199 C diffKrFile :: File containing 3D specification of vertical diffusivity
59 gforget 1.236 C viscAhDfile :: File containing 3D specification of horizontal viscosity
60     C viscAhZfile :: File containing 3D specification of horizontal viscosity
61     C viscA4Dfile :: File containing 3D specification of horizontal viscosity
62     C viscA4Zfile :: File containing 3D specification of horizontal viscosity
63 cnh 1.63 C zonalWindFile :: File containing zonal wind data
64     C meridWindFile :: File containing meridional wind data
65 jmc 1.205 C thetaClimFile :: File containing surface theta climataology used
66 jmc 1.260 C in relaxation term -lambda(theta-theta*)
67 jmc 1.205 C saltClimFile :: File containing surface salt climataology used
68 jmc 1.260 C in relaxation term -lambda(salt-salt*)
69 jmc 1.120 C surfQfile :: File containing surface heat flux, excluding SW
70     C (old version, kept for backward compatibility)
71     C surfQnetFile :: File containing surface net heat flux
72     C surfQswFile :: File containing surface shortwave radiation
73 cnh 1.63 C EmPmRfile :: File containing surface fresh water flux
74 dimitri 1.210 C NOTE: for backward compatibility EmPmRfile is specified in
75     C m/s when using external_fields_load.F. It is converted
76     C to kg/m2/s by multiplying by rhoConstFresh.
77 jmc 1.141 C saltFluxFile :: File containing surface salt flux
78 mlosch 1.73 C pLoadFile :: File containing pressure loading
79 jmc 1.266 C addMassFile :: File containing source/sink of fluid in the interior
80 gforget 1.217 C eddyPsiXFile :: File containing zonal Eddy streamfunction data
81     C eddyPsiYFile :: File containing meridional Eddy streamfunction data
82 edhill 1.124 C the_run_name :: string identifying the name of the model "run"
83 jmc 1.205 COMMON /PARM_C/
84     & buoyancyRelation, eosType,
85 mlosch 1.245 & pickupSuff, mdsioLocalDir, adTapeDir,
86 jmc 1.282 & tRefFile, sRefFile, rhoRefFile, gravityFile,
87 jmc 1.239 & delRFile, delRcFile, hybSigmFile,
88 jmc 1.162 & delXFile, delYFile, horizGridFile,
89 jmc 1.273 & bathyFile, topoFile, addWwallFile, addSwallFile,
90 jmc 1.238 & viscAhDfile, viscAhZfile,
91     & viscA4Dfile, viscA4Zfile,
92 dimitri 1.199 & hydrogThetaFile, hydrogSaltFile, diffKrFile,
93 cnh 1.18 & zonalWindFile, meridWindFile, thetaClimFile,
94 jmc 1.205 & saltClimFile,
95 jmc 1.141 & EmPmRfile, saltFluxFile,
96     & surfQfile, surfQnetFile, surfQswFile,
97 heimbach 1.151 & lambdaThetaFile, lambdaSaltFile,
98 heimbach 1.50 & uVelInitFile, vVelInitFile, pSurfInitFile,
99 jmc 1.268 & pLoadFile, addMassFile,
100 heimbach 1.276 & eddyPsiXFile, eddyPsiYFile, geothermalFile,
101 edhill 1.124 & the_run_name
102 jmc 1.205 CHARACTER*(MAX_LEN_FNAM) buoyancyRelation
103     CHARACTER*(6) eosType
104     CHARACTER*(10) pickupSuff
105     CHARACTER*(MAX_LEN_FNAM) mdsioLocalDir
106 mlosch 1.245 CHARACTER*(MAX_LEN_FNAM) adTapeDir
107 jmc 1.191 CHARACTER*(MAX_LEN_FNAM) tRefFile
108     CHARACTER*(MAX_LEN_FNAM) sRefFile
109     CHARACTER*(MAX_LEN_FNAM) rhoRefFile
110 jmc 1.282 CHARACTER*(MAX_LEN_FNAM) gravityFile
111 jmc 1.191 CHARACTER*(MAX_LEN_FNAM) delRFile
112     CHARACTER*(MAX_LEN_FNAM) delRcFile
113 jmc 1.239 CHARACTER*(MAX_LEN_FNAM) hybSigmFile
114 jmc 1.162 CHARACTER*(MAX_LEN_FNAM) delXFile
115     CHARACTER*(MAX_LEN_FNAM) delYFile
116     CHARACTER*(MAX_LEN_FNAM) horizGridFile
117 mlosch 1.224 CHARACTER*(MAX_LEN_FNAM) bathyFile, topoFile
118 jmc 1.273 CHARACTER*(MAX_LEN_FNAM) addWwallFile, addSwallFile
119 dimitri 1.198 CHARACTER*(MAX_LEN_FNAM) hydrogThetaFile, hydrogSaltFile
120 dimitri 1.199 CHARACTER*(MAX_LEN_FNAM) diffKrFile
121 gforget 1.236 CHARACTER*(MAX_LEN_FNAM) viscAhDfile
122     CHARACTER*(MAX_LEN_FNAM) viscAhZfile
123     CHARACTER*(MAX_LEN_FNAM) viscA4Dfile
124     CHARACTER*(MAX_LEN_FNAM) viscA4Zfile
125 cnh 1.16 CHARACTER*(MAX_LEN_FNAM) zonalWindFile
126     CHARACTER*(MAX_LEN_FNAM) meridWindFile
127 cnh 1.18 CHARACTER*(MAX_LEN_FNAM) thetaClimFile
128     CHARACTER*(MAX_LEN_FNAM) saltClimFile
129 adcroft 1.37 CHARACTER*(MAX_LEN_FNAM) surfQfile
130 jmc 1.120 CHARACTER*(MAX_LEN_FNAM) surfQnetFile
131     CHARACTER*(MAX_LEN_FNAM) surfQswFile
132 adcroft 1.37 CHARACTER*(MAX_LEN_FNAM) EmPmRfile
133 jmc 1.141 CHARACTER*(MAX_LEN_FNAM) saltFluxFile
134 adcroft 1.42 CHARACTER*(MAX_LEN_FNAM) uVelInitFile
135     CHARACTER*(MAX_LEN_FNAM) vVelInitFile
136 adcroft 1.43 CHARACTER*(MAX_LEN_FNAM) pSurfInitFile
137 jmc 1.266 CHARACTER*(MAX_LEN_FNAM) pLoadFile
138     CHARACTER*(MAX_LEN_FNAM) addMassFile
139 gforget 1.217 CHARACTER*(MAX_LEN_FNAM) eddyPsiXFile
140     CHARACTER*(MAX_LEN_FNAM) eddyPsiYFile
141 heimbach 1.276 CHARACTER*(MAX_LEN_FNAM) geothermalFile
142 heimbach 1.151 CHARACTER*(MAX_LEN_FNAM) lambdaThetaFile
143     CHARACTER*(MAX_LEN_FNAM) lambdaSaltFile
144 jmc 1.193 CHARACTER*(MAX_LEN_PREC/2) the_run_name
145 cnh 1.7
146 cnh 1.1 C-- COMMON /PARM_I/ Integer valued parameters used by the model.
147 cnh 1.63 C cg2dMaxIters :: Maximum number of iterations in the
148 jmc 1.260 C two-dimensional con. grad solver.
149 cnh 1.63 C cg2dChkResFreq :: Frequency with which to check residual
150 jmc 1.260 C in con. grad solver.
151 jmc 1.119 C cg2dPreCondFreq :: Frequency for updating cg2d preconditioner
152     C (non-linear free-surf.)
153 jmc 1.267 C cg2dUseMinResSol :: =0 : use last-iteration/converged solution
154     C =1 : use solver minimum-residual solution
155 cnh 1.63 C cg3dMaxIters :: Maximum number of iterations in the
156 jmc 1.260 C three-dimensional con. grad solver.
157 cnh 1.63 C cg3dChkResFreq :: Frequency with which to check residual
158 jmc 1.260 C in con. grad solver.
159 jmc 1.252 C printResidualFreq :: Frequency for printing residual in CG iterations
160 cnh 1.63 C nIter0 :: Start time-step number of for this run
161     C nTimeSteps :: Number of timesteps to execute
162 heimbach 1.280 C nTimeSteps_l2 :: Number of inner timesteps to execute per timestep
163 jmc 1.243 C selectCoriMap :: select setting of Coriolis parameter map:
164     C =0 f-Plane (Constant Coriolis, = f0)
165     C =1 Beta-Plane Coriolis (= f0 + beta.y)
166     C =2 Spherical Coriolis (= 2.omega.sin(phi))
167     C =3 Read Coriolis 2-d fields from files.
168     C selectSigmaCoord :: option related to sigma vertical coordinate
169 cnh 1.63 C nonlinFreeSurf :: option related to non-linear free surface
170 jmc 1.55 C =0 Linear free surface ; >0 Non-linear
171 jmc 1.84 C select_rStar :: option related to r* vertical coordinate
172     C =0 (default) use r coord. ; > 0 use r*
173 jmc 1.234 C selectNHfreeSurf :: option for Non-Hydrostatic (free-)Surface formulation:
174     C =0 (default) hydrostatic surf. ; > 0 add NH effects.
175 jmc 1.282 C selectP_inEOS_Zc :: select which pressure to use in EOS (for z-coords)
176     C =0: simply: -g*rhoConst*z
177     C =1: use pRef = integral{-g*rho(Tref,Sref,pRef)*dz}
178     C =2: use hydrostatic dynamical pressure
179     C =3: use full (Hyd+NH) dynamical pressure
180 jmc 1.222 C selectAddFluid :: option to add mass source/sink of fluid in the interior
181     C (3-D generalisation of oceanic real-fresh water flux)
182     C =0 off ; =1 add fluid ; =-1 virtual flux (no mass added)
183 jmc 1.284 C selectImplicitDrag :: select Implicit treatment of bottom/top drag
184     C = 0: fully explicit
185     C = 1: implicit on provisional velocity
186     C (i.e., before grad.Eta increment)
187     C = 2: fully implicit (combined with Impl Surf.Press)
188 jmc 1.180 C momForcingOutAB :: =1: take momentum forcing contribution
189 jmc 1.260 C out of (=0: in) Adams-Bashforth time stepping.
190 jmc 1.180 C tracForcingOutAB :: =1: take tracer (Temp,Salt,pTracers) forcing contribution
191 jmc 1.260 C out of (=0: in) Adams-Bashforth time stepping.
192 jmc 1.115 C tempAdvScheme :: Temp. Horiz.Advection scheme selector
193 jmc 1.168 C tempVertAdvScheme :: Temp. Vert. Advection scheme selector
194 jmc 1.115 C saltAdvScheme :: Salt. Horiz.advection scheme selector
195     C saltVertAdvScheme :: Salt. Vert. Advection scheme selector
196 jmc 1.168 C selectKEscheme :: Kinetic Energy scheme selector (Vector Inv.)
197 jmc 1.214 C selectVortScheme :: Scheme selector for Vorticity term (Vector Inv.)
198 jmc 1.278 C selectBotDragQuadr :: quadratic bottom drag discretisation option:
199     C =0: average KE from grid center to U & V location
200     C =1: use local velocity norm @ U & V location
201     C =2: same with wet-point averaging of other component
202 jmc 1.285 C readBinaryPrec :: Precision used for reading binary files
203     C writeStatePrec :: Precision used for writing model state.
204     C writeBinaryPrec :: Precision used for writing binary files
205     C rwSuffixType :: controls the format of the mds file suffix.
206     C =0 (default): use iteration number (myIter, I10.10);
207     C =1: 100*myTime (100th sec); =2: myTime (seconds);
208     C =3: myTime/360 (10th of hr); =4: myTime/3600 (hours).
209 jmc 1.211 C monitorSelect :: select group of variables to monitor
210     C =1 : dynvars ; =2 : + vort ; =3 : + surface
211 jmc 1.244 C- debugLevel :: controls printing of algorithm intermediate results
212     C and statistics ; higher -> more writing
213 jmc 1.286 C- plotLevel :: controls printing of field maps ; higher -> more flds
214 cnh 1.34
215 cnh 1.1 COMMON /PARM_I/
216 jmc 1.267 & cg2dMaxIters, cg2dChkResFreq,
217     & cg2dPreCondFreq, cg2dUseMinResSol,
218 jmc 1.252 & cg3dMaxIters, cg3dChkResFreq,
219     & printResidualFreq,
220 heimbach 1.280 & nIter0, nTimeSteps, nTimeSteps_l2, nEndIter,
221 jmc 1.243 & selectCoriMap,
222     & selectSigmaCoord,
223 jmc 1.84 & nonlinFreeSurf, select_rStar,
224 jmc 1.282 & selectNHfreeSurf, selectP_inEOS_Zc,
225 jmc 1.284 & selectAddFluid, selectImplicitDrag,
226 jmc 1.180 & momForcingOutAB, tracForcingOutAB,
227 jmc 1.115 & tempAdvScheme, tempVertAdvScheme,
228     & saltAdvScheme, saltVertAdvScheme,
229 jmc 1.214 & selectKEscheme, selectVortScheme,
230 jmc 1.278 & selectBotDragQuadr,
231 jmc 1.285 & readBinaryPrec, writeBinaryPrec, writeStatePrec,
232 jmc 1.286 & rwSuffixType, monitorSelect, debugLevel, plotLevel
233 cnh 1.1 INTEGER cg2dMaxIters
234     INTEGER cg2dChkResFreq
235 jmc 1.119 INTEGER cg2dPreCondFreq
236 jmc 1.267 INTEGER cg2dUseMinResSol
237 cnh 1.33 INTEGER cg3dMaxIters
238     INTEGER cg3dChkResFreq
239 jmc 1.252 INTEGER printResidualFreq
240 cnh 1.1 INTEGER nIter0
241     INTEGER nTimeSteps
242 heimbach 1.280 INTEGER nTimeSteps_l2
243 adcroft 1.41 INTEGER nEndIter
244 jmc 1.243 INTEGER selectCoriMap
245     INTEGER selectSigmaCoord
246 jmc 1.55 INTEGER nonlinFreeSurf
247 jmc 1.84 INTEGER select_rStar
248 jmc 1.234 INTEGER selectNHfreeSurf
249 jmc 1.282 INTEGER selectP_inEOS_Zc
250 jmc 1.222 INTEGER selectAddFluid
251 jmc 1.284 INTEGER selectImplicitDrag
252 jmc 1.180 INTEGER momForcingOutAB, tracForcingOutAB
253 jmc 1.115 INTEGER tempAdvScheme, tempVertAdvScheme
254     INTEGER saltAdvScheme, saltVertAdvScheme
255 jmc 1.183 INTEGER selectKEscheme
256 jmc 1.214 INTEGER selectVortScheme
257 jmc 1.278 INTEGER selectBotDragQuadr
258 jmc 1.285 INTEGER readBinaryPrec
259     INTEGER writeStatePrec
260     INTEGER writeBinaryPrec
261     INTEGER rwSuffixType
262 jmc 1.211 INTEGER monitorSelect
263 heimbach 1.92 INTEGER debugLevel
264 jmc 1.286 INTEGER plotLevel
265 heimbach 1.92
266 cnh 1.1 C-- COMMON /PARM_L/ Logical valued parameters used by the model.
267 jmc 1.215 C- Coordinate + Grid params:
268     C fluidIsAir :: Set to indicate that the fluid major constituent
269 jmc 1.260 C is air
270 jmc 1.215 C fluidIsWater :: Set to indicate that the fluid major constituent
271 jmc 1.260 C is water
272 jmc 1.215 C usingPCoords :: Set to indicate that we are working in a pressure
273 jmc 1.260 C type coordinate (p or p*).
274 jmc 1.215 C usingZCoords :: Set to indicate that we are working in a height
275 jmc 1.260 C type coordinate (z or z*)
276 cnh 1.63 C usingCartesianGrid :: If TRUE grid generation will be in a cartesian
277 jmc 1.260 C coordinate frame.
278 jmc 1.206 C usingSphericalPolarGrid :: If TRUE grid generation will be in a
279 jmc 1.260 C spherical polar frame.
280 jmc 1.215 C rotateGrid :: rotate grid coordinates to geographical coordinates
281     C according to Euler angles phiEuler, thetaEuler, psiEuler
282 jmc 1.265 C usingCylindricalGrid :: If TRUE grid generation will be Cylindrical
283 jmc 1.215 C usingCurvilinearGrid :: If TRUE, use a curvilinear grid (to be provided)
284 jmc 1.265 C hasWetCSCorners :: domain contains CS-type corners where dynamics is solved
285 jmc 1.192 C deepAtmosphere :: deep model (drop the shallow-atmosphere approximation)
286 jmc 1.215 C setInterFDr :: set Interface depth (put cell-Center at the middle)
287     C setCenterDr :: set cell-Center depth (put Interface at the middle)
288 jmc 1.287 C useMin4hFacEdges :: set hFacW,hFacS as minimum of adjacent hFacC factor
289 jmc 1.215 C- Momentum params:
290     C no_slip_sides :: Impose "no-slip" at lateral boundaries.
291 cnh 1.63 C no_slip_bottom :: Impose "no-slip" at bottom boundary.
292 jmc 1.278 C bottomVisc_pCell :: account for partial-cell in bottom visc. (no-slip BC)
293 jmc 1.270 C useSmag3D :: Use isotropic 3-D Smagorinsky
294 jmc 1.215 C useFullLeith :: Set to true to use full Leith viscosity(may be unstable
295     C on irregular grids)
296     C useStrainTensionVisc:: Set to true to use Strain-Tension viscous terms
297     C useAreaViscLength :: Set to true to use old scaling for viscous lengths,
298     C e.g., L2=Raz. May be preferable for cube sphere.
299 cnh 1.63 C momViscosity :: Flag which turns momentum friction terms on and off.
300     C momAdvection :: Flag which turns advection of momentum on and off.
301     C momForcing :: Flag which turns external forcing of momentum on
302 jmc 1.215 C and off.
303 cnh 1.63 C momPressureForcing :: Flag which turns pressure term in momentum equation
304 cnh 1.9 C on and off.
305 cnh 1.63 C metricTerms :: Flag which turns metric terms on or off.
306 jmc 1.182 C useNHMTerms :: If TRUE use non-hydrostatic metric terms.
307 cnh 1.63 C useCoriolis :: Flag which turns the coriolis terms on and off.
308 jmc 1.215 C use3dCoriolis :: Turns the 3-D coriolis terms (in Omega.cos Phi) on - off
309     C useCDscheme :: use CD-scheme to calculate Coriolis terms.
310     C vectorInvariantMomentum :: use Vector-Invariant form (mom_vecinv package)
311     C (default = F = use mom_fluxform package)
312     C useJamartWetPoints :: Use wet-point method for Coriolis (Jamart & Ozer 1986)
313     C useJamartMomAdv :: Use wet-point method for V.I. non-linear term
314     C upwindVorticity :: bias interpolation of vorticity in the Coriolis term
315     C highOrderVorticity :: use 3rd/4th order interp. of vorticity (V.I., advection)
316     C useAbsVorticity :: work with f+zeta in Coriolis terms
317 jmc 1.281 C upwindShear :: use 1rst order upwind interp. (V.I., vertical advection)
318 jmc 1.215 C momStepping :: Turns momentum equation time-stepping off
319 jmc 1.281 C calc_wVelocity :: Turns vertical velocity calculation off
320 jmc 1.215 C- Temp. & Salt params:
321 jmc 1.266 C tempStepping :: Turns temperature equation time-stepping on/off
322     C saltStepping :: Turns salinity equation time-stepping on/off
323     C addFrictionHeating :: account for frictional heating
324 jmc 1.215 C tempAdvection :: Flag which turns advection of temperature on and off.
325 jmc 1.261 C tempVertDiff4 :: use vertical bi-harmonic diffusion for temperature
326 jmc 1.215 C tempIsActiveTr :: Pot.Temp. is a dynamically active tracer
327 jmc 1.266 C tempForcing :: Flag which turns external forcing of temperature on/off
328 jmc 1.215 C saltAdvection :: Flag which turns advection of salinity on and off.
329 jmc 1.261 C saltVertDiff4 :: use vertical bi-harmonic diffusion for salinity
330 jmc 1.215 C saltIsActiveTr :: Salinity is a dynamically active tracer
331 jmc 1.266 C saltForcing :: Flag which turns external forcing of salinity on/off
332 jmc 1.230 C maskIniTemp :: apply mask to initial Pot.Temp.
333     C maskIniSalt :: apply mask to initial salinity
334     C checkIniTemp :: check for points with identically zero initial Pot.Temp.
335     C checkIniSalt :: check for points with identically zero initial salinity
336 mlosch 1.232 C- Pressure solver related parameters (PARM02)
337     C useSRCGSolver :: Set to true to use conjugate gradient
338     C solver with single reduction (only one call of
339     C s/r mpi_allreduce), default is false
340 jmc 1.260 C- Time-stepping & free-surface params:
341 cnh 1.63 C rigidLid :: Set to true to use rigid lid
342 jmc 1.173 C implicitFreeSurface :: Set to true to use implicit free surface
343 jmc 1.260 C uniformLin_PhiSurf :: Set to true to use a uniform Bo_surf in the
344     C linear relation Phi_surf = Bo_surf*eta
345     C uniformFreeSurfLev :: TRUE if free-surface level-index is uniform (=1)
346 cnh 1.63 C exactConserv :: Set to true to conserve exactly the total Volume
347 dfer 1.194 C linFSConserveTr :: Set to true to correct source/sink of tracer
348 jmc 1.206 C at the surface due to Linear Free Surface
349 jmc 1.260 C useRealFreshWaterFlux :: if True (=Natural BCS), treats P+R-E flux
350     C as a real Fresh Water (=> changes the Sea Level)
351     C if F, converts P+R-E to salt flux (no SL effect)
352 jmc 1.282 C storePhiHyd4Phys :: store hydrostatic potential for use in Physics/EOS
353     C this requires specific code for restart & exchange
354 jmc 1.215 C quasiHydrostatic :: Using non-hydrostatic terms in hydrostatic algorithm
355     C nonHydrostatic :: Using non-hydrostatic algorithm
356     C use3Dsolver :: set to true to use 3-D pressure solver
357 jmc 1.173 C implicitIntGravWave :: treat Internal Gravity Wave implicitly
358 jmc 1.215 C staggerTimeStep :: enable a Stagger time stepping U,V (& W) then T,S
359 jmc 1.281 C applyExchUV_early :: Apply EXCH to U,V earlier, just before integr_continuity
360 jmc 1.255 C doResetHFactors :: Do reset thickness factors @ beginning of each time-step
361 cnh 1.63 C implicitDiffusion :: Turns implicit vertical diffusion on
362     C implicitViscosity :: Turns implicit vertical viscosity on
363 jmc 1.278 C tempImplVertAdv :: Turns on implicit vertical advection for Temperature
364     C saltImplVertAdv :: Turns on implicit vertical advection for Salinity
365     C momImplVertAdv :: Turns on implicit vertical advection for Momentum
366 jmc 1.71 C multiDimAdvection :: Flag that enable multi-dimension advection
367 jmc 1.118 C useMultiDimAdvec :: True if multi-dim advection is used at least once
368 jmc 1.180 C momDissip_In_AB :: if False, put Dissipation tendency contribution
369 jmc 1.170 C out off Adams-Bashforth time stepping.
370     C doAB_onGtGs :: if the Adams-Bashforth time stepping is used, always
371 jmc 1.195 C apply AB on tracer tendencies (rather than on Tracer)
372 jmc 1.215 C- Other forcing params -
373     C balanceEmPmR :: substract global mean of EmPmR at every time step
374     C balanceQnet :: substract global mean of Qnet at every time step
375     C balancePrintMean:: print substracted global means to STDOUT
376 cnh 1.63 C doThetaClimRelax :: Set true if relaxation to temperature
377 cnh 1.18 C climatology is required.
378 cnh 1.63 C doSaltClimRelax :: Set true if relaxation to salinity
379 cnh 1.18 C climatology is required.
380 gforget 1.263 C balanceThetaClimRelax :: substract global mean effect at every time step
381     C balanceSaltClimRelax :: substract global mean effect at every time step
382 jmc 1.215 C allowFreezing :: Allows surface water to freeze and form ice
383 cnh 1.63 C periodicExternalForcing :: Set true if forcing is time-dependant
384 jmc 1.215 C- I/O parameters -
385 jmc 1.238 C globalFiles :: Selects between "global" and "tiled" files.
386     C On some platforms with MPI, option globalFiles is either
387     C slow or does not work. Use useSingleCpuIO instead.
388     C useSingleCpuIO :: moved to EEPARAMS.h
389 jmc 1.215 C pickupStrictlyMatch :: check and stop if pickup-file do not stricly match
390     C startFromPickupAB2 :: with AB-3 code, start from an AB-2 pickup
391     C usePickupBeforeC54 :: start from old-pickup files, generated with code from
392     C before checkpoint-54a, Jul 06, 2004.
393 edhill 1.124 C pickup_write_mdsio :: use mdsio to write pickups
394     C pickup_read_mdsio :: use mdsio to read pickups
395     C pickup_write_immed :: echo the pickup immediately (for conversion)
396 mlosch 1.213 C writePickupAtEnd :: write pickup at the last timestep
397 edhill 1.124 C timeave_mdsio :: use mdsio for timeave output
398     C snapshot_mdsio :: use mdsio for "snapshot" (dumpfreq/diagfreq) output
399 edhill 1.125 C monitor_stdio :: use stdio for monitor output
400 jmc 1.206 C dumpInitAndLast :: dumps model state to files at Initial (nIter0)
401 jmc 1.164 C & Last iteration, in addition multiple of dumpFreq iter.
402 mlosch 1.177
403 jmc 1.215 COMMON /PARM_L/
404     & fluidIsAir, fluidIsWater,
405 jmc 1.282 & usingPCoords, usingZCoords,
406 jmc 1.215 & usingCartesianGrid, usingSphericalPolarGrid, rotateGrid,
407 jmc 1.265 & usingCylindricalGrid, usingCurvilinearGrid, hasWetCSCorners,
408 jmc 1.287 & deepAtmosphere, setInterFDr, setCenterDr, useMin4hFacEdges,
409 jmc 1.278 & no_slip_sides, no_slip_bottom, bottomVisc_pCell, useSmag3D,
410 jmc 1.215 & useFullLeith, useStrainTensionVisc, useAreaViscLength,
411     & momViscosity, momAdvection, momForcing,
412     & momPressureForcing, metricTerms, useNHMTerms,
413     & useCoriolis, use3dCoriolis,
414     & useCDscheme, vectorInvariantMomentum,
415     & useEnergyConservingCoriolis, useJamartWetPoints, useJamartMomAdv,
416     & upwindVorticity, highOrderVorticity,
417     & useAbsVorticity, upwindShear,
418 jmc 1.254 & momStepping, calc_wVelocity, tempStepping, saltStepping,
419 jmc 1.266 & addFrictionHeating,
420 jmc 1.261 & tempAdvection, tempVertDiff4, tempIsActiveTr, tempForcing,
421     & saltAdvection, saltVertDiff4, saltIsActiveTr, saltForcing,
422 jmc 1.230 & maskIniTemp, maskIniSalt, checkIniTemp, checkIniSalt,
423 jmc 1.260 & useSRCGSolver,
424     & rigidLid, implicitFreeSurface,
425     & uniformLin_PhiSurf, uniformFreeSurfLev,
426     & exactConserv, linFSConserveTr, useRealFreshWaterFlux,
427 jmc 1.282 & storePhiHyd4Phys, quasiHydrostatic, nonHydrostatic,
428     & use3Dsolver, implicitIntGravWave, staggerTimeStep,
429 jmc 1.281 & applyExchUV_early, doResetHFactors,
430 jmc 1.284 & implicitDiffusion, implicitViscosity,
431 jmc 1.100 & tempImplVertAdv, saltImplVertAdv, momImplVertAdv,
432 jmc 1.183 & multiDimAdvection, useMultiDimAdvec,
433 jmc 1.180 & momDissip_In_AB, doAB_onGtGs,
434 jmc 1.215 & balanceEmPmR, balanceQnet, balancePrintMean,
435 gforget 1.263 & balanceThetaClimRelax, balanceSaltClimRelax,
436 jmc 1.215 & doThetaClimRelax, doSaltClimRelax,
437 jmc 1.272 & allowFreezing,
438 jmc 1.183 & periodicExternalForcing,
439 jmc 1.238 & globalFiles,
440 jmc 1.206 & pickupStrictlyMatch, usePickupBeforeC54, startFromPickupAB2,
441 edhill 1.124 & pickup_read_mdsio, pickup_write_mdsio, pickup_write_immed,
442 mlosch 1.213 & writePickupAtEnd,
443 edhill 1.155 & timeave_mdsio, snapshot_mdsio, monitor_stdio,
444 jmc 1.286 & outputTypesInclusive, dumpInitAndLast
445 edhill 1.131
446 jmc 1.215 LOGICAL fluidIsAir
447     LOGICAL fluidIsWater
448     LOGICAL usingPCoords
449     LOGICAL usingZCoords
450 cnh 1.1 LOGICAL usingCartesianGrid
451 jmc 1.215 LOGICAL usingSphericalPolarGrid, rotateGrid
452 afe 1.114 LOGICAL usingCylindricalGrid
453 jmc 1.265 LOGICAL usingCurvilinearGrid, hasWetCSCorners
454 jmc 1.192 LOGICAL deepAtmosphere
455 jmc 1.191 LOGICAL setInterFDr
456     LOGICAL setCenterDr
457 jmc 1.287 LOGICAL useMin4hFacEdges
458 jmc 1.266
459 adcroft 1.36 LOGICAL no_slip_sides
460     LOGICAL no_slip_bottom
461 jmc 1.278 LOGICAL bottomVisc_pCell
462 jmc 1.270 LOGICAL useSmag3D
463 jmc 1.246 LOGICAL useFullLeith
464     LOGICAL useStrainTensionVisc
465     LOGICAL useAreaViscLength
466 cnh 1.1 LOGICAL momViscosity
467     LOGICAL momAdvection
468     LOGICAL momForcing
469 cnh 1.9 LOGICAL momPressureForcing
470 jmc 1.266 LOGICAL metricTerms
471     LOGICAL useNHMTerms
472    
473 cnh 1.1 LOGICAL useCoriolis
474 jmc 1.266 LOGICAL use3dCoriolis
475     LOGICAL useCDscheme
476 adcroft 1.58 LOGICAL vectorInvariantMomentum
477 jmc 1.266 LOGICAL useEnergyConservingCoriolis
478     LOGICAL useJamartWetPoints
479     LOGICAL useJamartMomAdv
480     LOGICAL upwindVorticity
481     LOGICAL highOrderVorticity
482     LOGICAL useAbsVorticity
483     LOGICAL upwindShear
484     LOGICAL momStepping
485     LOGICAL calc_wVelocity
486     LOGICAL tempStepping
487     LOGICAL saltStepping
488     LOGICAL addFrictionHeating
489 cnh 1.1 LOGICAL tempAdvection
490 jmc 1.261 LOGICAL tempVertDiff4
491 jmc 1.216 LOGICAL tempIsActiveTr
492 cnh 1.1 LOGICAL tempForcing
493     LOGICAL saltAdvection
494 jmc 1.261 LOGICAL saltVertDiff4
495 jmc 1.216 LOGICAL saltIsActiveTr
496 cnh 1.1 LOGICAL saltForcing
497 jmc 1.230 LOGICAL maskIniTemp
498     LOGICAL maskIniSalt
499     LOGICAL checkIniTemp
500     LOGICAL checkIniSalt
501 jmc 1.246 LOGICAL useSRCGSolver
502 adcroft 1.52 LOGICAL rigidLid
503 cnh 1.8 LOGICAL implicitFreeSurface
504 jmc 1.260 LOGICAL uniformLin_PhiSurf
505     LOGICAL uniformFreeSurfLev
506 adcroft 1.52 LOGICAL exactConserv
507 dfer 1.194 LOGICAL linFSConserveTr
508 jmc 1.260 LOGICAL useRealFreshWaterFlux
509 jmc 1.282 LOGICAL storePhiHyd4Phys
510 jmc 1.215 LOGICAL quasiHydrostatic
511     LOGICAL nonHydrostatic
512 jmc 1.178 LOGICAL use3Dsolver
513 jmc 1.173 LOGICAL implicitIntGravWave
514     LOGICAL staggerTimeStep
515 jmc 1.281 LOGICAL applyExchUV_early
516 jmc 1.255 LOGICAL doResetHFactors
517 adcroft 1.14 LOGICAL implicitDiffusion
518 adcroft 1.40 LOGICAL implicitViscosity
519 jmc 1.183 LOGICAL tempImplVertAdv
520     LOGICAL saltImplVertAdv
521 jmc 1.100 LOGICAL momImplVertAdv
522 jmc 1.71 LOGICAL multiDimAdvection
523 jmc 1.118 LOGICAL useMultiDimAdvec
524 jmc 1.180 LOGICAL momDissip_In_AB
525 jmc 1.170 LOGICAL doAB_onGtGs
526 jmc 1.215 LOGICAL balanceEmPmR
527     LOGICAL balanceQnet
528     LOGICAL balancePrintMean
529 cnh 1.18 LOGICAL doThetaClimRelax
530     LOGICAL doSaltClimRelax
531 gforget 1.263 LOGICAL balanceThetaClimRelax
532     LOGICAL balanceSaltClimRelax
533 jmc 1.215 LOGICAL allowFreezing
534 adcroft 1.19 LOGICAL periodicExternalForcing
535 adcroft 1.38 LOGICAL globalFiles
536 jmc 1.206 LOGICAL pickupStrictlyMatch
537 jmc 1.117 LOGICAL usePickupBeforeC54
538 jmc 1.154 LOGICAL startFromPickupAB2
539 edhill 1.124 LOGICAL pickup_read_mdsio, pickup_write_mdsio
540 mlosch 1.213 LOGICAL pickup_write_immed, writePickupAtEnd
541 edhill 1.125 LOGICAL timeave_mdsio, snapshot_mdsio, monitor_stdio
542 edhill 1.133 LOGICAL outputTypesInclusive
543 jmc 1.215 LOGICAL dumpInitAndLast
544 cnh 1.1
545     C-- COMMON /PARM_R/ "Real" valued parameters used by the model.
546 jmc 1.119 C cg2dTargetResidual
547 cnh 1.63 C :: Target residual for cg2d solver; no unit (RHS normalisation)
548 adcroft 1.52 C cg2dTargetResWunit
549 cnh 1.63 C :: Target residual for cg2d solver; W unit (No RHS normalisation)
550 cnh 1.33 C cg3dTargetResidual
551 cnh 1.63 C :: Target residual for cg3d solver.
552     C cg2dpcOffDFac :: Averaging weight for preconditioner off-diagonal.
553 cnh 1.7 C Note. 20th May 1998
554     C I made a weird discovery! In the model paper we argue
555     C for the form of the preconditioner used here ( see
556     C A Finite-volume, Incompressible Navier-Stokes Model
557     C ...., Marshall et. al ). The algebra gives a simple
558     C 0.5 factor for the averaging of ac and aCw to get a
559     C symmettric pre-conditioner. By using a factor of 0.51
560     C i.e. scaling the off-diagonal terms in the
561     C preconditioner down slightly I managed to get the
562     C number of iterations for convergence in a test case to
563     C drop form 192 -> 134! Need to investigate this further!
564     C For now I have introduced a parameter cg2dpcOffDFac which
565     C defaults to 0.51 but can be set at runtime.
566 cnh 1.63 C delR :: Vertical grid spacing ( units of r ).
567 jmc 1.70 C delRc :: Vertical grid spacing between cell centers (r unit).
568 cnh 1.63 C delX :: Separation between cell faces (m) or (deg), depending
569 jmc 1.256 C delY on input flags. Note: moved to header file SET_GRID.h
570 jmc 1.247 C xgOrigin :: Origin of the X-axis (Cartesian Grid) / Longitude of Western
571     C :: most cell face (Lat-Lon grid) (Note: this is an "inert"
572     C :: parameter but it makes geographical references simple.)
573     C ygOrigin :: Origin of the Y-axis (Cartesian Grid) / Latitude of Southern
574     C :: most face (Lat-Lon grid).
575 jmc 1.283 C rSphere :: Radius of sphere for a spherical polar grid ( m ).
576     C recip_rSphere :: Reciprocal radius of sphere ( m^-1 ).
577     C radius_fromHorizGrid :: sphere Radius of input horiz. grid (Curvilinear Grid)
578     C seaLev_Z :: the reference height of sea-level (usually zero)
579     C top_Pres :: pressure (P-Coords) or reference pressure (Z-Coords) at the top
580 jmc 1.282 C rSigmaBnd :: vertical position (in r-unit) of r/sigma transition (Hybrid-Sigma)
581     C gravity :: Acceleration due to constant gravity ( m/s^2 )
582     C recip_gravity :: Reciprocal gravity acceleration ( s^2/m )
583 jmc 1.274 C gBaro :: Accel. due to gravity used in barotropic equation ( m/s^2 )
584 jmc 1.282 C gravFacC :: gravity factor (vs surf. gravity) vert. profile at cell-Center
585     C gravFacF :: gravity factor (vs surf. gravity) vert. profile at cell-interF
586 jmc 1.274 C rhoNil :: Reference density for the linear equation of state
587     C rhoConst :: Vertically constant reference density (Boussinesq)
588 jmc 1.282 C rho1Ref :: reference vertical profile for density (anelastic)
589 jmc 1.274 C rhoFacC :: normalized (by rhoConst) reference density at cell-Center
590     C rhoFacF :: normalized (by rhoConst) reference density at cell-interFace
591 mlosch 1.75 C rhoConstFresh :: Constant reference density for fresh water (rain)
592 jmc 1.282 C thetaConst :: Constant reference for potential temperature
593 jmc 1.274 C tRef :: reference vertical profile for potential temperature
594     C sRef :: reference vertical profile for salinity/specific humidity
595 jmc 1.282 C pRef4EOS :: reference pressure used in EOS (case selectP_inEOS_Zc=1)
596     C phiRef :: reference potential (press/rho, geopot) profile (m^2/s^2)
597 jmc 1.274 C dBdrRef :: vertical gradient of reference buoyancy [(m/s/r)^2]:
598     C :: z-coord: = N^2_ref = Brunt-Vaissala frequency [s^-2]
599     C :: p-coord: = -(d.alpha/dp)_ref [(m^2.s/kg)^2]
600 jmc 1.197 C rVel2wUnit :: units conversion factor (Non-Hydrostatic code),
601     C :: from r-coordinate vertical velocity to vertical velocity [m/s].
602     C :: z-coord: = 1 ; p-coord: wSpeed [m/s] = rVel [Pa/s] * rVel2wUnit
603     C wUnit2rVel :: units conversion factor (Non-Hydrostatic code),
604     C :: from vertical velocity [m/s] to r-coordinate vertical velocity.
605     C :: z-coord: = 1 ; p-coord: rVel [Pa/s] = wSpeed [m/s] * wUnit2rVel
606 jmc 1.203 C mass2rUnit :: units conversion factor (surface forcing),
607     C :: from mass per unit area [kg/m2] to vertical r-coordinate unit.
608     C :: z-coord: = 1/rhoConst ( [kg/m2] / rho = [m] ) ;
609     C :: p-coord: = gravity ( [kg/m2] * g = [Pa] ) ;
610     C rUnit2mass :: units conversion factor (surface forcing),
611     C :: from vertical r-coordinate unit to mass per unit area [kg/m2].
612     C :: z-coord: = rhoConst ( [m] * rho = [kg/m2] ) ;
613     C :: p-coord: = 1/gravity ( [Pa] / g = [kg/m2] ) ;
614 jmc 1.227 C f0 :: Reference coriolis parameter ( 1/s )
615     C ( Southern edge f for beta plane )
616     C beta :: df/dy ( s^-1.m^-1 )
617 jmc 1.243 C fPrime :: Second Coriolis parameter ( 1/s ), related to Y-component
618     C of rotation (reference value = 2.Omega.Cos(Phi))
619 jmc 1.227 C omega :: Angular velocity ( rad/s )
620 jmc 1.88 C rotationPeriod :: Rotation period (s) (= 2.pi/omega)
621 jmc 1.229 C viscArNr :: vertical profile of Eddy viscosity coeff.
622     C for vertical mixing of momentum ( units of r^2/s )
623 jmc 1.227 C viscAh :: Eddy viscosity coeff. for mixing of
624     C momentum laterally ( m^2/s )
625     C viscAhW :: Eddy viscosity coeff. for mixing of vertical
626     C momentum laterally, no effect for hydrostatic
627 jmc 1.270 C model, defaults to viscAhD if unset ( m^2/s )
628 jmc 1.227 C Not used if variable horiz. viscosity is used.
629     C viscA4 :: Biharmonic viscosity coeff. for mixing of
630     C momentum laterally ( m^4/s )
631     C viscA4W :: Biharmonic viscosity coeff. for mixing of vertical
632     C momentum laterally, no effect for hydrostatic
633 jmc 1.270 C model, defaults to viscA4D if unset ( m^2/s )
634 jmc 1.227 C Not used if variable horiz. viscosity is used.
635     C viscAhD :: Eddy viscosity coeff. for mixing of momentum laterally
636     C (act on Divergence part) ( m^2/s )
637     C viscAhZ :: Eddy viscosity coeff. for mixing of momentum laterally
638     C (act on Vorticity part) ( m^2/s )
639     C viscA4D :: Biharmonic viscosity coeff. for mixing of momentum laterally
640     C (act on Divergence part) ( m^4/s )
641     C viscA4Z :: Biharmonic viscosity coeff. for mixing of momentum laterally
642     C (act on Vorticity part) ( m^4/s )
643 jmc 1.270 C smag3D_coeff :: Isotropic 3-D Smagorinsky coefficient (-)
644 jmc 1.214 C viscC2leith :: Leith non-dimensional viscosity factor (grad(vort))
645 baylor 1.166 C viscC2leithD :: Modified Leith non-dimensional visc. factor (grad(div))
646 jmc 1.214 C viscC4leith :: Leith non-dimensional viscosity factor (grad(vort))
647     C viscC4leithD :: Modified Leith non-dimensional viscosity factor (grad(div))
648     C viscC2smag :: Smagorinsky non-dimensional viscosity factor (harmonic)
649     C viscC4smag :: Smagorinsky non-dimensional viscosity factor (biharmonic)
650     C viscAhMax :: Maximum eddy viscosity coeff. for mixing of
651     C momentum laterally ( m^2/s )
652     C viscAhReMax :: Maximum gridscale Reynolds number for eddy viscosity
653     C coeff. for mixing of momentum laterally (non-dim)
654     C viscAhGrid :: non-dimensional grid-size dependent viscosity
655 baylor 1.146 C viscAhGridMax:: maximum and minimum harmonic viscosity coefficients ...
656 baylor 1.166 C viscAhGridMin:: in terms of non-dimensional grid-size dependent visc.
657 jmc 1.214 C viscA4Max :: Maximum biharmonic viscosity coeff. for mixing of
658     C momentum laterally ( m^4/s )
659     C viscA4ReMax :: Maximum Gridscale Reynolds number for
660     C biharmonic viscosity coeff. momentum laterally (non-dim)
661     C viscA4Grid :: non-dimensional grid-size dependent bi-harmonic viscosity
662 dimitri 1.136 C viscA4GridMax:: maximum and minimum biharmonic viscosity coefficients ...
663     C viscA4GridMin:: in terms of non-dimensional grid-size dependent viscosity
664 cnh 1.63 C diffKhT :: Laplacian diffusion coeff. for mixing of
665 cnh 1.1 C heat laterally ( m^2/s )
666 jmc 1.261 C diffK4T :: Biharmonic diffusion coeff. for mixing of
667     C heat laterally ( m^4/s )
668 jmc 1.214 C diffKrNrT :: vertical profile of Laplacian diffusion coeff.
669 jmc 1.132 C for mixing of heat vertically ( units of r^2/s )
670 jmc 1.261 C diffKr4T :: vertical profile of Biharmonic diffusion coeff.
671     C for mixing of heat vertically ( units of r^4/s )
672 cnh 1.63 C diffKhS :: Laplacian diffusion coeff. for mixing of
673 cnh 1.1 C salt laterally ( m^2/s )
674 jmc 1.261 C diffK4S :: Biharmonic diffusion coeff. for mixing of
675     C salt laterally ( m^4/s )
676 jmc 1.214 C diffKrNrS :: vertical profile of Laplacian diffusion coeff.
677     C for mixing of salt vertically ( units of r^2/s ),
678 jmc 1.261 C diffKr4S :: vertical profile of Biharmonic diffusion coeff.
679     C for mixing of salt vertically ( units of r^4/s )
680 adcroft 1.112 C diffKrBL79surf :: T/S surface diffusivity (m^2/s) Bryan and Lewis, 1979
681     C diffKrBL79deep :: T/S deep diffusivity (m^2/s) Bryan and Lewis, 1979
682     C diffKrBL79scl :: depth scale for arctan fn (m) Bryan and Lewis, 1979
683     C diffKrBL79Ho :: depth offset for arctan fn (m) Bryan and Lewis, 1979
684 dimitri 1.201 C BL79LatVary :: polarwise of this latitude diffKrBL79 is applied with
685     C gradual transition to diffKrBLEQ towards Equator
686     C diffKrBLEQsurf :: same as diffKrBL79surf but at Equator
687     C diffKrBLEQdeep :: same as diffKrBL79deep but at Equator
688     C diffKrBLEQscl :: same as diffKrBL79scl but at Equator
689     C diffKrBLEQHo :: same as diffKrBL79Ho but at Equator
690 cnh 1.63 C deltaT :: Default timestep ( s )
691     C deltaTClock :: Timestep used as model "clock". This determines the
692 cnh 1.7 C IO frequencies and is used in tagging output. It can
693     C be totally different to the dynamical time. Typically
694     C it will be the deep-water timestep for accelerated runs.
695     C Frequency of checkpointing and dumping of the model state
696     C are referenced to this clock. ( s )
697 cnh 1.63 C deltaTMom :: Timestep for momemtum equations ( s )
698 jmc 1.139 C dTtracerLev :: Timestep for tracer equations ( s ), function of level k
699 jmc 1.266 C deltaTFreeSurf :: Timestep for free-surface equation ( s )
700 jmc 1.260 C freeSurfFac :: Parameter to turn implicit free surface term on or off
701     C freeSurFac = 1. uses implicit free surface
702     C freeSurFac = 0. uses rigid lid
703 jmc 1.154 C abEps :: Adams-Bashforth-2 stabilizing weight
704     C alph_AB :: Adams-Bashforth-3 primary factor
705     C beta_AB :: Adams-Bashforth-3 secondary factor
706 cnh 1.63 C implicSurfPress :: parameter of the Crank-Nickelson time stepping :
707 jmc 1.48 C Implicit part of Surface Pressure Gradient ( 0-1 )
708 jmc 1.284 C implicDiv2DFlow :: parameter of the Crank-Nickelson time stepping :
709 jmc 1.48 C Implicit part of barotropic flow Divergence ( 0-1 )
710 jmc 1.233 C implicitNHPress :: parameter of the Crank-Nickelson time stepping :
711     C Implicit part of Non-Hydrostatic Pressure Gradient ( 0-1 )
712 cnh 1.63 C hFacMin :: Minimum fraction size of a cell (affects hFacC etc...)
713 jmc 1.231 C hFacMinDz :: Minimum dimensional size of a cell (affects hFacC etc..., m)
714     C hFacMinDp :: Minimum dimensional size of a cell (affects hFacC etc..., Pa)
715     C hFacMinDr :: Minimum dimensional size of a cell (-> hFacC etc..., r units)
716 cnh 1.63 C hFacInf :: Threshold (inf and sup) for fraction size of surface cell
717 jmc 1.231 C hFacSup that control vanishing and creating levels
718     C tauCD :: CD scheme coupling timescale ( s )
719     C rCD :: CD scheme normalised coupling parameter (= 1 - deltaT/tauCD)
720     C epsAB_CD :: Adams-Bashforth-2 stabilizing weight used in CD scheme
721 jmc 1.150 C baseTime :: model base time (time origin) = time @ iteration zero
722 cnh 1.63 C startTime :: Starting time for this integration ( s ).
723     C endTime :: Ending time for this integration ( s ).
724     C chkPtFreq :: Frequency of rolling check pointing ( s ).
725     C pChkPtFreq :: Frequency of permanent check pointing ( s ).
726     C dumpFreq :: Frequency with which model state is written to
727 jmc 1.260 C post-processing files ( s ).
728 cnh 1.63 C diagFreq :: Frequency with which model writes diagnostic output
729 jmc 1.260 C of intermediate quantities.
730 cnh 1.63 C afFacMom :: Advection of momentum term tracer parameter
731     C vfFacMom :: Momentum viscosity tracer parameter
732     C pfFacMom :: Momentum pressure forcing tracer parameter
733     C cfFacMom :: Coriolis term tracer parameter
734     C foFacMom :: Momentum forcing tracer parameter
735     C mtFacMom :: Metric terms tracer parameter
736     C cosPower :: Power of cosine of latitude to multiply viscosity
737     C cAdjFreq :: Frequency of convective adjustment
738 cnh 1.24 C
739 jmc 1.214 C taveFreq :: Frequency with which time-averaged model state
740 jmc 1.76 C is written to post-processing files ( s ).
741 jmc 1.214 C tave_lastIter :: (for state variable only) fraction of the last time
742     C step (of each taveFreq period) put in the time average.
743 jmc 1.76 C (fraction for 1rst iter = 1 - tave_lastIter)
744 cnh 1.63 C tauThetaClimRelax :: Relaxation to climatology time scale ( s ).
745     C tauSaltClimRelax :: Relaxation to climatology time scale ( s ).
746 jmc 1.95 C latBandClimRelax :: latitude band where Relaxation to Clim. is applied,
747     C i.e. where |yC| <= latBandClimRelax
748 cnh 1.63 C externForcingPeriod :: Is the period of which forcing varies (eg. 1 month)
749     C externForcingCycle :: Is the repeat time of the forcing (eg. 1 year)
750 adcroft 1.19 C (note: externForcingCycle must be an integer
751     C number times externForcingPeriod)
752 jmc 1.68 C convertFW2Salt :: salinity, used to convert Fresh-Water Flux to Salt Flux
753     C (use model surface (local) value if set to -1)
754 jmc 1.214 C temp_EvPrRn :: temperature of Rain & Evap.
755 jmc 1.68 C salt_EvPrRn :: salinity of Rain & Evap.
756 dimitri 1.237 C temp_addMass :: temperature of addMass array
757     C salt_addMass :: salinity of addMass array
758 jmc 1.214 C (notes: a) tracer content of Rain/Evap only used if both
759 jmc 1.68 C NonLin_FrSurf & useRealFreshWater are set.
760     C b) use model surface (local) value if set to UNSET_RL)
761 dfer 1.225 C hMixCriteria:: criteria for mixed-layer diagnostic
762     C dRhoSmall :: parameter for mixed-layer diagnostic
763 dfer 1.226 C hMixSmooth :: Smoothing parameter for mixed-layer diag (default=0=no smoothing)
764 jmc 1.202 C ivdc_kappa :: implicit vertical diffusivity for convection [m^2/s]
765 jmc 1.214 C sideDragFactor :: side-drag scaling factor (used only if no_slip_sides)
766 jmc 1.169 C (default=2: full drag ; =1: gives half-slip BC)
767 jmc 1.184 C bottomDragLinear :: Linear bottom-drag coefficient (units of [r]/s)
768     C bottomDragQuadratic :: Quadratic bottom-drag coefficient (units of [r]/m)
769     C (if using zcoordinate, units becomes linear: m/s, quadratic: [-])
770 heimbach 1.185 C smoothAbsFuncRange :: 1/2 of interval around zero, for which FORTRAN ABS
771     C is to be replace by a smoother function
772     C (affects myabs, mymin, mymax)
773 jmc 1.169 C nh_Am2 :: scales the non-hydrostatic terms and changes internal scales
774     C (i.e. allows convection at different Rayleigh numbers)
775 jmc 1.266 C tCylIn :: Temperature of the cylinder inner boundary
776     C tCylOut :: Temperature of the cylinder outer boundary
777 mlosch 1.212 C phiEuler :: Euler angle, rotation about original z-axis
778     C thetaEuler :: Euler angle, rotation about new x-axis
779     C psiEuler :: Euler angle, rotation about new z-axis
780 jmc 1.183 COMMON /PARM_R/ cg2dTargetResidual, cg2dTargetResWunit,
781 adcroft 1.52 & cg2dpcOffDFac, cg3dTargetResidual,
782 jmc 1.283 & delR, delRc, xgOrigin, ygOrigin, rSphere, recip_rSphere,
783     & radius_fromHorizGrid, seaLev_Z, top_Pres, rSigmaBnd,
784 jmc 1.266 & deltaT, deltaTMom, dTtracerLev, deltaTFreeSurf, deltaTClock,
785 jmc 1.154 & abEps, alph_AB, beta_AB,
786 jmc 1.243 & f0, beta, fPrime, omega, rotationPeriod,
787 jmc 1.270 & viscFacAdj, viscAh, viscAhW, smag3D_coeff,
788     & viscAhMax, viscAhGrid, viscAhGridMax, viscAhGridMin,
789 baylor 1.146 & viscC2leith, viscC2leithD,
790 baylor 1.165 & viscC2smag, viscC4smag,
791 jmc 1.135 & viscAhD, viscAhZ, viscA4D, viscA4Z,
792 jmc 1.214 & viscA4, viscA4W, viscA4Max,
793     & viscA4Grid, viscA4GridMax, viscA4GridMin,
794     & viscAhReMax, viscA4ReMax,
795 jmc 1.229 & viscC4leith, viscC4leithD, viscArNr,
796 jmc 1.261 & diffKhT, diffK4T, diffKrNrT, diffKr4T,
797     & diffKhS, diffK4S, diffKrNrS, diffKr4S,
798 adcroft 1.112 & diffKrBL79surf, diffKrBL79deep, diffKrBL79scl, diffKrBL79Ho,
799 dimitri 1.201 & BL79LatVary,
800 dimitri 1.200 & diffKrBLEQsurf, diffKrBLEQdeep, diffKrBLEQscl, diffKrBLEQHo,
801 jmc 1.231 & tauCD, rCD, epsAB_CD,
802 jmc 1.284 & freeSurfFac, implicSurfPress, implicDiv2DFlow, implicitNHPress,
803 adcroft 1.52 & hFacMin, hFacMinDz, hFacInf, hFacSup,
804 jmc 1.203 & gravity, recip_gravity, gBaro,
805 jmc 1.282 & gravFacC, recip_gravFacC, gravFacF, recip_gravFacF,
806     & rhoNil, rhoConst, recip_rhoConst, rho1Ref,
807     & rhoFacC, recip_rhoFacC, rhoFacF, recip_rhoFacF, rhoConstFresh,
808 jmc 1.283 & thetaConst, tRef, sRef, pRef4EOS, phiRef, dBdrRef,
809 jmc 1.203 & rVel2wUnit, wUnit2rVel, mass2rUnit, rUnit2mass,
810 jmc 1.183 & baseTime, startTime, endTime,
811     & chkPtFreq, pChkPtFreq, dumpFreq, adjDumpFreq,
812 heimbach 1.143 & diagFreq, taveFreq, tave_lastIter, monitorFreq, adjMonitorFreq,
813 cnh 1.15 & afFacMom, vfFacMom, pfFacMom, cfFacMom, foFacMom, mtFacMom,
814 jmc 1.243 & cosPower, cAdjFreq,
815 jmc 1.215 & tauThetaClimRelax, tauSaltClimRelax, latBandClimRelax,
816 cnh 1.27 & externForcingCycle, externForcingPeriod,
817 jmc 1.137 & convertFW2Salt, temp_EvPrRn, salt_EvPrRn,
818 dimitri 1.237 & temp_addMass, salt_addMass, hFacMinDr, hFacMinDp,
819 jmc 1.239 & ivdc_kappa, hMixCriteria, dRhoSmall, hMixSmooth,
820 jmc 1.169 & sideDragFactor, bottomDragLinear, bottomDragQuadratic, nh_Am2,
821 jmc 1.191 & smoothAbsFuncRange,
822 mlosch 1.212 & tCylIn, tCylOut,
823     & phiEuler, thetaEuler, psiEuler
824 cnh 1.27
825 adcroft 1.6 _RL cg2dTargetResidual
826 adcroft 1.52 _RL cg2dTargetResWunit
827 cnh 1.33 _RL cg3dTargetResidual
828 cnh 1.7 _RL cg2dpcOffDFac
829 cnh 1.25 _RL delR(Nr)
830 jmc 1.70 _RL delRc(Nr+1)
831 jmc 1.247 _RL xgOrigin
832     _RL ygOrigin
833 jmc 1.283 _RL rSphere
834     _RL recip_rSphere
835     _RL radius_fromHorizGrid
836     _RL seaLev_Z
837     _RL top_Pres
838 jmc 1.282 _RL rSigmaBnd
839 adcroft 1.6 _RL deltaT
840 cnh 1.7 _RL deltaTClock
841 jmc 1.266 _RL deltaTMom
842 jmc 1.139 _RL dTtracerLev(Nr)
843 jmc 1.266 _RL deltaTFreeSurf
844 jmc 1.154 _RL abEps, alph_AB, beta_AB
845 adcroft 1.6 _RL f0
846 jmc 1.243 _RL beta
847     _RL fPrime
848     _RL omega
849     _RL rotationPeriod
850 cnh 1.8 _RL freeSurfFac
851 jmc 1.48 _RL implicSurfPress
852 jmc 1.284 _RL implicDiv2DFlow
853 jmc 1.233 _RL implicitNHPress
854 adcroft 1.22 _RL hFacMin
855     _RL hFacMinDz
856 cnh 1.28 _RL hFacMinDp
857 cnh 1.27 _RL hFacMinDr
858 adcroft 1.52 _RL hFacInf
859     _RL hFacSup
860 jmc 1.229 _RL viscArNr(Nr)
861 heimbach 1.241 _RL viscFacAdj
862 adcroft 1.6 _RL viscAh
863 mlosch 1.128 _RL viscAhW
864 jmc 1.135 _RL viscAhD
865     _RL viscAhZ
866 jmc 1.270 _RL smag3D_coeff
867 adcroft 1.102 _RL viscAhMax
868 baylor 1.166 _RL viscAhReMax
869 jmc 1.214 _RL viscAhGrid, viscAhGridMax, viscAhGridMin
870 adcroft 1.110 _RL viscC2leith
871 baylor 1.146 _RL viscC2leithD
872 baylor 1.147 _RL viscC2smag
873 jmc 1.183 _RL viscA4
874 mlosch 1.140 _RL viscA4W
875 jmc 1.135 _RL viscA4D
876     _RL viscA4Z
877 adcroft 1.102 _RL viscA4Max
878 baylor 1.166 _RL viscA4ReMax
879 dimitri 1.136 _RL viscA4Grid, viscA4GridMax, viscA4GridMin
880 adcroft 1.110 _RL viscC4leith
881 baylor 1.146 _RL viscC4leithD
882 jmc 1.214 _RL viscC4smag
883 jmc 1.183 _RL diffKhT
884 jmc 1.261 _RL diffK4T
885 jmc 1.132 _RL diffKrNrT(Nr)
886 jmc 1.261 _RL diffKr4T(Nr)
887 jmc 1.183 _RL diffKhS
888 jmc 1.261 _RL diffK4S
889 jmc 1.132 _RL diffKrNrS(Nr)
890 jmc 1.261 _RL diffKr4S(Nr)
891 adcroft 1.112 _RL diffKrBL79surf
892     _RL diffKrBL79deep
893     _RL diffKrBL79scl
894     _RL diffKrBL79Ho
895 dimitri 1.201 _RL BL79LatVary
896 dimitri 1.200 _RL diffKrBLEQsurf
897     _RL diffKrBLEQdeep
898     _RL diffKrBLEQscl
899     _RL diffKrBLEQHo
900 jmc 1.231 _RL tauCD, rCD, epsAB_CD
901 jmc 1.282 _RL gravity, recip_gravity
902 cnh 1.8 _RL gBaro
903 jmc 1.282 _RL gravFacC(Nr), recip_gravFacC(Nr)
904     _RL gravFacF(Nr+1), recip_gravFacF(Nr+1)
905 jmc 1.257 _RL rhoNil
906 jmc 1.191 _RL rhoConst, recip_rhoConst
907 jmc 1.282 _RL rho1Ref(Nr)
908 jmc 1.191 _RL rhoFacC(Nr), recip_rhoFacC(Nr)
909     _RL rhoFacF(Nr+1), recip_rhoFacF(Nr+1)
910 mlosch 1.75 _RL rhoConstFresh
911 jmc 1.282 _RL thetaConst
912 cnh 1.25 _RL tRef(Nr)
913     _RL sRef(Nr)
914 jmc 1.282 _RL pRef4EOS(Nr)
915 jmc 1.171 _RL phiRef(2*Nr+1)
916 jmc 1.173 _RL dBdrRef(Nr)
917 jmc 1.197 _RL rVel2wUnit(Nr+1), wUnit2rVel(Nr+1)
918 jmc 1.203 _RL mass2rUnit, rUnit2mass
919 jmc 1.150 _RL baseTime
920 adcroft 1.6 _RL startTime
921     _RL endTime
922     _RL chkPtFreq
923 cnh 1.7 _RL pChkPtFreq
924 adcroft 1.6 _RL dumpFreq
925 heimbach 1.103 _RL adjDumpFreq
926 adcroft 1.59 _RL diagFreq
927 adcroft 1.20 _RL taveFreq
928 jmc 1.76 _RL tave_lastIter
929 adcroft 1.53 _RL monitorFreq
930 heimbach 1.143 _RL adjMonitorFreq
931 cnh 1.9 _RL afFacMom
932     _RL vfFacMom
933     _RL pfFacMom
934     _RL cfFacMom
935     _RL foFacMom
936 jmc 1.182 _RL mtFacMom
937 adcroft 1.39 _RL cosPower
938 cnh 1.9 _RL cAdjFreq
939 cnh 1.18 _RL tauThetaClimRelax
940     _RL tauSaltClimRelax
941 jmc 1.95 _RL latBandClimRelax
942 adcroft 1.19 _RL externForcingCycle
943     _RL externForcingPeriod
944 jmc 1.68 _RL convertFW2Salt
945     _RL temp_EvPrRn
946     _RL salt_EvPrRn
947 dimitri 1.237 _RL temp_addMass
948     _RL salt_addMass
949 adcroft 1.41 _RL ivdc_kappa
950 jmc 1.202 _RL hMixCriteria
951 dfer 1.225 _RL dRhoSmall
952 dfer 1.226 _RL hMixSmooth
953 jmc 1.169 _RL sideDragFactor
954 adcroft 1.46 _RL bottomDragLinear
955     _RL bottomDragQuadratic
956 heimbach 1.185 _RL smoothAbsFuncRange
957 jmc 1.169 _RL nh_Am2
958 jmc 1.266 _RL tCylIn, tCylOut
959 mlosch 1.212 _RL phiEuler, thetaEuler, psiEuler
960 adcroft 1.6
961 jmc 1.91 C-- COMMON /PARM_A/ Thermodynamics constants ?
962 jmc 1.274 COMMON /PARM_A/ HeatCapacity_Cp
963 adcroft 1.6 _RL HeatCapacity_Cp
964 jmc 1.55
965 jmc 1.91 C-- COMMON /PARM_ATM/ Atmospheric physical parameters (Ideal Gas EOS, ...)
966     C celsius2K :: convert centigrade (Celsius) degree to Kelvin
967 jmc 1.83 C atm_Po :: standard reference pressure
968     C atm_Cp :: specific heat (Cp) of the (dry) air at constant pressure
969     C atm_Rd :: gas constant for dry air
970 cnh 1.63 C atm_kappa :: kappa = R/Cp (R: constant of Ideal Gas EOS)
971 jmc 1.94 C atm_Rq :: water vapour specific volume anomaly relative to dry air
972     C (e.g. typical value = (29/18 -1) 10^-3 with q [g/kg])
973 jmc 1.83 C integr_GeoPot :: option to select the way we integrate the geopotential
974 jmc 1.214 C (still a subject of discussions ...)
975 jmc 1.83 C selectFindRoSurf :: select the way surf. ref. pressure (=Ro_surf) is
976     C derived from the orography. Implemented: 0,1 (see INI_P_GROUND)
977 jmc 1.183 COMMON /PARM_ATM/
978 jmc 1.91 & celsius2K,
979 jmc 1.94 & atm_Cp, atm_Rd, atm_kappa, atm_Rq, atm_Po,
980 jmc 1.91 & integr_GeoPot, selectFindRoSurf
981     _RL celsius2K
982 jmc 1.94 _RL atm_Po, atm_Cp, atm_Rd, atm_kappa, atm_Rq
983 jmc 1.83 INTEGER integr_GeoPot, selectFindRoSurf
984 cnh 1.7
985 adcroft 1.44 C Logical flags for selecting packages
986 jmc 1.220 LOGICAL useGAD
987     LOGICAL useOBCS
988     LOGICAL useSHAP_FILT
989     LOGICAL useZONAL_FILT
990 mlosch 1.126 LOGICAL useOPPS
991 mlosch 1.121 LOGICAL usePP81
992 jmc 1.275 LOGICAL useKL10
993 mlosch 1.121 LOGICAL useMY82
994 mlosch 1.126 LOGICAL useGGL90
995 heimbach 1.45 LOGICAL useKPP
996     LOGICAL useGMRedi
997 jmc 1.220 LOGICAL useDOWN_SLOPE
998 dimitri 1.253 LOGICAL useBBL
999 jmc 1.183 LOGICAL useCAL
1000     LOGICAL useEXF
1001 jmc 1.220 LOGICAL useBulkForce
1002 jmc 1.183 LOGICAL useEBM
1003 jmc 1.220 LOGICAL useCheapAML
1004 gforget 1.279 LOGICAL useAUTODIFF
1005 heimbach 1.56 LOGICAL useGrdchk
1006 jmc 1.231 LOGICAL useSMOOTH
1007 gforget 1.262 LOGICAL usePROFILES
1008 heimbach 1.45 LOGICAL useECCO
1009 gforget 1.277 LOGICAL useCTRL
1010 jmc 1.220 LOGICAL useSBO
1011 adcroft 1.62 LOGICAL useFLT
1012 adcroft 1.69 LOGICAL usePTRACERS
1013 mlosch 1.138 LOGICAL useGCHEM
1014 stephd 1.172 LOGICAL useRBCS
1015 jmc 1.181 LOGICAL useOffLine
1016 jmc 1.183 LOGICAL useMATRIX
1017 dimitri 1.259 LOGICAL useFRAZIL
1018 heimbach 1.80 LOGICAL useSEAICE
1019 jmc 1.220 LOGICAL useSALT_PLUME
1020 mlosch 1.176 LOGICAL useShelfIce
1021 heimbach 1.258 LOGICAL useStreamIce
1022 dimitri 1.235 LOGICAL useICEFRONT
1023 jmc 1.183 LOGICAL useThSIce
1024 jmc 1.269 LOGICAL useLand
1025 jscott 1.190 LOGICAL useATM2d
1026 jmc 1.220 LOGICAL useAIM
1027 jmc 1.269 LOGICAL useAtm_Phys
1028 jmc 1.220 LOGICAL useFizhi
1029     LOGICAL useGridAlt
1030 jmc 1.179 LOGICAL useDiagnostics
1031 jmc 1.220 LOGICAL useREGRID
1032 rpa 1.228 LOGICAL useLayers
1033 edhill 1.130 LOGICAL useMNC
1034 adcroft 1.158 LOGICAL useRunClock
1035 edhill 1.175 LOGICAL useEMBED_FILES
1036 heimbach 1.187 LOGICAL useMYPACKAGE
1037 adcroft 1.44 COMMON /PARM_PACKAGES/
1038 jmc 1.220 & useGAD, useOBCS, useSHAP_FILT, useZONAL_FILT,
1039 jmc 1.275 & useOPPS, usePP81, useKL10, useMY82, useGGL90, useKPP,
1040 jmc 1.278 & useGMRedi, useBBL, useDOWN_SLOPE,
1041 jmc 1.220 & useCAL, useEXF, useBulkForce, useEBM, useCheapAML,
1042 jmc 1.278 & useGrdchk, useSMOOTH, usePROFILES, useECCO, useCTRL,
1043 gforget 1.279 & useSBO, useFLT, useAUTODIFF,
1044 jmc 1.183 & usePTRACERS, useGCHEM, useRBCS, useOffLine, useMATRIX,
1045 dimitri 1.259 & useFRAZIL, useSEAICE, useSALT_PLUME, useShelfIce,
1046 jmc 1.269 & useStreamIce, useICEFRONT, useThSIce, useLand,
1047     & useATM2D, useAIM, useAtm_Phys, useFizhi, useGridAlt,
1048 rpa 1.228 & useDiagnostics, useREGRID, useLayers, useMNC,
1049 jmc 1.220 & useRunClock, useEMBED_FILES,
1050 jmc 1.219 & useMYPACKAGE
1051 mlosch 1.245
1052 edhill 1.105 CEH3 ;;; Local Variables: ***
1053     CEH3 ;;; mode:fortran ***
1054     CEH3 ;;; End: ***

  ViewVC Help
Powered by ViewVC 1.1.22