/[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.29 - (hide annotations) (download)
Sun Sep 6 14:45:10 1998 UTC (25 years, 8 months ago) by cnh
Branch: MAIN
Changes since 1.28: +8 -2 lines
File MIME type: text/plain
Consistent isomorphism changes

1 cnh 1.29 C $Header: /u/gcmpack/models/MITgcmUV/model/inc/PARAMS.h,v 1.28 1998/09/05 17:52:13 cnh Exp $
2 cnh 1.1 C
3     C /==========================================================\
4     C | PARAMS.h |
5     C | o Header file defining model "parameters". |
6     C |==========================================================|
7     C | The values from the model's standard input file are |
8     C | stored into the variables held here. Notes describing |
9     C | the parameters can also be found here. |
10     C \==========================================================/
11 cnh 1.13
12     C Macros for special grid options
13     #include "PARAMS_MACROS.h"
14 cnh 1.1
15     C-- Contants
16     C Useful physical values
17     Real*8 PI
18     PARAMETER ( PI = 3.14159265358979323844D0 )
19     Real*8 deg2rad
20     PARAMETER ( deg2rad = 2.D0*PI/360.D0 )
21    
22 cnh 1.7 C Symbolic values
23     C precXXXX - Used to indicate what precision to use for
24     C dumping model state.
25     INTEGER precFloat32
26     PARAMETER ( precFloat32 = 0 )
27     INTEGER precFloat64
28     PARAMETER ( precFloat64 = 1 )
29 cnh 1.28 C UNSET_xxx - Used to indicate variables that have not been given a value
30     Real*8 UNSET_FLOAT8
31     PARAMETER ( UNSET_FLOAT8 = 1.234567D5 )
32     Real*4 UNSET_FLOAT4
33     PARAMETER ( UNSET_FLOAT4 = 1.234567E5 )
34     _RL UNSET_RL
35     PARAMETER ( UNSET_RL = 1.234567D5 )
36     _RS UNSET_RS
37     PARAMETER ( UNSET_RS = 1.234567E5 )
38     INTEGER UNSET_I
39     PARAMETER ( UNSET_I = 123456789 )
40 cnh 1.7
41     C Checkpoint data
42     INTEGER maxNoChkptLev
43     PARAMETER ( maxNoChkptLev = 2 )
44    
45 cnh 1.1 C-- COMMON /PARM_C/ Character valued parameters used by the model.
46 cnh 1.7 C checkPtSuff - List of checkpoint file suffices
47 cnh 1.16 C bathyFile - File containing bathymetry. If not defined bathymetry
48     C is taken from inline function.
49     C hydrogThetaFile - File containing initial hydrographic data for potential
50     C temperature.
51     C hydrogSaltFile - File containing initial hydrographic data for salinity.
52     C zonalWindFile - File containing zonal wind data
53     C meridWindFile - File containing meridional wind data
54 cnh 1.18 C thetaClimFile - File containing theta climataology used
55     C in relaxation term -lambda(theta-theta*)
56     C saltClimFile - File containing salt climataology used
57     C in relaxation term -lambda(salt-salt*)
58 cnh 1.26 C buoyancyRelation - Flag used to indicate which relation to use to
59     C get buoyancy.
60 cnh 1.16 COMMON /PARM_C/ checkPtSuff,
61     & bathyFile, hydrogThetaFile, hydrogSaltFile,
62 cnh 1.18 & zonalWindFile, meridWindFile, thetaClimFile,
63 cnh 1.26 & saltClimFile, buoyancyRelation
64 cnh 1.7 CHARACTER*(5) checkPtSuff(maxNoChkptLev)
65 cnh 1.16 CHARACTER*(MAX_LEN_FNAM) bathyFile
66     CHARACTER*(MAX_LEN_FNAM) hydrogThetaFile
67     CHARACTER*(MAX_LEN_FNAM) hydrogSaltFile
68     CHARACTER*(MAX_LEN_FNAM) zonalWindFile
69     CHARACTER*(MAX_LEN_FNAM) meridWindFile
70 cnh 1.18 CHARACTER*(MAX_LEN_FNAM) thetaClimFile
71     CHARACTER*(MAX_LEN_FNAM) saltClimFile
72 cnh 1.26 CHARACTER*(MAX_LEN_FNAM) buoyancyRelation
73 cnh 1.7
74 cnh 1.1 C-- COMMON /PARM_I/ Integer valued parameters used by the model.
75     C cg2dMaxIters - Maximum number of iterations in the
76     C two-dimensional con. grad solver.
77     C cg2dChkResFreq - Frequency with which to check residual
78     C in con. grad solver.
79     C nIter0 - Start time-step number of for this run
80     C nTimeSteps - Number of timesteps to execute
81     C numStepsPerPickup - For offline setup. Frequency of pickup
82     C of flow fields.
83 cnh 1.7 C writeStatePrec - Precision used for writing model state.
84     C writeBinaryPrec - Precision used for writing binary files
85     C readBinaryPrec - Precision used for reading binary files
86     C nCheckLev - Holds current checkpoint level
87 cnh 1.1 COMMON /PARM_I/
88     & cg2dMaxIters,
89     & cg2dChkResFreq,
90     & nIter0, nTimeSteps,
91 cnh 1.7 & numStepsPerPickup,
92     & writeStatePrec, nCheckLev,
93     & writeBinaryPrec, readBinaryPrec
94 cnh 1.1 INTEGER cg2dMaxIters
95     INTEGER cg2dChkResFreq
96     INTEGER nIter0
97     INTEGER nTimeSteps
98     INTEGER numStepsPerPickup
99 cnh 1.7 INTEGER writeStatePrec
100     INTEGER writeBinaryPrec
101     INTEGER readBinaryPrec
102     INTEGER nCheckLev
103 cnh 1.1
104     C-- COMMON /PARM_L/ Logical valued parameters used by the model.
105     C usingCartesianGrid - If TRUE grid generation will be in a cartesian
106     C coordinate frame.
107     C usingSphericalPolarGrid - If TRUE grid generation will be in a
108     C spherical polar frame.
109     C momViscosity - Flag which turns momentum friction terms on and off.
110     C momAdvection - Flag which turns advection of momentum on and off.
111     C momForcing - Flag which turns external forcing of momentum on
112     C and off.
113 cnh 1.9 C momPressureForcing - Flag which turns pressure term in momentum equation
114     C on and off.
115 cnh 1.15 C metricTerms - Flag which turns metric terms on or off.
116     C usingSphericalPolarMTerms - If TRUE use spherical polar metric terms.
117 cnh 1.1 C useCoriolis - Flag which turns the coriolis terms on and off.
118     C tempDiffusion - Flag which turns diffusion of temperature on
119     C and off.
120     C tempAdvection - Flag which turns advection of temperature on
121     C and off.
122     C tempForcing - Flag which turns external forcing of temperature on
123     C and off.
124     C saltDiffusion - Flag which turns diffusion of salinit on
125     C and off.
126     C saltAdvection - Flag which turns advection of salinit on
127     C and off.
128     C saltForcing - Flag which turns external forcing of salinit on
129     C and off.
130 cnh 1.8 C implicitFreeSurface - Set to true to use implcit free surface
131     C rigidLid - Set to true to use rigid lid
132 cnh 1.10 C momStepping - Turns momentum equation time-stepping off
133 cnh 1.15 C tempStepping - Turns temperature equation time-stepping off
134 adcroft 1.17 C saltStepping - Turns salinity equation time-stepping off
135 cnh 1.15 C useConstantF - Coriolis parameter set to f0
136     C useBetaPlaneF - Coriolis parameter set to f0 + beta.y
137     C useSphereF - Coriolis parameter set to 2.omega.sin(phi)
138 adcroft 1.14 C implicitDiffusion - Turns implicit vertical diffusion on
139 cnh 1.18 C doThetaClimRelax - Set true if relaxation to temperature
140     C climatology is required.
141     C doSaltClimRelax - Set true if relaxation to salinity
142     C climatology is required.
143 adcroft 1.19 C periodicExternalForcing - Set true if forcing is time-dependant
144 cnh 1.29 C usingPCoords - Set to indicate that we are working in pressure
145     C coords.
146     C usingZCoords - Set to indicate that we are working in height
147     C coords.
148 cnh 1.1 COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid,
149 cnh 1.9 & momViscosity, momAdvection, momForcing, useCoriolis, momPressureForcing,
150 cnh 1.1 & tempDiffusion, tempAdvection, tempForcing,
151 cnh 1.8 & saltDiffusion, saltAdvection, saltForcing,
152 adcroft 1.17 & implicitFreeSurface, rigidLid,
153     & momStepping, tempStepping, saltStepping,
154 cnh 1.15 & metricTerms, usingSphericalPolarMTerms,
155     & useConstantF, useBetaPlaneF, useSphereF,
156 adcroft 1.19 & implicitDiffusion, doThetaClimRelax, doSaltClimRelax,
157 cnh 1.29 & periodicExternalForcing, usingPCoords, usingZCoords
158 cnh 1.1 LOGICAL usingCartesianGrid
159     LOGICAL usingSphericalPolarGrid
160 cnh 1.15 LOGICAL usingSphericalPolarMTerms
161 cnh 1.1 LOGICAL momViscosity
162     LOGICAL momAdvection
163     LOGICAL momForcing
164 cnh 1.9 LOGICAL momPressureForcing
165 cnh 1.1 LOGICAL useCoriolis
166     LOGICAL tempDiffusion
167     LOGICAL tempAdvection
168     LOGICAL tempForcing
169     LOGICAL saltDiffusion
170     LOGICAL saltAdvection
171     LOGICAL saltForcing
172 cnh 1.8 LOGICAL implicitFreeSurface
173     LOGICAL rigidLid
174 cnh 1.10 LOGICAL momStepping
175     LOGICAL tempStepping
176 adcroft 1.17 LOGICAL saltStepping
177 cnh 1.15 LOGICAL metricTerms
178     LOGICAL useConstantF
179     LOGICAL useBetaPlaneF
180     LOGICAL useSphereF
181 adcroft 1.14 LOGICAL implicitDiffusion
182 cnh 1.18 LOGICAL doThetaClimRelax
183     LOGICAL doSaltClimRelax
184 adcroft 1.19 LOGICAL periodicExternalForcing
185 cnh 1.29 LOGICAL usingPCoords
186     LOGICAL usingZCoords
187 cnh 1.1
188     C-- COMMON /PARM_R/ "Real" valued parameters used by the model.
189     C cg2dTargetResidual
190     C - Target residual for cg2d solver.
191 cnh 1.7 C cg2dpcOffDFac - Averaging weight for preconditioner off-diagonal.
192     C Note. 20th May 1998
193     C I made a weird discovery! In the model paper we argue
194     C for the form of the preconditioner used here ( see
195     C A Finite-volume, Incompressible Navier-Stokes Model
196     C ...., Marshall et. al ). The algebra gives a simple
197     C 0.5 factor for the averaging of ac and aCw to get a
198     C symmettric pre-conditioner. By using a factor of 0.51
199     C i.e. scaling the off-diagonal terms in the
200     C preconditioner down slightly I managed to get the
201     C number of iterations for convergence in a test case to
202     C drop form 192 -> 134! Need to investigate this further!
203     C For now I have introduced a parameter cg2dpcOffDFac which
204     C defaults to 0.51 but can be set at runtime.
205 cnh 1.24 C delP - Vertical grid spacing ( Pa ).
206     C delZ - Vertical grid spacing ( m ).
207 cnh 1.23 C delR - Vertical grid spacing ( units of r ).
208 cnh 1.1 C delX - Separation between cell faces (m) or (deg), depending
209     C delY on input flags.
210     C gravity - Accel. due to gravity ( m/s^2 )
211 cnh 1.8 C gBaro - Accel. due to gravity used in barotropic equation ( m/s^2 )
212 cnh 1.1 C ronil - Reference density
213 cnh 1.24 C rhoConst - Vertically constant reference density
214 cnh 1.3 C startTime - Start time for model ( s )
215 cnh 1.1 C phiMin - Latitude of southern most cell face.
216     C thetaMin - Longitude of western most cell face (this
217     C is an "inert" parameter but it is included
218     C to make geographical references simple.)
219 cnh 1.3 C rSphere - Radius of sphere for a spherical polar grid ( m ).
220 cnh 1.25 C recip_RSphere - Reciprocal radius of sphere ( m ).
221 cnh 1.1 C f0 - Reference coriolis parameter ( 1/s )
222     C ( Southern edge f for beta plane )
223     C beta - df/dy ( s^-1.m^-1 )
224 cnh 1.15 C omega - Angular velocity ( rad/s )
225 cnh 1.1 C viscAh - Eddy viscosity coeff. for mixing of
226     C momentum laterally ( m^2/s )
227     C viscAz - Eddy viscosity coeff. for mixing of
228     C momentum vertically ( m^2/s )
229 cnh 1.27 C viscAp - Eddy viscosity coeff. for mixing of
230     C momentum vertically ( Pa^2/s )
231 cnh 1.24 C viscAr - Eddy viscosity coeff. for mixing of
232     C momentum vertically ( units of r^2/s )
233 cnh 1.1 C viscA4 - Biharmonic viscosity coeff. for mixing of
234     C momentum laterally ( m^4/s )
235     C diffKhT - Laplacian diffusion coeff. for mixing of
236     C heat laterally ( m^2/s )
237     C diffKzT - Laplacian diffusion coeff. for mixing of
238     C heat vertically ( m^2/s )
239 cnh 1.27 C diffKpT - Laplacian diffusion coeff. for mixing of
240     C heat vertically ( Pa^2/s )
241 cnh 1.24 C diffKrT - Laplacian diffusion coeff. for mixing of
242     C heat vertically ( units of r^2/s )
243 cnh 1.1 C diffK4T - Biharmonic diffusion coeff. for mixing of
244     C heat laterally ( m^4/s )
245     C diffKhS - Laplacian diffusion coeff. for mixing of
246     C salt laterally ( m^2/s )
247     C diffKzS - Laplacian diffusion coeff. for mixing of
248     C salt vertically ( m^2/s )
249 cnh 1.27 C diffKpS - Laplacian diffusion coeff. for mixing of
250     C salt vertically ( Pa^2/s )
251 cnh 1.24 C diffKrS - Laplacian diffusion coeff. for mixing of
252     C salt vertically ( units of r^2/s )
253 cnh 1.1 C diffK4S - Biharmonic diffusion coeff. for mixing of
254     C salt laterally ( m^4/s )
255 cnh 1.3 C deltaT - Default timestep ( s )
256 cnh 1.7 C deltaTClock - Timestep used as model "clock". This determines the
257     C IO frequencies and is used in tagging output. It can
258     C be totally different to the dynamical time. Typically
259     C it will be the deep-water timestep for accelerated runs.
260     C Frequency of checkpointing and dumping of the model state
261     C are referenced to this clock. ( s )
262 cnh 1.3 C deltaTMom - Timestep for momemtum equations ( s )
263     C deltaTtracer - Timestep for tracer equations ( s )
264 cnh 1.8 C freesurfFac - Parameter to turn implicit free surface term on or off
265     C freesurfac = 1. uses implicit free surface
266     C freesurfac = 0. uses rigid lid
267 cnh 1.24 C hFacMin - Minimum fraction size of a cell (affects hFacC etc...)
268     C hFacMinDz - Minimum dimesional size of a cell (affects hFacC etc..., m)
269 cnh 1.28 C hFacMinDp - Minimum dimesional size of a cell (affects hFacC etc..., Pa)
270 cnh 1.24 C hFacMinDr - Minimum dimesional size of a cell (affects hFacC etc..., units of r)
271     C tauCD - CD scheme coupling timescale ( 1/s )
272     C rCD - CD scheme normalised coupling parameter ( 0-1 )
273 cnh 1.27 C GMmaxslope - max. slope allowed in GM/Redi tensor
274     C GMlength - Length to use in Visbeck et al. formula for K (m)
275     C GMalpha - alpha to use in Visbeck et al. formula for K
276     C GMdepth - Depth over which to integrate Richardson # (Visbeck et al.)
277 cnh 1.24 C GMkbackground - background value of GM/Redi diffusion coefficient ( m^2/s )
278     C GMmaxval - max. value of KapGM allowed in GM/Redi scheme ( m^2/s )
279     C startTime - Starting time for this integration ( s ).
280     C endTime - Ending time for this integration ( s ).
281     C chkPtFreq - Frequency of rolling check pointing ( s ).
282     C pChkPtFreq - Frequency of permanent check pointing ( s ).
283     C dumpFreq - Frequency with which model state is written to
284     C post-processing files ( s ).
285     C afFacMom - Advection of momentum term tracer parameter
286     C vfFacMom - Momentum viscosity tracer parameter
287     C pfFacMom - Momentum pressure forcing tracer parameter
288     C cfFacMom - Coriolis term tracer parameter
289     C foFacMom - Momentum forcing tracer parameter
290     C mtFacMom - Metric terms tracer parameter
291     C cAdjFreq - Frequency of convective adjustment
292     C
293 cnh 1.27 C taveFreq - Frequency with which time-averaged model state is written to
294     C post-processing files ( s ).
295 cnh 1.18 C tauThetaClimRelax - Relaxation to climatology time scale ( s ).
296     C lambdaThetaClimRelax - Inverse time scale for relaxation ( 1/s ).
297     C tauSaltClimRelax - Relaxation to climatology time scale ( s ).
298     C lambdaSaltClimRelax - Inverse time scale for relaxation ( 1/s ).
299 adcroft 1.19 C externForcingPeriod - Is the period of which forcing varies (eg. 1 month)
300     C externForcingCycle - Is the repeat time of the forcing (eg. 1 year)
301     C (note: externForcingCycle must be an integer
302     C number times externForcingPeriod)
303 cnh 1.24 COMMON /PARM_R/ cg2dTargetResidual, cg2dpcOffDFac,
304     & delP, delZ, delR, delX, delY,
305 cnh 1.7 & deltaT,deltaTmom, deltaTtracer, deltaTClock,abeps, startTime, phiMin,
306 cnh 1.25 & thetaMin, rSphere, recip_RSphere, f0, fCori, beta,
307 cnh 1.24 & viscAh, viscAz, viscA4, viscAr,
308     & diffKhT, diffKzT, diffK4T, diffKrT,
309 cnh 1.25 & diffKhS, diffKzS, diffK4S, diffKrS,
310 cnh 1.27 & delT, tauCD, rCD, freeSurfFac, hFacMin, hFacMinDz,
311 adcroft 1.21 & GMmaxslope,GMlength,GMalpha,GMdepth,GMkbackground,GMmaxval,
312 cnh 1.26 & gravity, gBaro, rhonil, recip_rhonil,
313 cnh 1.27 & recip_rhoConst, rhoConst, tRef, sRef,
314 adcroft 1.20 & endTime, chkPtFreq, pchkPtFreq, dumpFreq, taveFreq,
315 cnh 1.15 & afFacMom, vfFacMom, pfFacMom, cfFacMom, foFacMom, mtFacMom,
316 cnh 1.18 & cAdjFreq, omega, tauThetaClimRelax, lambdaThetaClimRelax,
317 adcroft 1.19 & tauSaltClimRelax, lambdaSaltClimRelax,
318 cnh 1.27 & externForcingCycle, externForcingPeriod,
319 cnh 1.28 & viscAp, diffKpT, diffKpS, hFacMinDr, hFacMinDp,
320 cnh 1.27 & theta_S, specVol_S
321    
322 adcroft 1.6 _RL cg2dTargetResidual
323 cnh 1.7 _RL cg2dpcOffDFac
324 cnh 1.25 _RL delZ(Nr)
325     _RL delP(Nr)
326     _RL delR(Nr)
327 adcroft 1.6 _RL delX(Nx)
328     _RL delY(Ny)
329     _RL deltaT
330 cnh 1.7 _RL deltaTClock
331 adcroft 1.6 _RL deltaTmom
332     _RL deltaTtracer
333     _RL abeps
334     _RL phiMin
335     _RL thetaMin
336     _RL rSphere
337 cnh 1.25 _RL recip_RSphere
338 adcroft 1.6 _RL f0
339 cnh 1.8 _RL freeSurfFac
340 adcroft 1.22 _RL hFacMin
341     _RL hFacMinDz
342 cnh 1.28 _RL hFacMinDp
343 cnh 1.27 _RL hFacMinDr
344 adcroft 1.6 _RL beta
345     _RL viscAh
346     _RL viscAz
347 cnh 1.27 _RL viscAp
348 cnh 1.25 _RL viscAr
349 adcroft 1.6 _RL viscA4
350     _RL diffKhT
351 cnh 1.25 _RL diffKrT
352 adcroft 1.6 _RL diffKzT
353 cnh 1.27 _RL diffKpT
354 adcroft 1.6 _RL diffK4T
355     _RL diffKhS
356 cnh 1.25 _RL diffKrS
357 adcroft 1.6 _RL diffKzS
358 cnh 1.27 _RL diffKpS
359 adcroft 1.6 _RL diffK4S
360     _RL delt
361     _RL tauCD
362     _RL rCD
363     _RL GMmaxslope
364     _RL GMlength
365     _RL GMalpha
366     _RL GMdepth
367     _RL GMkbackground
368 adcroft 1.21 _RL GMmaxval
369 adcroft 1.6 _RL gravity
370 cnh 1.8 _RL gBaro
371 adcroft 1.6 _RL rhonil
372 cnh 1.25 _RL recip_rhonil
373     _RL rhoConst
374 cnh 1.26 _RL recip_rhoConst
375     _RL specVol_S(Nr)
376 cnh 1.25 _RL tRef(Nr)
377 cnh 1.26 _RL theta_S(Nr)
378 cnh 1.25 _RL sRef(Nr)
379 cnh 1.11 _RS Fcori(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
380 adcroft 1.6 _RL startTime
381     _RL endTime
382     _RL chkPtFreq
383 cnh 1.7 _RL pChkPtFreq
384 adcroft 1.6 _RL dumpFreq
385 adcroft 1.20 _RL taveFreq
386 cnh 1.9 _RL afFacMom
387     _RL vfFacMom
388     _RL pfFacMom
389     _RL cfFacMom
390     _RL foFacMom
391 cnh 1.15 _RL mTFacMom
392 cnh 1.9 _RL cAdjFreq
393 cnh 1.15 _RL omega
394 cnh 1.18 _RL tauThetaClimRelax
395     _RL lambdaThetaClimRelax
396     _RL tauSaltClimRelax
397     _RL lambdaSaltClimRelax
398 adcroft 1.19 _RL externForcingCycle
399     _RL externForcingPeriod
400 adcroft 1.6
401 cnh 1.1 COMMON /PARM_A/ HeatCapacity_Cp,
402     & Lamba_theta
403 adcroft 1.6 _RL HeatCapacity_Cp
404     _RL Lamba_theta
405 adcroft 1.5
406     C Equation of State (polynomial coeffients)
407     COMMON /PARM_EOS_NL/ eosC,eosSig0,eosRefT,eosRefS
408 cnh 1.25 _RL eosC(9,Nr+1),eosSig0(Nr+1),eosRefT(Nr+1),eosRefS(Nr+1)
409 adcroft 1.5 C Linear equation of state
410     C tAlpha - Linear EOS thermal expansion coefficient ( 1/degree ).
411     C sBeta - Linear EOS haline contraction coefficient.
412 adcroft 1.12 COMMON /PARM_EOS_LIN/ tAlpha,sBeta,eosType
413 adcroft 1.6 _RL tAlpha
414     _RL sBeta
415 adcroft 1.12 character*(6) eosType
416 cnh 1.7

  ViewVC Help
Powered by ViewVC 1.1.22