152 |
C three-dimensional con. grad solver. |
C three-dimensional con. grad solver. |
153 |
C cg3dChkResFreq :: Frequency with which to check residual |
C cg3dChkResFreq :: Frequency with which to check residual |
154 |
C in con. grad solver. |
C in con. grad solver. |
155 |
|
C printResidualFreq :: Frequency for printing residual in CG iterations |
156 |
C nIter0 :: Start time-step number of for this run |
C nIter0 :: Start time-step number of for this run |
157 |
C nTimeSteps :: Number of timesteps to execute |
C nTimeSteps :: Number of timesteps to execute |
158 |
C writeStatePrec :: Precision used for writing model state. |
C writeStatePrec :: Precision used for writing model state. |
189 |
C and statistics ; higher -> more writing |
C and statistics ; higher -> more writing |
190 |
|
|
191 |
COMMON /PARM_I/ |
COMMON /PARM_I/ |
192 |
& cg2dMaxIters, |
& cg2dMaxIters, cg2dChkResFreq, cg2dPreCondFreq, |
193 |
& cg2dChkResFreq, cg2dPreCondFreq, |
& cg3dMaxIters, cg3dChkResFreq, |
194 |
& cg3dMaxIters, |
& printResidualFreq, |
|
& cg3dChkResFreq, |
|
195 |
& nIter0, nTimeSteps, nEndIter, |
& nIter0, nTimeSteps, nEndIter, |
196 |
& writeStatePrec, |
& writeStatePrec, |
197 |
& writeBinaryPrec, readBinaryPrec, |
& writeBinaryPrec, readBinaryPrec, |
210 |
INTEGER cg2dPreCondFreq |
INTEGER cg2dPreCondFreq |
211 |
INTEGER cg3dMaxIters |
INTEGER cg3dMaxIters |
212 |
INTEGER cg3dChkResFreq |
INTEGER cg3dChkResFreq |
213 |
|
INTEGER printResidualFreq |
214 |
INTEGER nIter0 |
INTEGER nIter0 |
215 |
INTEGER nTimeSteps |
INTEGER nTimeSteps |
216 |
INTEGER nEndIter |
INTEGER nEndIter |
282 |
C useAbsVorticity :: work with f+zeta in Coriolis terms |
C useAbsVorticity :: work with f+zeta in Coriolis terms |
283 |
C upwindShear :: use 1rst order upwind interp. (V.I., vertical advection) |
C upwindShear :: use 1rst order upwind interp. (V.I., vertical advection) |
284 |
C momStepping :: Turns momentum equation time-stepping off |
C momStepping :: Turns momentum equation time-stepping off |
285 |
|
C calc_wVelocity :: Turns of vertical velocity calculation off |
286 |
C- Temp. & Salt params: |
C- Temp. & Salt params: |
287 |
C tempStepping :: Turns temperature equation time-stepping off |
C tempStepping :: Turns temperature equation time-stepping off |
288 |
C saltStepping :: Turns salinity equation time-stepping off |
C saltStepping :: Turns salinity equation time-stepping off |
318 |
C use3Dsolver :: set to true to use 3-D pressure solver |
C use3Dsolver :: set to true to use 3-D pressure solver |
319 |
C implicitIntGravWave :: treat Internal Gravity Wave implicitly |
C implicitIntGravWave :: treat Internal Gravity Wave implicitly |
320 |
C staggerTimeStep :: enable a Stagger time stepping U,V (& W) then T,S |
C staggerTimeStep :: enable a Stagger time stepping U,V (& W) then T,S |
321 |
|
C doResetHFactors :: Do reset thickness factors @ beginning of each time-step |
322 |
C implicitDiffusion :: Turns implicit vertical diffusion on |
C implicitDiffusion :: Turns implicit vertical diffusion on |
323 |
C implicitViscosity :: Turns implicit vertical viscosity on |
C implicitViscosity :: Turns implicit vertical viscosity on |
324 |
C tempImplVertAdv :: Turns on implicit vertical advection for Temperature |
C tempImplVertAdv :: Turns on implicit vertical advection for Temperature |
339 |
C doSaltClimRelax :: Set true if relaxation to salinity |
C doSaltClimRelax :: Set true if relaxation to salinity |
340 |
C climatology is required. |
C climatology is required. |
341 |
C allowFreezing :: Allows surface water to freeze and form ice |
C allowFreezing :: Allows surface water to freeze and form ice |
342 |
|
C allowInteriorFreezing :: Allow water at depth to freeze and rise to the surface |
343 |
C useOldFreezing :: use the old version (before checkpoint52a_pre, 2003-11-12) |
C useOldFreezing :: use the old version (before checkpoint52a_pre, 2003-11-12) |
344 |
C periodicExternalForcing :: Set true if forcing is time-dependant |
C periodicExternalForcing :: Set true if forcing is time-dependant |
345 |
C- I/O parameters - |
C- I/O parameters - |
360 |
C monitor_stdio :: use stdio for monitor output |
C monitor_stdio :: use stdio for monitor output |
361 |
C dumpInitAndLast :: dumps model state to files at Initial (nIter0) |
C dumpInitAndLast :: dumps model state to files at Initial (nIter0) |
362 |
C & Last iteration, in addition multiple of dumpFreq iter. |
C & Last iteration, in addition multiple of dumpFreq iter. |
|
C debugMode :: controls printing of debug msg (sequence of S/R calls). |
|
363 |
C printDomain :: controls printing of domain fields (bathy, hFac ...). |
C printDomain :: controls printing of domain fields (bathy, hFac ...). |
364 |
|
|
365 |
COMMON /PARM_L/ |
COMMON /PARM_L/ |
377 |
& useEnergyConservingCoriolis, useJamartWetPoints, useJamartMomAdv, |
& useEnergyConservingCoriolis, useJamartWetPoints, useJamartMomAdv, |
378 |
& upwindVorticity, highOrderVorticity, |
& upwindVorticity, highOrderVorticity, |
379 |
& useAbsVorticity, upwindShear, |
& useAbsVorticity, upwindShear, |
380 |
& momStepping, tempStepping, saltStepping, |
& momStepping, calc_wVelocity, tempStepping, saltStepping, |
381 |
& tempAdvection, tempIsActiveTr, tempForcing, |
& tempAdvection, tempIsActiveTr, tempForcing, |
382 |
& saltAdvection, saltIsActiveTr, saltForcing, |
& saltAdvection, saltIsActiveTr, saltForcing, |
383 |
& maskIniTemp, maskIniSalt, checkIniTemp, checkIniSalt, |
& maskIniTemp, maskIniSalt, checkIniTemp, checkIniSalt, |
384 |
& useRealFreshWaterFlux, useSRCGSolver, |
& useRealFreshWaterFlux, useSRCGSolver, |
385 |
& rigidLid, implicitFreeSurface, exactConserv, linFSConserveTr, |
& rigidLid, implicitFreeSurface, exactConserv, linFSConserveTr, |
386 |
& uniformLin_PhiSurf, |
& uniformLin_PhiSurf, |
387 |
& quasiHydrostatic, nonHydrostatic, |
& quasiHydrostatic, nonHydrostatic, use3Dsolver, |
388 |
& use3Dsolver, implicitIntGravWave, staggerTimeStep, |
& implicitIntGravWave, staggerTimeStep, doResetHFactors, |
389 |
& implicitDiffusion, implicitViscosity, |
& implicitDiffusion, implicitViscosity, |
390 |
& tempImplVertAdv, saltImplVertAdv, momImplVertAdv, |
& tempImplVertAdv, saltImplVertAdv, momImplVertAdv, |
391 |
& multiDimAdvection, useMultiDimAdvec, |
& multiDimAdvection, useMultiDimAdvec, |
392 |
& momDissip_In_AB, doAB_onGtGs, |
& momDissip_In_AB, doAB_onGtGs, |
393 |
& balanceEmPmR, balanceQnet, balancePrintMean, |
& balanceEmPmR, balanceQnet, balancePrintMean, |
394 |
& doThetaClimRelax, doSaltClimRelax, |
& doThetaClimRelax, doSaltClimRelax, |
395 |
& allowFreezing, useOldFreezing, |
& allowFreezing, allowInteriorFreezing, useOldFreezing, |
396 |
& periodicExternalForcing, |
& periodicExternalForcing, |
397 |
& globalFiles, |
& globalFiles, |
398 |
& pickupStrictlyMatch, usePickupBeforeC54, startFromPickupAB2, |
& pickupStrictlyMatch, usePickupBeforeC54, startFromPickupAB2, |
400 |
& writePickupAtEnd, |
& writePickupAtEnd, |
401 |
& timeave_mdsio, snapshot_mdsio, monitor_stdio, |
& timeave_mdsio, snapshot_mdsio, monitor_stdio, |
402 |
& outputTypesInclusive, dumpInitAndLast, |
& outputTypesInclusive, dumpInitAndLast, |
403 |
& debugMode, printDomain, |
& printDomain, |
404 |
& inAdMode, inAdTrue, inAdFalse, inAdExact |
& inAdMode, inAdTrue, inAdFalse, inAdExact |
405 |
|
|
406 |
LOGICAL fluidIsAir |
LOGICAL fluidIsAir |
449 |
LOGICAL use3Dsolver |
LOGICAL use3Dsolver |
450 |
LOGICAL implicitIntGravWave |
LOGICAL implicitIntGravWave |
451 |
LOGICAL staggerTimeStep |
LOGICAL staggerTimeStep |
452 |
|
LOGICAL doResetHFactors |
453 |
LOGICAL momStepping |
LOGICAL momStepping |
454 |
|
LOGICAL calc_wVelocity |
455 |
LOGICAL tempStepping |
LOGICAL tempStepping |
456 |
LOGICAL saltStepping |
LOGICAL saltStepping |
457 |
LOGICAL metricTerms |
LOGICAL metricTerms |
479 |
LOGICAL doThetaClimRelax |
LOGICAL doThetaClimRelax |
480 |
LOGICAL doSaltClimRelax |
LOGICAL doSaltClimRelax |
481 |
LOGICAL allowFreezing |
LOGICAL allowFreezing |
482 |
|
LOGICAL allowInteriorFreezing |
483 |
LOGICAL useOldFreezing |
LOGICAL useOldFreezing |
484 |
LOGICAL periodicExternalForcing |
LOGICAL periodicExternalForcing |
485 |
LOGICAL globalFiles |
LOGICAL globalFiles |
491 |
LOGICAL timeave_mdsio, snapshot_mdsio, monitor_stdio |
LOGICAL timeave_mdsio, snapshot_mdsio, monitor_stdio |
492 |
LOGICAL outputTypesInclusive |
LOGICAL outputTypesInclusive |
493 |
LOGICAL dumpInitAndLast |
LOGICAL dumpInitAndLast |
494 |
LOGICAL debugMode, printDomain |
LOGICAL printDomain |
495 |
LOGICAL inAdMode, inAdTrue, inAdFalse, inAdExact |
LOGICAL inAdMode, inAdTrue, inAdFalse, inAdExact |
496 |
|
|
497 |
C-- COMMON /PARM_R/ "Real" valued parameters used by the model. |
C-- COMMON /PARM_R/ "Real" valued parameters used by the model. |
518 |
C delR :: Vertical grid spacing ( units of r ). |
C delR :: Vertical grid spacing ( units of r ). |
519 |
C delRc :: Vertical grid spacing between cell centers (r unit). |
C delRc :: Vertical grid spacing between cell centers (r unit). |
520 |
C delX :: Separation between cell faces (m) or (deg), depending |
C delX :: Separation between cell faces (m) or (deg), depending |
521 |
C delY on input flags. |
C delY on input flags. Note: moved to header file SET_GRID.h |
522 |
C xgOrigin :: Origin of the X-axis (Cartesian Grid) / Longitude of Western |
C xgOrigin :: Origin of the X-axis (Cartesian Grid) / Longitude of Western |
523 |
C :: most cell face (Lat-Lon grid) (Note: this is an "inert" |
C :: most cell face (Lat-Lon grid) (Note: this is an "inert" |
524 |
C :: parameter but it makes geographical references simple.) |
C :: parameter but it makes geographical references simple.) |
528 |
C recip_gravity and its inverse |
C recip_gravity and its inverse |
529 |
C gBaro :: Accel. due to gravity used in barotropic equation ( m/s^2 ) |
C gBaro :: Accel. due to gravity used in barotropic equation ( m/s^2 ) |
530 |
C rhoNil :: Reference density for the linear equation of state |
C rhoNil :: Reference density for the linear equation of state |
531 |
C rhoConst :: Vertically constant reference density |
C rhoConst :: Vertically constant reference density (Boussinesq) |
532 |
C rhoFacC :: normalized (by rhoConst) reference density at cell-Center |
C rhoFacC :: normalized (by rhoConst) reference density at cell-Center |
533 |
C rhoFacF :: normalized (by rhoConst) reference density at cell-interFace |
C rhoFacF :: normalized (by rhoConst) reference density at cell-interFace |
534 |
C rhoConstFresh :: Constant reference density for fresh water (rain) |
C rhoConstFresh :: Constant reference density for fresh water (rain) |
720 |
C psiEuler :: Euler angle, rotation about new z-axis |
C psiEuler :: Euler angle, rotation about new z-axis |
721 |
COMMON /PARM_R/ cg2dTargetResidual, cg2dTargetResWunit, |
COMMON /PARM_R/ cg2dTargetResidual, cg2dTargetResWunit, |
722 |
& cg2dpcOffDFac, cg3dTargetResidual, |
& cg2dpcOffDFac, cg3dTargetResidual, |
723 |
& delR, delRc, delX, delY, xgOrigin, ygOrigin, |
& delR, delRc, xgOrigin, ygOrigin, |
724 |
& deltaT, deltaTmom, dTtracerLev, deltaTfreesurf, deltaTClock, |
& deltaT, deltaTmom, dTtracerLev, deltaTfreesurf, deltaTClock, |
725 |
& abEps, alph_AB, beta_AB, |
& abEps, alph_AB, beta_AB, |
726 |
& rSphere, recip_rSphere, radius_fromHorizGrid, |
& rSphere, recip_rSphere, radius_fromHorizGrid, |
743 |
& freeSurfFac, implicSurfPress, implicDiv2Dflow, implicitNHPress, |
& freeSurfFac, implicSurfPress, implicDiv2Dflow, implicitNHPress, |
744 |
& hFacMin, hFacMinDz, hFacInf, hFacSup, |
& hFacMin, hFacMinDz, hFacInf, hFacSup, |
745 |
& gravity, recip_gravity, gBaro, |
& gravity, recip_gravity, gBaro, |
746 |
& rhonil, recip_rhonil, rhoConst, recip_rhoConst, |
& rhoNil, rhoConst, recip_rhoConst, |
747 |
& rhoFacC, recip_rhoFacC, rhoFacF, recip_rhoFacF, |
& rhoFacC, recip_rhoFacC, rhoFacF, recip_rhoFacF, |
748 |
& rhoConstFresh, rho1Ref, tRef, sRef, phiRef, dBdrRef, |
& rhoConstFresh, rho1Ref, tRef, sRef, phiRef, dBdrRef, |
749 |
& rVel2wUnit, wUnit2rVel, mass2rUnit, rUnit2mass, |
& rVel2wUnit, wUnit2rVel, mass2rUnit, rUnit2mass, |
769 |
_RL cg2dpcOffDFac |
_RL cg2dpcOffDFac |
770 |
_RL delR(Nr) |
_RL delR(Nr) |
771 |
_RL delRc(Nr+1) |
_RL delRc(Nr+1) |
|
_RL delX(Nx) |
|
|
_RL delY(Ny) |
|
772 |
_RL xgOrigin |
_RL xgOrigin |
773 |
_RL ygOrigin |
_RL ygOrigin |
774 |
_RL deltaT |
_RL deltaT |
836 |
_RL gravity |
_RL gravity |
837 |
_RL recip_gravity |
_RL recip_gravity |
838 |
_RL gBaro |
_RL gBaro |
839 |
_RL rhonil, recip_rhonil |
_RL rhoNil |
840 |
_RL rhoConst, recip_rhoConst |
_RL rhoConst, recip_rhoConst |
841 |
_RL rhoFacC(Nr), recip_rhoFacC(Nr) |
_RL rhoFacC(Nr), recip_rhoFacC(Nr) |
842 |
_RL rhoFacF(Nr+1), recip_rhoFacF(Nr+1) |
_RL rhoFacF(Nr+1), recip_rhoFacF(Nr+1) |
930 |
LOGICAL useKPP |
LOGICAL useKPP |
931 |
LOGICAL useGMRedi |
LOGICAL useGMRedi |
932 |
LOGICAL useDOWN_SLOPE |
LOGICAL useDOWN_SLOPE |
933 |
|
LOGICAL useBBL |
934 |
LOGICAL useCAL |
LOGICAL useCAL |
935 |
LOGICAL useEXF |
LOGICAL useEXF |
936 |
LOGICAL useBulkForce |
LOGICAL useBulkForce |
949 |
LOGICAL useSEAICE |
LOGICAL useSEAICE |
950 |
LOGICAL useSALT_PLUME |
LOGICAL useSALT_PLUME |
951 |
LOGICAL useShelfIce |
LOGICAL useShelfIce |
952 |
|
LOGICAL useStreamIce |
953 |
LOGICAL useICEFRONT |
LOGICAL useICEFRONT |
954 |
LOGICAL useThSIce |
LOGICAL useThSIce |
955 |
LOGICAL useATM2d |
LOGICAL useATM2d |
967 |
COMMON /PARM_PACKAGES/ |
COMMON /PARM_PACKAGES/ |
968 |
& useGAD, useOBCS, useSHAP_FILT, useZONAL_FILT, |
& useGAD, useOBCS, useSHAP_FILT, useZONAL_FILT, |
969 |
& useOPPS, usePP81, useMY82, useGGL90, useKPP, |
& useOPPS, usePP81, useMY82, useGGL90, useKPP, |
970 |
& useGMRedi, useDOWN_SLOPE, |
& useGMRedi, useBBL, useDOWN_SLOPE, |
971 |
& useCAL, useEXF, useBulkForce, useEBM, useCheapAML, |
& useCAL, useEXF, useBulkForce, useEBM, useCheapAML, |
972 |
& useGrdchk, useSMOOTH, useECCO, useSBO, useFLT, |
& useGrdchk, useSMOOTH, useECCO, useSBO, useFLT, |
973 |
& usePTRACERS, useGCHEM, useRBCS, useOffLine, useMATRIX, |
& usePTRACERS, useGCHEM, useRBCS, useOffLine, useMATRIX, |
974 |
& useSEAICE, useSALT_PLUME, useShelfIce, |
& useSEAICE, useSALT_PLUME, useShelfIce, useStreamIce, |
975 |
& useICEFRONT, useThSIce, |
& useICEFRONT, useThSIce, |
976 |
& useATM2D, useAIM, useLand, useFizhi, useGridAlt, |
& useATM2D, useAIM, useLand, useFizhi, useGridAlt, |
977 |
& useDiagnostics, useREGRID, useLayers, useMNC, |
& useDiagnostics, useREGRID, useLayers, useMNC, |
986 |
& useKPPinAdMode, useKPPinFwdMode, |
& useKPPinAdMode, useKPPinFwdMode, |
987 |
& useGMrediInAdMode, useGMrediInFwdMode, |
& useGMrediInAdMode, useGMrediInFwdMode, |
988 |
& useSEAICEinAdMode, useSEAICEinFwdMode |
& useSEAICEinAdMode, useSEAICEinFwdMode |
989 |
|
|
990 |
CEH3 ;;; Local Variables: *** |
CEH3 ;;; Local Variables: *** |
991 |
CEH3 ;;; mode:fortran *** |
CEH3 ;;; mode:fortran *** |
992 |
CEH3 ;;; End: *** |
CEH3 ;;; End: *** |