/[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.247 - (hide annotations) (download)
Tue Feb 22 18:35:30 2011 UTC (13 years, 2 months ago) by jmc
Branch: MAIN
Changes since 1.246: +12 -10 lines
File MIME type: text/plain
add new param to scale curvilinear grid distance and area when using
 a different rSphere.

1 jmc 1.247 C $Header: /u/gcmpack/MITgcm/model/inc/PARAMS.h,v 1.246 2010/12/24 21:48:39 jmc Exp $
2 mlosch 1.74 C $Name: $
3 cnh 1.1 C
4 edhill 1.124
5 cnh 1.63 CBOP
6 edhill 1.124 C !ROUTINE: PARAMS.h
7     C !INTERFACE:
8     C #include PARAMS.h
9    
10     C !DESCRIPTION:
11     C Header file defining model "parameters". The values from the
12     C model standard input file are stored into the variables held
13     C here. Notes describing the parameters can also be found here.
14    
15 cnh 1.63 CEOP
16 cnh 1.13
17     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     C useOldFreezing :: use the old version (before checkpoint52a_pre, 2003-11-12)
340 cnh 1.63 C periodicExternalForcing :: Set true if forcing is time-dependant
341 jmc 1.215 C- I/O parameters -
342 jmc 1.238 C globalFiles :: Selects between "global" and "tiled" files.
343     C On some platforms with MPI, option globalFiles is either
344     C slow or does not work. Use useSingleCpuIO instead.
345     C useSingleCpuIO :: moved to EEPARAMS.h
346 jmc 1.215 C pickupStrictlyMatch :: check and stop if pickup-file do not stricly match
347     C startFromPickupAB2 :: with AB-3 code, start from an AB-2 pickup
348     C usePickupBeforeC54 :: start from old-pickup files, generated with code from
349     C before checkpoint-54a, Jul 06, 2004.
350 edhill 1.124 C pickup_write_mdsio :: use mdsio to write pickups
351     C pickup_read_mdsio :: use mdsio to read pickups
352     C pickup_write_immed :: echo the pickup immediately (for conversion)
353 mlosch 1.213 C writePickupAtEnd :: write pickup at the last timestep
354 edhill 1.124 C timeave_mdsio :: use mdsio for timeave output
355     C snapshot_mdsio :: use mdsio for "snapshot" (dumpfreq/diagfreq) output
356 edhill 1.125 C monitor_stdio :: use stdio for monitor output
357 jmc 1.206 C dumpInitAndLast :: dumps model state to files at Initial (nIter0)
358 jmc 1.164 C & Last iteration, in addition multiple of dumpFreq iter.
359 jmc 1.244 C debugMode :: controls printing of debug msg (sequence of S/R calls).
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     & allowFreezing, 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     & debugMode, printDomain,
401     & 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     LOGICAL useOldFreezing
478 adcroft 1.19 LOGICAL periodicExternalForcing
479 adcroft 1.38 LOGICAL globalFiles
480 jmc 1.206 LOGICAL pickupStrictlyMatch
481 jmc 1.117 LOGICAL usePickupBeforeC54
482 jmc 1.154 LOGICAL startFromPickupAB2
483 edhill 1.124 LOGICAL pickup_read_mdsio, pickup_write_mdsio
484 mlosch 1.213 LOGICAL pickup_write_immed, writePickupAtEnd
485 edhill 1.125 LOGICAL timeave_mdsio, snapshot_mdsio, monitor_stdio
486 edhill 1.133 LOGICAL outputTypesInclusive
487 jmc 1.215 LOGICAL dumpInitAndLast
488 jmc 1.246 LOGICAL debugMode, printDomain
489 heimbach 1.143 LOGICAL inAdMode, inAdTrue, inAdFalse, inAdExact
490 cnh 1.1
491     C-- COMMON /PARM_R/ "Real" valued parameters used by the model.
492 jmc 1.119 C cg2dTargetResidual
493 cnh 1.63 C :: Target residual for cg2d solver; no unit (RHS normalisation)
494 adcroft 1.52 C cg2dTargetResWunit
495 cnh 1.63 C :: Target residual for cg2d solver; W unit (No RHS normalisation)
496 cnh 1.33 C cg3dTargetResidual
497 cnh 1.63 C :: Target residual for cg3d solver.
498     C cg2dpcOffDFac :: Averaging weight for preconditioner off-diagonal.
499 cnh 1.7 C Note. 20th May 1998
500     C I made a weird discovery! In the model paper we argue
501     C for the form of the preconditioner used here ( see
502     C A Finite-volume, Incompressible Navier-Stokes Model
503     C ...., Marshall et. al ). The algebra gives a simple
504     C 0.5 factor for the averaging of ac and aCw to get a
505     C symmettric pre-conditioner. By using a factor of 0.51
506     C i.e. scaling the off-diagonal terms in the
507     C preconditioner down slightly I managed to get the
508     C number of iterations for convergence in a test case to
509     C drop form 192 -> 134! Need to investigate this further!
510     C For now I have introduced a parameter cg2dpcOffDFac which
511     C defaults to 0.51 but can be set at runtime.
512 cnh 1.63 C delR :: Vertical grid spacing ( units of r ).
513 jmc 1.70 C delRc :: Vertical grid spacing between cell centers (r unit).
514 cnh 1.63 C delX :: Separation between cell faces (m) or (deg), depending
515 cnh 1.1 C delY on input flags.
516 jmc 1.247 C xgOrigin :: Origin of the X-axis (Cartesian Grid) / Longitude of Western
517     C :: most cell face (Lat-Lon grid) (Note: this is an "inert"
518     C :: parameter but it makes geographical references simple.)
519     C ygOrigin :: Origin of the Y-axis (Cartesian Grid) / Latitude of Southern
520     C :: most face (Lat-Lon grid).
521 cnh 1.63 C gravity :: Accel. due to gravity ( m/s^2 )
522 cnh 1.32 C recip_gravity and its inverse
523 cnh 1.63 C gBaro :: Accel. due to gravity used in barotropic equation ( m/s^2 )
524 mlosch 1.75 C rhoNil :: Reference density for the linear equation of state
525 jmc 1.191 C rhoConst :: Vertically constant reference density
526     C rhoFacC :: normalized (by rhoConst) reference density at cell-Center
527     C rhoFacF :: normalized (by rhoConst) reference density at cell-interFace
528 mlosch 1.75 C rhoConstFresh :: Constant reference density for fresh water (rain)
529 jmc 1.223 C rho1Ref :: reference vertical profile for density
530 jmc 1.132 C tRef :: reference vertical profile for potential temperature
531 jmc 1.191 C sRef :: reference vertical profile for salinity/specific humidity
532     C phiRef :: reference potential (pressure/rho, geopotential) profile
533 jmc 1.173 C dBdrRef :: vertical gradient of reference boyancy [(m/s/r)^2)]:
534     C :: z-coord: = N^2_ref = Brunt-Vaissala frequency [s^-2]
535     C :: p-coord: = -(d.alpha/dp)_ref [(m^2.s/kg)^2]
536 jmc 1.197 C rVel2wUnit :: units conversion factor (Non-Hydrostatic code),
537     C :: from r-coordinate vertical velocity to vertical velocity [m/s].
538     C :: z-coord: = 1 ; p-coord: wSpeed [m/s] = rVel [Pa/s] * rVel2wUnit
539     C wUnit2rVel :: units conversion factor (Non-Hydrostatic code),
540     C :: from vertical velocity [m/s] to r-coordinate vertical velocity.
541     C :: z-coord: = 1 ; p-coord: rVel [Pa/s] = wSpeed [m/s] * wUnit2rVel
542 jmc 1.203 C mass2rUnit :: units conversion factor (surface forcing),
543     C :: from mass per unit area [kg/m2] to vertical r-coordinate unit.
544     C :: z-coord: = 1/rhoConst ( [kg/m2] / rho = [m] ) ;
545     C :: p-coord: = gravity ( [kg/m2] * g = [Pa] ) ;
546     C rUnit2mass :: units conversion factor (surface forcing),
547     C :: from vertical r-coordinate unit to mass per unit area [kg/m2].
548     C :: z-coord: = rhoConst ( [m] * rho = [kg/m2] ) ;
549     C :: p-coord: = 1/gravity ( [Pa] / g = [kg/m2] ) ;
550 jmc 1.227 C rSphere :: Radius of sphere for a spherical polar grid ( m ).
551 jmc 1.191 C recip_rSphere :: Reciprocal radius of sphere ( m ).
552 jmc 1.247 C radius_fromHorizGrid :: sphere Radius of input horiz. grid (Curvilinear Grid)
553 jmc 1.227 C f0 :: Reference coriolis parameter ( 1/s )
554     C ( Southern edge f for beta plane )
555     C beta :: df/dy ( s^-1.m^-1 )
556 jmc 1.243 C fPrime :: Second Coriolis parameter ( 1/s ), related to Y-component
557     C of rotation (reference value = 2.Omega.Cos(Phi))
558 jmc 1.227 C omega :: Angular velocity ( rad/s )
559 jmc 1.88 C rotationPeriod :: Rotation period (s) (= 2.pi/omega)
560 jmc 1.229 C viscArNr :: vertical profile of Eddy viscosity coeff.
561     C for vertical mixing of momentum ( units of r^2/s )
562 jmc 1.227 C viscAh :: Eddy viscosity coeff. for mixing of
563     C momentum laterally ( m^2/s )
564     C viscAhW :: Eddy viscosity coeff. for mixing of vertical
565     C momentum laterally, no effect for hydrostatic
566     C model, defaults to viscAh if unset ( m^2/s )
567     C Not used if variable horiz. viscosity is used.
568     C viscA4 :: Biharmonic viscosity coeff. for mixing of
569     C momentum laterally ( m^4/s )
570     C viscA4W :: Biharmonic viscosity coeff. for mixing of vertical
571     C momentum laterally, no effect for hydrostatic
572     C model, defaults to viscA4 if unset ( m^2/s )
573     C Not used if variable horiz. viscosity is used.
574     C viscAhD :: Eddy viscosity coeff. for mixing of momentum laterally
575     C (act on Divergence part) ( m^2/s )
576     C viscAhZ :: Eddy viscosity coeff. for mixing of momentum laterally
577     C (act on Vorticity part) ( m^2/s )
578     C viscA4D :: Biharmonic viscosity coeff. for mixing of momentum laterally
579     C (act on Divergence part) ( m^4/s )
580     C viscA4Z :: Biharmonic viscosity coeff. for mixing of momentum laterally
581     C (act on Vorticity part) ( m^4/s )
582 jmc 1.214 C viscC2leith :: Leith non-dimensional viscosity factor (grad(vort))
583 baylor 1.166 C viscC2leithD :: Modified Leith non-dimensional visc. factor (grad(div))
584 jmc 1.214 C viscC4leith :: Leith non-dimensional viscosity factor (grad(vort))
585     C viscC4leithD :: Modified Leith non-dimensional viscosity factor (grad(div))
586     C viscC2smag :: Smagorinsky non-dimensional viscosity factor (harmonic)
587     C viscC4smag :: Smagorinsky non-dimensional viscosity factor (biharmonic)
588     C viscAhMax :: Maximum eddy viscosity coeff. for mixing of
589     C momentum laterally ( m^2/s )
590     C viscAhReMax :: Maximum gridscale Reynolds number for eddy viscosity
591     C coeff. for mixing of momentum laterally (non-dim)
592     C viscAhGrid :: non-dimensional grid-size dependent viscosity
593 baylor 1.146 C viscAhGridMax:: maximum and minimum harmonic viscosity coefficients ...
594 baylor 1.166 C viscAhGridMin:: in terms of non-dimensional grid-size dependent visc.
595 jmc 1.214 C viscA4Max :: Maximum biharmonic viscosity coeff. for mixing of
596     C momentum laterally ( m^4/s )
597     C viscA4ReMax :: Maximum Gridscale Reynolds number for
598     C biharmonic viscosity coeff. momentum laterally (non-dim)
599     C viscA4Grid :: non-dimensional grid-size dependent bi-harmonic viscosity
600 dimitri 1.136 C viscA4GridMax:: maximum and minimum biharmonic viscosity coefficients ...
601     C viscA4GridMin:: in terms of non-dimensional grid-size dependent viscosity
602 cnh 1.63 C diffKhT :: Laplacian diffusion coeff. for mixing of
603 cnh 1.1 C heat laterally ( m^2/s )
604 jmc 1.214 C diffKrNrT :: vertical profile of Laplacian diffusion coeff.
605 jmc 1.132 C for mixing of heat vertically ( units of r^2/s )
606 cnh 1.63 C diffK4T :: Biharmonic diffusion coeff. for mixing of
607 cnh 1.1 C heat laterally ( m^4/s )
608 cnh 1.63 C diffKhS :: Laplacian diffusion coeff. for mixing of
609 cnh 1.1 C salt laterally ( m^2/s )
610 jmc 1.214 C diffKrNrS :: vertical profile of Laplacian diffusion coeff.
611     C for mixing of salt vertically ( units of r^2/s ),
612 cnh 1.63 C diffK4S :: Biharmonic diffusion coeff. for mixing of
613 cnh 1.1 C salt laterally ( m^4/s )
614 adcroft 1.112 C diffKrBL79surf :: T/S surface diffusivity (m^2/s) Bryan and Lewis, 1979
615     C diffKrBL79deep :: T/S deep diffusivity (m^2/s) Bryan and Lewis, 1979
616     C diffKrBL79scl :: depth scale for arctan fn (m) Bryan and Lewis, 1979
617     C diffKrBL79Ho :: depth offset for arctan fn (m) Bryan and Lewis, 1979
618 dimitri 1.201 C BL79LatVary :: polarwise of this latitude diffKrBL79 is applied with
619     C gradual transition to diffKrBLEQ towards Equator
620     C diffKrBLEQsurf :: same as diffKrBL79surf but at Equator
621     C diffKrBLEQdeep :: same as diffKrBL79deep but at Equator
622     C diffKrBLEQscl :: same as diffKrBL79scl but at Equator
623     C diffKrBLEQHo :: same as diffKrBL79Ho but at Equator
624 cnh 1.63 C deltaT :: Default timestep ( s )
625     C deltaTClock :: Timestep used as model "clock". This determines the
626 cnh 1.7 C IO frequencies and is used in tagging output. It can
627     C be totally different to the dynamical time. Typically
628     C it will be the deep-water timestep for accelerated runs.
629     C Frequency of checkpointing and dumping of the model state
630     C are referenced to this clock. ( s )
631 cnh 1.63 C deltaTMom :: Timestep for momemtum equations ( s )
632 jmc 1.139 C dTtracerLev :: Timestep for tracer equations ( s ), function of level k
633 adcroft 1.72 C deltaTfreesurf :: Timestep for free-surface equation ( s )
634 cnh 1.63 C freesurfFac :: Parameter to turn implicit free surface term on or off
635 cnh 1.8 C freesurfac = 1. uses implicit free surface
636     C freesurfac = 0. uses rigid lid
637 jmc 1.154 C abEps :: Adams-Bashforth-2 stabilizing weight
638     C alph_AB :: Adams-Bashforth-3 primary factor
639     C beta_AB :: Adams-Bashforth-3 secondary factor
640 cnh 1.63 C implicSurfPress :: parameter of the Crank-Nickelson time stepping :
641 jmc 1.48 C Implicit part of Surface Pressure Gradient ( 0-1 )
642 cnh 1.63 C implicDiv2Dflow :: parameter of the Crank-Nickelson time stepping :
643 jmc 1.48 C Implicit part of barotropic flow Divergence ( 0-1 )
644 jmc 1.233 C implicitNHPress :: parameter of the Crank-Nickelson time stepping :
645     C Implicit part of Non-Hydrostatic Pressure Gradient ( 0-1 )
646 cnh 1.63 C hFacMin :: Minimum fraction size of a cell (affects hFacC etc...)
647 jmc 1.231 C hFacMinDz :: Minimum dimensional size of a cell (affects hFacC etc..., m)
648     C hFacMinDp :: Minimum dimensional size of a cell (affects hFacC etc..., Pa)
649     C hFacMinDr :: Minimum dimensional size of a cell (-> hFacC etc..., r units)
650 cnh 1.63 C hFacInf :: Threshold (inf and sup) for fraction size of surface cell
651 jmc 1.231 C hFacSup that control vanishing and creating levels
652     C tauCD :: CD scheme coupling timescale ( s )
653     C rCD :: CD scheme normalised coupling parameter (= 1 - deltaT/tauCD)
654     C epsAB_CD :: Adams-Bashforth-2 stabilizing weight used in CD scheme
655 jmc 1.150 C baseTime :: model base time (time origin) = time @ iteration zero
656 cnh 1.63 C startTime :: Starting time for this integration ( s ).
657     C endTime :: Ending time for this integration ( s ).
658     C chkPtFreq :: Frequency of rolling check pointing ( s ).
659     C pChkPtFreq :: Frequency of permanent check pointing ( s ).
660     C dumpFreq :: Frequency with which model state is written to
661 cnh 1.24 C post-processing files ( s ).
662 cnh 1.63 C diagFreq :: Frequency with which model writes diagnostic output
663 adcroft 1.59 C of intermediate quantities.
664 cnh 1.63 C afFacMom :: Advection of momentum term tracer parameter
665     C vfFacMom :: Momentum viscosity tracer parameter
666     C pfFacMom :: Momentum pressure forcing tracer parameter
667     C cfFacMom :: Coriolis term tracer parameter
668     C foFacMom :: Momentum forcing tracer parameter
669     C mtFacMom :: Metric terms tracer parameter
670     C cosPower :: Power of cosine of latitude to multiply viscosity
671     C cAdjFreq :: Frequency of convective adjustment
672 cnh 1.24 C
673 jmc 1.214 C taveFreq :: Frequency with which time-averaged model state
674 jmc 1.76 C is written to post-processing files ( s ).
675 jmc 1.214 C tave_lastIter :: (for state variable only) fraction of the last time
676     C step (of each taveFreq period) put in the time average.
677 jmc 1.76 C (fraction for 1rst iter = 1 - tave_lastIter)
678 cnh 1.63 C tauThetaClimRelax :: Relaxation to climatology time scale ( s ).
679     C tauSaltClimRelax :: Relaxation to climatology time scale ( s ).
680 jmc 1.95 C latBandClimRelax :: latitude band where Relaxation to Clim. is applied,
681     C i.e. where |yC| <= latBandClimRelax
682 cnh 1.63 C externForcingPeriod :: Is the period of which forcing varies (eg. 1 month)
683     C externForcingCycle :: Is the repeat time of the forcing (eg. 1 year)
684 adcroft 1.19 C (note: externForcingCycle must be an integer
685     C number times externForcingPeriod)
686 jmc 1.68 C convertFW2Salt :: salinity, used to convert Fresh-Water Flux to Salt Flux
687     C (use model surface (local) value if set to -1)
688 jmc 1.214 C temp_EvPrRn :: temperature of Rain & Evap.
689 jmc 1.68 C salt_EvPrRn :: salinity of Rain & Evap.
690 dimitri 1.237 C temp_addMass :: temperature of addMass array
691     C salt_addMass :: salinity of addMass array
692 jmc 1.214 C (notes: a) tracer content of Rain/Evap only used if both
693 jmc 1.68 C NonLin_FrSurf & useRealFreshWater are set.
694     C b) use model surface (local) value if set to UNSET_RL)
695 dfer 1.225 C hMixCriteria:: criteria for mixed-layer diagnostic
696     C dRhoSmall :: parameter for mixed-layer diagnostic
697 dfer 1.226 C hMixSmooth :: Smoothing parameter for mixed-layer diag (default=0=no smoothing)
698 jmc 1.202 C ivdc_kappa :: implicit vertical diffusivity for convection [m^2/s]
699     C Ro_SeaLevel :: standard position of Sea-Level in "R" coordinate, used as
700     C starting value (k=1) for vertical coordinate (rf(1)=Ro_SeaLevel)
701 jmc 1.239 C rSigmaBnd :: vertical position (in r-unit) of r/sigma transition (Hybrid-Sigma)
702 jmc 1.214 C sideDragFactor :: side-drag scaling factor (used only if no_slip_sides)
703 jmc 1.169 C (default=2: full drag ; =1: gives half-slip BC)
704 jmc 1.184 C bottomDragLinear :: Linear bottom-drag coefficient (units of [r]/s)
705     C bottomDragQuadratic :: Quadratic bottom-drag coefficient (units of [r]/m)
706     C (if using zcoordinate, units becomes linear: m/s, quadratic: [-])
707 heimbach 1.185 C smoothAbsFuncRange :: 1/2 of interval around zero, for which FORTRAN ABS
708     C is to be replace by a smoother function
709     C (affects myabs, mymin, mymax)
710 jmc 1.169 C nh_Am2 :: scales the non-hydrostatic terms and changes internal scales
711     C (i.e. allows convection at different Rayleigh numbers)
712 mlosch 1.212 C phiEuler :: Euler angle, rotation about original z-axis
713     C thetaEuler :: Euler angle, rotation about new x-axis
714     C psiEuler :: Euler angle, rotation about new z-axis
715 jmc 1.183 COMMON /PARM_R/ cg2dTargetResidual, cg2dTargetResWunit,
716 adcroft 1.52 & cg2dpcOffDFac, cg3dTargetResidual,
717 jmc 1.247 & delR, delRc, delX, delY, xgOrigin, ygOrigin,
718 jmc 1.139 & deltaT, deltaTmom, dTtracerLev, deltaTfreesurf, deltaTClock,
719 jmc 1.154 & abEps, alph_AB, beta_AB,
720 jmc 1.247 & rSphere, recip_rSphere, radius_fromHorizGrid,
721 jmc 1.243 & f0, beta, fPrime, omega, rotationPeriod,
722 heimbach 1.241 & viscFacAdj, viscAh, viscAhW, viscAhMax,
723 baylor 1.146 & viscAhGrid, viscAhGridMax, viscAhGridMin,
724     & viscC2leith, viscC2leithD,
725 baylor 1.165 & viscC2smag, viscC4smag,
726 jmc 1.135 & viscAhD, viscAhZ, viscA4D, viscA4Z,
727 jmc 1.214 & viscA4, viscA4W, viscA4Max,
728     & viscA4Grid, viscA4GridMax, viscA4GridMin,
729     & viscAhReMax, viscA4ReMax,
730 jmc 1.229 & viscC4leith, viscC4leithD, viscArNr,
731 dimitri 1.199 & diffKhT, diffK4T, diffKrNrT,
732     & diffKhS, diffK4S, diffKrNrS,
733 adcroft 1.112 & diffKrBL79surf, diffKrBL79deep, diffKrBL79scl, diffKrBL79Ho,
734 dimitri 1.201 & BL79LatVary,
735 dimitri 1.200 & diffKrBLEQsurf, diffKrBLEQdeep, diffKrBLEQscl, diffKrBLEQHo,
736 jmc 1.231 & tauCD, rCD, epsAB_CD,
737 jmc 1.233 & freeSurfFac, implicSurfPress, implicDiv2Dflow, implicitNHPress,
738 adcroft 1.52 & hFacMin, hFacMinDz, hFacInf, hFacSup,
739 jmc 1.203 & gravity, recip_gravity, gBaro,
740 jmc 1.191 & rhonil, recip_rhonil, rhoConst, recip_rhoConst,
741     & rhoFacC, recip_rhoFacC, rhoFacF, recip_rhoFacF,
742 jmc 1.223 & rhoConstFresh, rho1Ref, tRef, sRef, phiRef, dBdrRef,
743 jmc 1.203 & rVel2wUnit, wUnit2rVel, mass2rUnit, rUnit2mass,
744 jmc 1.183 & baseTime, startTime, endTime,
745     & chkPtFreq, pChkPtFreq, dumpFreq, adjDumpFreq,
746 heimbach 1.143 & diagFreq, taveFreq, tave_lastIter, monitorFreq, adjMonitorFreq,
747 cnh 1.15 & afFacMom, vfFacMom, pfFacMom, cfFacMom, foFacMom, mtFacMom,
748 jmc 1.243 & cosPower, cAdjFreq,
749 jmc 1.215 & tauThetaClimRelax, tauSaltClimRelax, latBandClimRelax,
750 cnh 1.27 & externForcingCycle, externForcingPeriod,
751 jmc 1.137 & convertFW2Salt, temp_EvPrRn, salt_EvPrRn,
752 dimitri 1.237 & temp_addMass, salt_addMass, hFacMinDr, hFacMinDp,
753 jmc 1.239 & ivdc_kappa, hMixCriteria, dRhoSmall, hMixSmooth,
754     & Ro_SeaLevel, rSigmaBnd,
755 jmc 1.169 & sideDragFactor, bottomDragLinear, bottomDragQuadratic, nh_Am2,
756 jmc 1.191 & smoothAbsFuncRange,
757 mlosch 1.212 & tCylIn, tCylOut,
758     & phiEuler, thetaEuler, psiEuler
759 cnh 1.27
760 adcroft 1.6 _RL cg2dTargetResidual
761 adcroft 1.52 _RL cg2dTargetResWunit
762 cnh 1.33 _RL cg3dTargetResidual
763 cnh 1.7 _RL cg2dpcOffDFac
764 cnh 1.25 _RL delR(Nr)
765 jmc 1.70 _RL delRc(Nr+1)
766 adcroft 1.6 _RL delX(Nx)
767     _RL delY(Ny)
768 jmc 1.247 _RL xgOrigin
769     _RL ygOrigin
770 adcroft 1.6 _RL deltaT
771 cnh 1.7 _RL deltaTClock
772 adcroft 1.6 _RL deltaTmom
773 jmc 1.139 _RL dTtracerLev(Nr)
774 adcroft 1.72 _RL deltaTfreesurf
775 jmc 1.154 _RL abEps, alph_AB, beta_AB
776 adcroft 1.6 _RL rSphere
777 jmc 1.191 _RL recip_rSphere
778 jmc 1.247 _RL radius_fromHorizGrid
779 adcroft 1.6 _RL f0
780 jmc 1.243 _RL beta
781     _RL fPrime
782     _RL omega
783     _RL rotationPeriod
784 cnh 1.8 _RL freeSurfFac
785 jmc 1.48 _RL implicSurfPress
786     _RL implicDiv2Dflow
787 jmc 1.233 _RL implicitNHPress
788 adcroft 1.22 _RL hFacMin
789     _RL hFacMinDz
790 cnh 1.28 _RL hFacMinDp
791 cnh 1.27 _RL hFacMinDr
792 adcroft 1.52 _RL hFacInf
793     _RL hFacSup
794 jmc 1.229 _RL viscArNr(Nr)
795 heimbach 1.241 _RL viscFacAdj
796 adcroft 1.6 _RL viscAh
797 mlosch 1.128 _RL viscAhW
798 jmc 1.135 _RL viscAhD
799     _RL viscAhZ
800 adcroft 1.102 _RL viscAhMax
801 baylor 1.166 _RL viscAhReMax
802 jmc 1.214 _RL viscAhGrid, viscAhGridMax, viscAhGridMin
803 adcroft 1.110 _RL viscC2leith
804 baylor 1.146 _RL viscC2leithD
805 baylor 1.147 _RL viscC2smag
806 jmc 1.183 _RL viscA4
807 mlosch 1.140 _RL viscA4W
808 jmc 1.135 _RL viscA4D
809     _RL viscA4Z
810 adcroft 1.102 _RL viscA4Max
811 baylor 1.166 _RL viscA4ReMax
812 dimitri 1.136 _RL viscA4Grid, viscA4GridMax, viscA4GridMin
813 adcroft 1.110 _RL viscC4leith
814 baylor 1.146 _RL viscC4leithD
815 jmc 1.214 _RL viscC4smag
816 jmc 1.183 _RL diffKhT
817 jmc 1.132 _RL diffKrNrT(Nr)
818 jmc 1.183 _RL diffK4T
819     _RL diffKhS
820 jmc 1.132 _RL diffKrNrS(Nr)
821 jmc 1.183 _RL diffK4S
822 adcroft 1.112 _RL diffKrBL79surf
823     _RL diffKrBL79deep
824     _RL diffKrBL79scl
825     _RL diffKrBL79Ho
826 dimitri 1.201 _RL BL79LatVary
827 dimitri 1.200 _RL diffKrBLEQsurf
828     _RL diffKrBLEQdeep
829     _RL diffKrBLEQscl
830     _RL diffKrBLEQHo
831 jmc 1.231 _RL tauCD, rCD, epsAB_CD
832 adcroft 1.6 _RL gravity
833 cnh 1.32 _RL recip_gravity
834 cnh 1.8 _RL gBaro
835 jmc 1.191 _RL rhonil, recip_rhonil
836     _RL rhoConst, recip_rhoConst
837     _RL rhoFacC(Nr), recip_rhoFacC(Nr)
838     _RL rhoFacF(Nr+1), recip_rhoFacF(Nr+1)
839 mlosch 1.75 _RL rhoConstFresh
840 jmc 1.223 _RL rho1Ref(Nr)
841 cnh 1.25 _RL tRef(Nr)
842     _RL sRef(Nr)
843 jmc 1.171 _RL phiRef(2*Nr+1)
844 jmc 1.173 _RL dBdrRef(Nr)
845 jmc 1.197 _RL rVel2wUnit(Nr+1), wUnit2rVel(Nr+1)
846 jmc 1.203 _RL mass2rUnit, rUnit2mass
847 jmc 1.150 _RL baseTime
848 adcroft 1.6 _RL startTime
849     _RL endTime
850     _RL chkPtFreq
851 cnh 1.7 _RL pChkPtFreq
852 adcroft 1.6 _RL dumpFreq
853 heimbach 1.103 _RL adjDumpFreq
854 adcroft 1.59 _RL diagFreq
855 adcroft 1.20 _RL taveFreq
856 jmc 1.76 _RL tave_lastIter
857 adcroft 1.53 _RL monitorFreq
858 heimbach 1.143 _RL adjMonitorFreq
859 cnh 1.9 _RL afFacMom
860     _RL vfFacMom
861     _RL pfFacMom
862     _RL cfFacMom
863     _RL foFacMom
864 jmc 1.182 _RL mtFacMom
865 adcroft 1.39 _RL cosPower
866 cnh 1.9 _RL cAdjFreq
867 cnh 1.18 _RL tauThetaClimRelax
868     _RL tauSaltClimRelax
869 jmc 1.95 _RL latBandClimRelax
870 adcroft 1.19 _RL externForcingCycle
871     _RL externForcingPeriod
872 jmc 1.68 _RL convertFW2Salt
873     _RL temp_EvPrRn
874     _RL salt_EvPrRn
875 dimitri 1.237 _RL temp_addMass
876     _RL salt_addMass
877 adcroft 1.41 _RL ivdc_kappa
878 jmc 1.202 _RL hMixCriteria
879 dfer 1.225 _RL dRhoSmall
880 dfer 1.226 _RL hMixSmooth
881 adcroft 1.46 _RL Ro_SeaLevel
882 jmc 1.239 _RL rSigmaBnd
883 jmc 1.169 _RL sideDragFactor
884 adcroft 1.46 _RL bottomDragLinear
885     _RL bottomDragQuadratic
886 heimbach 1.185 _RL smoothAbsFuncRange
887 jmc 1.169 _RL nh_Am2
888 afe 1.142 _RL tCylIn
889     _RL tCylOut
890 mlosch 1.212 _RL phiEuler, thetaEuler, psiEuler
891 adcroft 1.6
892 jmc 1.91 C-- COMMON /PARM_A/ Thermodynamics constants ?
893     COMMON /PARM_A/ HeatCapacity_Cp,recip_Cp
894 adcroft 1.6 _RL HeatCapacity_Cp
895 adcroft 1.36 _RL recip_Cp
896 jmc 1.55
897 jmc 1.91 C-- COMMON /PARM_ATM/ Atmospheric physical parameters (Ideal Gas EOS, ...)
898     C celsius2K :: convert centigrade (Celsius) degree to Kelvin
899 jmc 1.83 C atm_Po :: standard reference pressure
900     C atm_Cp :: specific heat (Cp) of the (dry) air at constant pressure
901     C atm_Rd :: gas constant for dry air
902 cnh 1.63 C atm_kappa :: kappa = R/Cp (R: constant of Ideal Gas EOS)
903 jmc 1.94 C atm_Rq :: water vapour specific volume anomaly relative to dry air
904     C (e.g. typical value = (29/18 -1) 10^-3 with q [g/kg])
905 jmc 1.83 C integr_GeoPot :: option to select the way we integrate the geopotential
906 jmc 1.214 C (still a subject of discussions ...)
907 jmc 1.83 C selectFindRoSurf :: select the way surf. ref. pressure (=Ro_surf) is
908     C derived from the orography. Implemented: 0,1 (see INI_P_GROUND)
909 jmc 1.183 COMMON /PARM_ATM/
910 jmc 1.91 & celsius2K,
911 jmc 1.94 & atm_Cp, atm_Rd, atm_kappa, atm_Rq, atm_Po,
912 jmc 1.91 & integr_GeoPot, selectFindRoSurf
913     _RL celsius2K
914 jmc 1.94 _RL atm_Po, atm_Cp, atm_Rd, atm_kappa, atm_Rq
915 jmc 1.83 INTEGER integr_GeoPot, selectFindRoSurf
916 cnh 1.7
917 adcroft 1.44 C Logical flags for selecting packages
918 jmc 1.220 LOGICAL useGAD
919     LOGICAL useOBCS
920     LOGICAL useSHAP_FILT
921     LOGICAL useZONAL_FILT
922 mlosch 1.126 LOGICAL useOPPS
923 mlosch 1.121 LOGICAL usePP81
924     LOGICAL useMY82
925 mlosch 1.126 LOGICAL useGGL90
926 heimbach 1.45 LOGICAL useKPP
927     LOGICAL useGMRedi
928 jmc 1.220 LOGICAL useDOWN_SLOPE
929 jmc 1.183 LOGICAL useCAL
930     LOGICAL useEXF
931 jmc 1.220 LOGICAL useBulkForce
932 jmc 1.183 LOGICAL useEBM
933 jmc 1.220 LOGICAL useCheapAML
934 heimbach 1.56 LOGICAL useGrdchk
935 jmc 1.231 LOGICAL useSMOOTH
936 heimbach 1.45 LOGICAL useECCO
937 jmc 1.220 LOGICAL useSBO
938 adcroft 1.62 LOGICAL useFLT
939 adcroft 1.69 LOGICAL usePTRACERS
940 mlosch 1.138 LOGICAL useGCHEM
941 stephd 1.172 LOGICAL useRBCS
942 jmc 1.181 LOGICAL useOffLine
943 jmc 1.183 LOGICAL useMATRIX
944 heimbach 1.80 LOGICAL useSEAICE
945 jmc 1.220 LOGICAL useSALT_PLUME
946 mlosch 1.176 LOGICAL useShelfIce
947 dimitri 1.235 LOGICAL useICEFRONT
948 jmc 1.183 LOGICAL useThSIce
949 jscott 1.190 LOGICAL useATM2d
950 jmc 1.220 LOGICAL useAIM
951     LOGICAL useLand
952     LOGICAL useFizhi
953     LOGICAL useGridAlt
954 jmc 1.179 LOGICAL useDiagnostics
955 jmc 1.220 LOGICAL useREGRID
956 rpa 1.228 LOGICAL useLayers
957 edhill 1.130 LOGICAL useMNC
958 adcroft 1.158 LOGICAL useRunClock
959 edhill 1.175 LOGICAL useEMBED_FILES
960 heimbach 1.187 LOGICAL useMYPACKAGE
961 adcroft 1.44 COMMON /PARM_PACKAGES/
962 jmc 1.220 & useGAD, useOBCS, useSHAP_FILT, useZONAL_FILT,
963 jmc 1.183 & useOPPS, usePP81, useMY82, useGGL90, useKPP,
964 jmc 1.220 & useGMRedi, useDOWN_SLOPE,
965     & useCAL, useEXF, useBulkForce, useEBM, useCheapAML,
966 jmc 1.231 & useGrdchk, useSMOOTH, useECCO, useSBO, useFLT,
967 jmc 1.183 & usePTRACERS, useGCHEM, useRBCS, useOffLine, useMATRIX,
968 dimitri 1.235 & useSEAICE, useSALT_PLUME, useShelfIce,
969     & useICEFRONT, useThSIce,
970 jmc 1.220 & useATM2D, useAIM, useLand, useFizhi, useGridAlt,
971 rpa 1.228 & useDiagnostics, useREGRID, useLayers, useMNC,
972 jmc 1.220 & useRunClock, useEMBED_FILES,
973 jmc 1.219 & useMYPACKAGE
974 mlosch 1.245
975 edhill 1.105 CEH3 ;;; Local Variables: ***
976     CEH3 ;;; mode:fortran ***
977     CEH3 ;;; End: ***

  ViewVC Help
Powered by ViewVC 1.1.22