/[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.251 - (hide annotations) (download)
Mon Jun 6 12:43:27 2011 UTC (13 years ago) by jmc
Branch: MAIN
Changes since 1.250: +4 -5 lines
File MIME type: text/plain
move debugMode from PARAMS.h to EEPARAMS.h

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

  ViewVC Help
Powered by ViewVC 1.1.22