/[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.259 - (hide annotations) (download)
Fri Mar 2 01:45:22 2012 UTC (12 years, 3 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint63l, checkpoint63k
Changes since 1.258: +5 -6 lines
File MIME type: text/plain
adding pkg/frazil - see frazil_description.tex for details

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

  ViewVC Help
Powered by ViewVC 1.1.22