110 |
C two-dimensional con. grad solver. |
C two-dimensional con. grad solver. |
111 |
C cg2dChkResFreq :: Frequency with which to check residual |
C cg2dChkResFreq :: Frequency with which to check residual |
112 |
C in con. grad solver. |
C in con. grad solver. |
113 |
|
C cg2dPreCondFreq :: Frequency for updating cg2d preconditioner |
114 |
|
C (non-linear free-surf.) |
115 |
C cg3dMaxIters :: Maximum number of iterations in the |
C cg3dMaxIters :: Maximum number of iterations in the |
116 |
C three-dimensional con. grad solver. |
C three-dimensional con. grad solver. |
117 |
C cg3dChkResFreq :: Frequency with which to check residual |
C cg3dChkResFreq :: Frequency with which to check residual |
128 |
C =0 Linear free surface ; >0 Non-linear |
C =0 Linear free surface ; >0 Non-linear |
129 |
C select_rStar :: option related to r* vertical coordinate |
C select_rStar :: option related to r* vertical coordinate |
130 |
C =0 (default) use r coord. ; > 0 use r* |
C =0 (default) use r coord. ; > 0 use r* |
131 |
|
C tempAdvScheme :: Temp. Horiz.Advection scheme selector |
132 |
|
C tempVertAdvScheme :: Temp. Vert. Advection scheme selector |
133 |
|
C saltAdvScheme :: Salt. Horiz.advection scheme selector |
134 |
|
C saltVertAdvScheme :: Salt. Vert. Advection scheme selector |
135 |
|
C debugLevel :: debug level selector: higher -> more writing |
136 |
|
|
137 |
COMMON /PARM_I/ |
COMMON /PARM_I/ |
138 |
& cg2dMaxIters, |
& cg2dMaxIters, |
139 |
& cg2dChkResFreq, |
& cg2dChkResFreq, cg2dPreCondFreq, |
140 |
& cg3dMaxIters, |
& cg3dMaxIters, |
141 |
& cg3dChkResFreq, |
& cg3dChkResFreq, |
142 |
& nIter0, nTimeSteps, nEndIter, |
& nIter0, nTimeSteps, nEndIter, |
144 |
& writeStatePrec, nCheckLev, |
& writeStatePrec, nCheckLev, |
145 |
& writeBinaryPrec, readBinaryPrec, |
& writeBinaryPrec, readBinaryPrec, |
146 |
& nonlinFreeSurf, select_rStar, |
& nonlinFreeSurf, select_rStar, |
147 |
& tempAdvScheme, saltAdvScheme, tracerAdvScheme, |
& tempAdvScheme, tempVertAdvScheme, |
148 |
|
& saltAdvScheme, saltVertAdvScheme, |
149 |
|
& tracerAdvScheme, |
150 |
& debugLevel |
& debugLevel |
151 |
INTEGER cg2dMaxIters |
INTEGER cg2dMaxIters |
152 |
INTEGER cg2dChkResFreq |
INTEGER cg2dChkResFreq |
153 |
|
INTEGER cg2dPreCondFreq |
154 |
INTEGER cg3dMaxIters |
INTEGER cg3dMaxIters |
155 |
INTEGER cg3dChkResFreq |
INTEGER cg3dChkResFreq |
156 |
INTEGER nIter0 |
INTEGER nIter0 |
163 |
INTEGER nCheckLev |
INTEGER nCheckLev |
164 |
INTEGER nonlinFreeSurf |
INTEGER nonlinFreeSurf |
165 |
INTEGER select_rStar |
INTEGER select_rStar |
166 |
INTEGER tempAdvScheme |
INTEGER tempAdvScheme, tempVertAdvScheme |
167 |
INTEGER saltAdvScheme |
INTEGER saltAdvScheme, saltVertAdvScheme |
168 |
INTEGER tracerAdvScheme |
INTEGER tracerAdvScheme |
169 |
INTEGER debugLevel |
INTEGER debugLevel |
170 |
|
|
181 |
C coordinate frame. |
C coordinate frame. |
182 |
C usingSphericalPolarGrid :: If TRUE grid generation will be in a |
C usingSphericalPolarGrid :: If TRUE grid generation will be in a |
183 |
C spherical polar frame. |
C spherical polar frame. |
184 |
|
C usingCylindricalGrid :: If TRUE grid generation will be Cylindrical |
185 |
C no_slip_sides :: Impose "no-slip" at lateral boundaries. |
C no_slip_sides :: Impose "no-slip" at lateral boundaries. |
186 |
C no_slip_bottom :: Impose "no-slip" at bottom boundary. |
C no_slip_bottom :: Impose "no-slip" at bottom boundary. |
187 |
C staggerTimeStep :: enable a Stagger time stepping T,S Rho then U,V |
C staggerTimeStep :: enable a Stagger time stepping T,S Rho then U,V |
235 |
C saltImplVertAdv :: Turns on implicit vertical advection for Salinity |
C saltImplVertAdv :: Turns on implicit vertical advection for Salinity |
236 |
C momImplVertAdv :: Turns on implicit vertical advection for Momentum |
C momImplVertAdv :: Turns on implicit vertical advection for Momentum |
237 |
C multiDimAdvection :: Flag that enable multi-dimension advection |
C multiDimAdvection :: Flag that enable multi-dimension advection |
238 |
|
C useMultiDimAdvec :: True if multi-dim advection is used at least once |
239 |
C forcing_In_AB :: if False, put forcing (Temp,Salt,Tracers) contribution |
C forcing_In_AB :: if False, put forcing (Temp,Salt,Tracers) contribution |
240 |
C out off Adams-Bashforth time stepping. |
C out off Adams-Bashforth time stepping. |
241 |
C doThetaClimRelax :: Set true if relaxation to temperature |
C doThetaClimRelax :: Set true if relaxation to temperature |
261 |
C useOldFreezing :: use the old version (before checkpoint52a_pre, 2003-11-12) |
C useOldFreezing :: use the old version (before checkpoint52a_pre, 2003-11-12) |
262 |
C groundAtK1 :: put the surface(k=1) at the Lower Boundary (=ground) |
C groundAtK1 :: put the surface(k=1) at the Lower Boundary (=ground) |
263 |
COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid, |
COMMON /PARM_L/ usingCartesianGrid, usingSphericalPolarGrid, |
264 |
& usingCurvilinearGrid, |
& usingCurvilinearGrid, usingCylindricalGrid, |
265 |
& no_slip_sides,no_slip_bottom, |
& no_slip_sides,no_slip_bottom, |
266 |
& staggerTimeStep, |
& staggerTimeStep, |
267 |
& momViscosity, momAdvection, momForcing, useCoriolis, |
& momViscosity, momAdvection, momForcing, useCoriolis, |
279 |
& useAbsVorticity, |
& useAbsVorticity, |
280 |
& implicitDiffusion, implicitViscosity, |
& implicitDiffusion, implicitViscosity, |
281 |
& tempImplVertAdv, saltImplVertAdv, momImplVertAdv, |
& tempImplVertAdv, saltImplVertAdv, momImplVertAdv, |
282 |
& multiDimAdvection, forcing_In_AB, |
& multiDimAdvection, useMultiDimAdvec, forcing_In_AB, |
283 |
& doThetaClimRelax, doSaltClimRelax, doTr1ClimRelax, |
& doThetaClimRelax, doSaltClimRelax, doTr1ClimRelax, |
284 |
& periodicExternalForcing, |
& periodicExternalForcing, |
285 |
& usingPCoords, usingZCoords, useDynP_inEos_Zc, setCenterDr, |
& usingPCoords, usingZCoords, useDynP_inEos_Zc, setCenterDr, |
286 |
& nonHydrostatic, quasiHydrostatic, globalFiles, useSingleCpuIO, |
& nonHydrostatic, quasiHydrostatic, globalFiles, useSingleCpuIO, |
287 |
& allowFreezing, useOldFreezing, groundAtK1, |
& allowFreezing, useOldFreezing, groundAtK1, |
288 |
& usePickupBeforeC35, debugMode, |
& usePickupBeforeC35, usePickupBeforeC54, debugMode, |
289 |
& readPickupWithTracer, writePickupWithTracer |
& readPickupWithTracer, writePickupWithTracer |
290 |
LOGICAL usingCartesianGrid |
LOGICAL usingCartesianGrid |
291 |
LOGICAL usingSphericalPolarGrid |
LOGICAL usingSphericalPolarGrid |
292 |
|
LOGICAL usingCylindricalGrid |
293 |
LOGICAL usingCurvilinearGrid |
LOGICAL usingCurvilinearGrid |
294 |
LOGICAL usingSphericalPolarMTerms |
LOGICAL usingSphericalPolarMTerms |
295 |
LOGICAL useNHMTerms |
LOGICAL useNHMTerms |
335 |
LOGICAL saltImplVertAdv |
LOGICAL saltImplVertAdv |
336 |
LOGICAL momImplVertAdv |
LOGICAL momImplVertAdv |
337 |
LOGICAL multiDimAdvection |
LOGICAL multiDimAdvection |
338 |
|
LOGICAL useMultiDimAdvec |
339 |
LOGICAL forcing_In_AB |
LOGICAL forcing_In_AB |
340 |
LOGICAL doThetaClimRelax |
LOGICAL doThetaClimRelax |
341 |
LOGICAL doSaltClimRelax |
LOGICAL doSaltClimRelax |
353 |
LOGICAL useOldFreezing |
LOGICAL useOldFreezing |
354 |
LOGICAL groundAtK1 |
LOGICAL groundAtK1 |
355 |
LOGICAL usePickupBeforeC35 |
LOGICAL usePickupBeforeC35 |
356 |
|
LOGICAL usePickupBeforeC54 |
357 |
LOGICAL debugMode |
LOGICAL debugMode |
358 |
LOGICAL readPickupWithTracer |
LOGICAL readPickupWithTracer |
359 |
LOGICAL writePickupWithTracer |
LOGICAL writePickupWithTracer |
360 |
|
|
361 |
C-- COMMON /PARM_R/ "Real" valued parameters used by the model. |
C-- COMMON /PARM_R/ "Real" valued parameters used by the model. |
362 |
C gg2dTargetResidual |
C cg2dTargetResidual |
363 |
C :: Target residual for cg2d solver; no unit (RHS normalisation) |
C :: Target residual for cg2d solver; no unit (RHS normalisation) |
364 |
C cg2dTargetResWunit |
C cg2dTargetResWunit |
365 |
C :: Target residual for cg2d solver; W unit (No RHS normalisation) |
C :: Target residual for cg2d solver; W unit (No RHS normalisation) |
533 |
& hFacMinDr, hFacMinDp, |
& hFacMinDr, hFacMinDp, |
534 |
& horiVertRatio, recip_horiVertRatio, |
& horiVertRatio, recip_horiVertRatio, |
535 |
& ivdc_kappa, Ro_SeaLevel, |
& ivdc_kappa, Ro_SeaLevel, |
536 |
& bottomDragLinear,bottomDragQuadratic |
& bottomDragLinear,bottomDragQuadratic, |
537 |
|
& tCyl |
538 |
|
|
539 |
_RL cg2dTargetResidual |
_RL cg2dTargetResidual |
540 |
_RL cg2dTargetResWunit |
_RL cg2dTargetResWunit |
642 |
_RL Ro_SeaLevel |
_RL Ro_SeaLevel |
643 |
_RL bottomDragLinear |
_RL bottomDragLinear |
644 |
_RL bottomDragQuadratic |
_RL bottomDragQuadratic |
645 |
|
_RL tCyl |
646 |
|
|
647 |
C-- COMMON /PARM_A/ Thermodynamics constants ? |
C-- COMMON /PARM_A/ Thermodynamics constants ? |
648 |
COMMON /PARM_A/ HeatCapacity_Cp,recip_Cp |
COMMON /PARM_A/ HeatCapacity_Cp,recip_Cp |