/[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.16 - (show annotations) (download)
Tue Jun 9 16:48:02 1998 UTC (25 years, 11 months ago) by cnh
Branch: MAIN
Changes since 1.15: +16 -2 lines
File MIME type: text/plain
Changes to support topography, hydrography and
forcing from files

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

  ViewVC Help
Powered by ViewVC 1.1.22