/[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.13 - (show annotations) (download)
Sat May 30 02:10:16 1998 UTC (25 years, 11 months ago) by cnh
Branch: MAIN
CVS Tags: checkpoint4
Changes since 1.12: +4 -1 lines
File MIME type: text/plain
Further memory saving macros for particular grids

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

  ViewVC Help
Powered by ViewVC 1.1.22