/[MITgcm]/MITgcm/model/inc/PARAMS.h
ViewVC logotype

Contents of /MITgcm/model/inc/PARAMS.h

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.24 - (show annotations) (download)
Fri Aug 21 12:29:55 1998 UTC (25 years, 9 months ago) by cnh
Branch: MAIN
Changes since 1.23: +46 -28 lines
File MIME type: text/plain
Consistent isomorphism changes

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

  ViewVC Help
Powered by ViewVC 1.1.22