|
||||
File indexing completed on 2024-09-20 05:10:15 UTC
view on githubraw file Latest commit e6e223b2 on 2024-09-19 22:01:15 UTCac0f2a1690 Chri*0001 CBOP a30418b6b9 Ed H*0002 C !ROUTINE: PARAMS.h 0003 C !INTERFACE: 0004 C #include PARAMS.h 0005 0006 C !DESCRIPTION: 0007 C Header file defining model "parameters". The values from the 0008 C model standard input file are stored into the variables held 0009 C here. Notes describing the parameters can also be found here. 0010 ac0f2a1690 Chri*0011 CEOP 924557e60a Chri*0012 0013 C-- Contants 0014 C Useful physical values 0015 Real*8 PI 0016 PARAMETER ( PI = 3.14159265358979323844D0 ) 0017 Real*8 deg2rad 0018 PARAMETER ( deg2rad = 2.D0*PI/360.D0 ) 0019 0020 C-- COMMON /PARM_C/ Character valued parameters used by the model. 9fafc42509 Jean*0021 C buoyancyRelation :: Flag used to indicate which relation to use to 0022 C get buoyancy. 0023 C eosType :: choose the equation of state: 0024 C LINEAR, POLY3, UNESCO, JMD95Z, JMD95P, MDJWF, IDEALGAS 0025 C pickupSuff :: force to start from pickup files (even if nIter0=0) 0026 C and read pickup files with this suffix (max 10 Char.) 0027 C mdsioLocalDir :: read-write tiled file from/to this directory name 0028 C (+ 4 digits Processor-Rank) instead of current dir. 76099ab0aa Jean*0029 C adTapeDir :: read-write checkpointing tape files from/to this 83d329dbf1 Mart*0030 C directory name instead of current dir. Conflicts 0031 C mdsioLocalDir, so only one of the two can be set. afed22d369 Jean*0032 C tRefFile :: File containing reference Potential Temperat. tRef (1.D) 0033 C sRefFile :: File containing reference salinity/spec.humid. sRef (1.D) 0034 C rhoRefFile :: File containing reference density profile rhoRef (1.D) 6ef71429db Jean*0035 C gravityFile :: File containing gravity vertical profile (1.D) afed22d369 Jean*0036 C delRFile :: File containing vertical grid spacing delR (1.D array) 0037 C delRcFile :: File containing vertical grid spacing delRc (1.D array) f15994caab Jean*0038 C hybSigmFile :: File containing hybrid-sigma vertical coord. coeff. (2x 1.D) 7feb50e40b Jean*0039 C delXFile :: File containing X-spacing grid definition (1.D array) 0040 C delYFile :: File containing Y-spacing grid definition (1.D array) afed22d369 Jean*0041 C horizGridFile :: File containing horizontal-grid definition 7feb50e40b Jean*0042 C (only when using curvilinear_grid) 9fafc42509 Jean*0043 C bathyFile :: File containing bathymetry. If not defined bathymetry 0044 C is taken from inline function. 0045 C topoFile :: File containing the topography of the surface (unit=m) 0046 C (mainly used for the atmosphere = ground height). 26565fca80 Jean*0047 C addWwallFile :: File containing 2-D additional Western cell-edge wall 0048 C addSwallFile :: File containing 2-D additional Southern cell-edge wall 0049 C (e.g., to add "thin-wall" where it is =1) 9fafc42509 Jean*0050 C hydrogThetaFile :: File containing initial hydrographic data (3-D) 0051 C for potential temperature. 0052 C hydrogSaltFile :: File containing initial hydrographic data (3-D) 0053 C for salinity. a7c5f770ff Dimi*0054 C diffKrFile :: File containing 3D specification of vertical diffusivity d062b1342f Gael*0055 C viscAhDfile :: File containing 3D specification of horizontal viscosity 0056 C viscAhZfile :: File containing 3D specification of horizontal viscosity 0057 C viscA4Dfile :: File containing 3D specification of horizontal viscosity 0058 C viscA4Zfile :: File containing 3D specification of horizontal viscosity ac0f2a1690 Chri*0059 C zonalWindFile :: File containing zonal wind data 0060 C meridWindFile :: File containing meridional wind data 9fafc42509 Jean*0061 C thetaClimFile :: File containing surface theta climataology used 0097b465dd Jean*0062 C in relaxation term -lambda(theta-theta*) 9fafc42509 Jean*0063 C saltClimFile :: File containing surface salt climataology used 0097b465dd Jean*0064 C in relaxation term -lambda(salt-salt*) 2d2cc93d4f Jean*0065 C surfQfile :: File containing surface heat flux, excluding SW 0066 C (old version, kept for backward compatibility) 0067 C surfQnetFile :: File containing surface net heat flux 0068 C surfQswFile :: File containing surface shortwave radiation ac0f2a1690 Chri*0069 C EmPmRfile :: File containing surface fresh water flux 8f02cfbf56 Dimi*0070 C NOTE: for backward compatibility EmPmRfile is specified in 0071 C m/s when using external_fields_load.F. It is converted 0072 C to kg/m2/s by multiplying by rhoConstFresh. 1e273d1bf5 Jean*0073 C saltFluxFile :: File containing surface salt flux 395b093796 Mart*0074 C pLoadFile :: File containing pressure loading 0320e25227 Mart*0075 C geoPotAnomFile :: File containing constant geopotential anomaly due to 0076 C density structure 22dbc402ed Jean*0077 C addMassFile :: File containing source/sink of fluid in the interior 43af9695da Gael*0078 C eddyPsiXFile :: File containing zonal Eddy streamfunction data 0079 C eddyPsiYFile :: File containing meridional Eddy streamfunction data 7e00d7e8f9 Jean*0080 C geothermalFile :: File containing geothermal heat flux 0081 C lambdaThetaFile :: File containing SST relaxation coefficient 0082 C lambdaSaltFile :: File containing SSS relaxation coefficient 0083 C wghtBalanceFile :: File containing weight used in balancing net EmPmR a30418b6b9 Ed H*0084 C the_run_name :: string identifying the name of the model "run" 9fafc42509 Jean*0085 COMMON /PARM_C/ 0086 & buoyancyRelation, eosType, 83d329dbf1 Mart*0087 & pickupSuff, mdsioLocalDir, adTapeDir, 6ef71429db Jean*0088 & tRefFile, sRefFile, rhoRefFile, gravityFile, f15994caab Jean*0089 & delRFile, delRcFile, hybSigmFile, 7feb50e40b Jean*0090 & delXFile, delYFile, horizGridFile, 26565fca80 Jean*0091 & bathyFile, topoFile, addWwallFile, addSwallFile, 59cf2de9a0 Jean*0092 & viscAhDfile, viscAhZfile, 0093 & viscA4Dfile, viscA4Zfile, a7c5f770ff Dimi*0094 & hydrogThetaFile, hydrogSaltFile, diffKrFile, 42bd47f06f Chri*0095 & zonalWindFile, meridWindFile, thetaClimFile, 9fafc42509 Jean*0096 & saltClimFile, 1e273d1bf5 Jean*0097 & EmPmRfile, saltFluxFile, 0098 & surfQfile, surfQnetFile, surfQswFile, 2dcaa8b9a5 Patr*0099 & uVelInitFile, vVelInitFile, pSurfInitFile, 0320e25227 Mart*0100 & pLoadFile, geoPotAnomFile, addMassFile, 90929f8806 Patr*0101 & eddyPsiXFile, eddyPsiYFile, geothermalFile, 7e00d7e8f9 Jean*0102 & lambdaThetaFile, lambdaSaltFile, wghtBalanceFile, a30418b6b9 Ed H*0103 & the_run_name 9fafc42509 Jean*0104 CHARACTER*(MAX_LEN_FNAM) buoyancyRelation 0105 CHARACTER*(6) eosType 0106 CHARACTER*(10) pickupSuff 0107 CHARACTER*(MAX_LEN_FNAM) mdsioLocalDir 83d329dbf1 Mart*0108 CHARACTER*(MAX_LEN_FNAM) adTapeDir afed22d369 Jean*0109 CHARACTER*(MAX_LEN_FNAM) tRefFile 0110 CHARACTER*(MAX_LEN_FNAM) sRefFile 0111 CHARACTER*(MAX_LEN_FNAM) rhoRefFile 6ef71429db Jean*0112 CHARACTER*(MAX_LEN_FNAM) gravityFile afed22d369 Jean*0113 CHARACTER*(MAX_LEN_FNAM) delRFile 0114 CHARACTER*(MAX_LEN_FNAM) delRcFile f15994caab Jean*0115 CHARACTER*(MAX_LEN_FNAM) hybSigmFile 7feb50e40b Jean*0116 CHARACTER*(MAX_LEN_FNAM) delXFile 0117 CHARACTER*(MAX_LEN_FNAM) delYFile 50b73ab0f2 Jean*0118 CHARACTER*(MAX_LEN_FNAM) horizGridFile 8194bc4a99 Mart*0119 CHARACTER*(MAX_LEN_FNAM) bathyFile, topoFile 26565fca80 Jean*0120 CHARACTER*(MAX_LEN_FNAM) addWwallFile, addSwallFile da261b7741 Dimi*0121 CHARACTER*(MAX_LEN_FNAM) hydrogThetaFile, hydrogSaltFile a7c5f770ff Dimi*0122 CHARACTER*(MAX_LEN_FNAM) diffKrFile d062b1342f Gael*0123 CHARACTER*(MAX_LEN_FNAM) viscAhDfile 0124 CHARACTER*(MAX_LEN_FNAM) viscAhZfile 0125 CHARACTER*(MAX_LEN_FNAM) viscA4Dfile 0126 CHARACTER*(MAX_LEN_FNAM) viscA4Zfile 81bc00c2f0 Chri*0127 CHARACTER*(MAX_LEN_FNAM) zonalWindFile 0128 CHARACTER*(MAX_LEN_FNAM) meridWindFile 42bd47f06f Chri*0129 CHARACTER*(MAX_LEN_FNAM) thetaClimFile 0130 CHARACTER*(MAX_LEN_FNAM) saltClimFile 88830be691 Alis*0131 CHARACTER*(MAX_LEN_FNAM) surfQfile 2d2cc93d4f Jean*0132 CHARACTER*(MAX_LEN_FNAM) surfQnetFile 0133 CHARACTER*(MAX_LEN_FNAM) surfQswFile 88830be691 Alis*0134 CHARACTER*(MAX_LEN_FNAM) EmPmRfile 1e273d1bf5 Jean*0135 CHARACTER*(MAX_LEN_FNAM) saltFluxFile e5c33d9529 Alis*0136 CHARACTER*(MAX_LEN_FNAM) uVelInitFile 0137 CHARACTER*(MAX_LEN_FNAM) vVelInitFile c53bb77cb3 Alis*0138 CHARACTER*(MAX_LEN_FNAM) pSurfInitFile 22dbc402ed Jean*0139 CHARACTER*(MAX_LEN_FNAM) pLoadFile 0320e25227 Mart*0140 CHARACTER*(MAX_LEN_FNAM) geoPotAnomFile 22dbc402ed Jean*0141 CHARACTER*(MAX_LEN_FNAM) addMassFile 43af9695da Gael*0142 CHARACTER*(MAX_LEN_FNAM) eddyPsiXFile 0143 CHARACTER*(MAX_LEN_FNAM) eddyPsiYFile 90929f8806 Patr*0144 CHARACTER*(MAX_LEN_FNAM) geothermalFile 28659cf1dc Patr*0145 CHARACTER*(MAX_LEN_FNAM) lambdaThetaFile 0146 CHARACTER*(MAX_LEN_FNAM) lambdaSaltFile 7e00d7e8f9 Jean*0147 CHARACTER*(MAX_LEN_FNAM) wghtBalanceFile 653d657315 Jean*0148 CHARACTER*(MAX_LEN_PREC/2) the_run_name 66dc79a095 Chri*0149 924557e60a Chri*0150 C-- COMMON /PARM_I/ Integer valued parameters used by the model. ac0f2a1690 Chri*0151 C cg2dMaxIters :: Maximum number of iterations in the 0097b465dd Jean*0152 C two-dimensional con. grad solver. aecc8b0f47 Mart*0153 C cg2dMinItersNSA :: Minimum number of iterations in the 0154 C not-self-adjoint version (cg2d_nsa.F) of the 0155 C two-dimensional con. grad solver (default = 0). fe587f155a Jean*0156 C cg2dPreCondFreq :: Frequency for updating cg2d preconditioner 0157 C (non-linear free-surf.) 84d75049c8 Jean*0158 C cg2dUseMinResSol :: =0 : use last-iteration/converged solution 0159 C =1 : use solver minimum-residual solution ac0f2a1690 Chri*0160 C cg3dMaxIters :: Maximum number of iterations in the 0097b465dd Jean*0161 C three-dimensional con. grad solver. 38867baced Jean*0162 C printResidualFreq :: Frequency for printing residual in CG iterations ac0f2a1690 Chri*0163 C nIter0 :: Start time-step number of for this run 0164 C nTimeSteps :: Number of timesteps to execute 6e6f314aa7 Patr*0165 C nTimeSteps_l2 :: Number of inner timesteps to execute per timestep c07cd3bfa8 Jean*0166 C selectCoriMap :: select setting of Coriolis parameter map: 0167 C =0 f-Plane (Constant Coriolis, = f0) 0168 C =1 Beta-Plane Coriolis (= f0 + beta.y) 0169 C =2 Spherical Coriolis (= 2.omega.sin(phi)) 0170 C =3 Read Coriolis 2-d fields from files. 0171 C selectSigmaCoord :: option related to sigma vertical coordinate ac0f2a1690 Chri*0172 C nonlinFreeSurf :: option related to non-linear free surface b69c172d01 Jean*0173 C =0 Linear free surface ; >0 Non-linear 8cd260dad9 Jean*0174 C select_rStar :: option related to r* vertical coordinate 0175 C =0 (default) use r coord. ; > 0 use r* 3fcd8a21e5 Jean*0176 C selectNHfreeSurf :: option for Non-Hydrostatic (free-)Surface formulation: 0177 C =0 (default) hydrostatic surf. ; > 0 add NH effects. 6ef71429db Jean*0178 C selectP_inEOS_Zc :: select which pressure to use in EOS (for z-coords) 0179 C =0: simply: -g*rhoConst*z 0180 C =1: use pRef = integral{-g*rho(Tref,Sref,pRef)*dz} 0181 C =2: use hydrostatic dynamical pressure 0182 C =3: use full (Hyd+NH) dynamical pressure f42dd9d11c Jean*0183 C selectAddFluid :: option to add mass source/sink of fluid in the interior 0184 C (3-D generalisation of oceanic real-fresh water flux) 0185 C =0 off ; =1 add fluid ; =-1 virtual flux (no mass added) 7e00d7e8f9 Jean*0186 C selectBalanceEmPmR :: option to balance net surface fresh-water flux: 0187 C =0 off ; =1 uniform correction ; = 2 weighted correction 05dafbe7c6 Jean*0188 C selectImplicitDrag :: select Implicit treatment of bottom/top drag 0189 C = 0: fully explicit 0190 C = 1: implicit on provisional velocity 0191 C (i.e., before grad.Eta increment) 0192 C = 2: fully implicit (combined with Impl Surf.Press) c2b6ed6bfd Jean*0193 C momForcingOutAB :: =1: take momentum forcing contribution 0097b465dd Jean*0194 C out of (=0: in) Adams-Bashforth time stepping. c2b6ed6bfd Jean*0195 C tracForcingOutAB :: =1: take tracer (Temp,Salt,pTracers) forcing contribution 0097b465dd Jean*0196 C out of (=0: in) Adams-Bashforth time stepping. 49efc6c1e0 Jean*0197 C tempAdvScheme :: Temp. Horiz.Advection scheme selector de2fbf2366 Jean*0198 C tempVertAdvScheme :: Temp. Vert. Advection scheme selector 49efc6c1e0 Jean*0199 C saltAdvScheme :: Salt. Horiz.advection scheme selector 0200 C saltVertAdvScheme :: Salt. Vert. Advection scheme selector de2fbf2366 Jean*0201 C selectKEscheme :: Kinetic Energy scheme selector (Vector Inv.) e35a804907 Jean*0202 C selectVortScheme :: Scheme selector for Vorticity term (Vector Inv.) 427e24e121 Jean*0203 C selectMetricTerms :: Scheme selector for Metric terms (Flux-Form) 7843dde2de jm-c 0204 C selectCoriScheme :: Scheme selector for Coriolis term 427e24e121 Jean*0205 C select3dCoriScheme :: Scheme selector for 3-D Coriolis (in Omega.cos Phi) f9ef55fa0c Jean*0206 C selectBotDragQuadr :: quadratic bottom drag discretisation option: 0207 C =0: average KE from grid center to U & V location 0208 C =1: use local velocity norm @ U & V location 0209 C =2: same with wet-point averaging of other component d4bae8cf47 Jean*0210 C pCellMix_select :: select option to enhance mixing near surface & bottom 0211 C unit digit: near bottom ; tens digit: near surface 0212 C with digit =0 : disable ; 0213 C = 1 : increases mixing linearly with recip_hFac 0214 C = 2,3,4 : increases mixing by recip_hFac^(2,3,4) a993440a55 Jean*0215 C readBinaryPrec :: Precision used for reading binary files 0216 C writeBinaryPrec :: Precision used for writing binary files 0217 C rwSuffixType :: controls the format of the mds file suffix. 0218 C =0 (default): use iteration number (myIter, I10.10); 0219 C =1: 100*myTime (100th sec); =2: myTime (seconds); 0220 C =3: myTime/360 (10th of hr); =4: myTime/3600 (hours). 9f127ffcb6 Jean*0221 C monitorSelect :: select group of variables to monitor 0222 C =1 : dynvars ; =2 : + vort ; =3 : + surface edffd006b2 Jean*0223 C- debugLevel :: controls printing of algorithm intermediate results 0224 C and statistics ; higher -> more writing 337b46d524 Jean*0225 C- plotLevel :: controls printing of field maps ; higher -> more flds 1dbaea09ee Chri*0226 924557e60a Chri*0227 COMMON /PARM_I/ aecc8b0f47 Mart*0228 & cg2dMaxIters, cg2dMinItersNSA, 84d75049c8 Jean*0229 & cg2dPreCondFreq, cg2dUseMinResSol, aecc8b0f47 Mart*0230 & cg3dMaxIters, printResidualFreq, 6e6f314aa7 Patr*0231 & nIter0, nTimeSteps, nTimeSteps_l2, nEndIter, c07cd3bfa8 Jean*0232 & selectCoriMap, 0233 & selectSigmaCoord, 8cd260dad9 Jean*0234 & nonlinFreeSurf, select_rStar, 6ef71429db Jean*0235 & selectNHfreeSurf, selectP_inEOS_Zc, 7e00d7e8f9 Jean*0236 & selectAddFluid, selectBalanceEmPmR, selectImplicitDrag, c2b6ed6bfd Jean*0237 & momForcingOutAB, tracForcingOutAB, 49efc6c1e0 Jean*0238 & tempAdvScheme, tempVertAdvScheme, 0239 & saltAdvScheme, saltVertAdvScheme, 427e24e121 Jean*0240 & selectKEscheme, selectVortScheme, selectMetricTerms, 0241 & selectCoriScheme, select3dCoriScheme, d4bae8cf47 Jean*0242 & selectBotDragQuadr, pCellMix_select, 427e24e121 Jean*0243 & readBinaryPrec, writeBinaryPrec, 337b46d524 Jean*0244 & rwSuffixType, monitorSelect, debugLevel, plotLevel 924557e60a Chri*0245 INTEGER cg2dMaxIters aecc8b0f47 Mart*0246 INTEGER cg2dMinItersNSA fe587f155a Jean*0247 INTEGER cg2dPreCondFreq 84d75049c8 Jean*0248 INTEGER cg2dUseMinResSol 46dc4f419b Chri*0249 INTEGER cg3dMaxIters 38867baced Jean*0250 INTEGER printResidualFreq 924557e60a Chri*0251 INTEGER nIter0 0252 INTEGER nTimeSteps 6e6f314aa7 Patr*0253 INTEGER nTimeSteps_l2 d4701cb6da Alis*0254 INTEGER nEndIter c07cd3bfa8 Jean*0255 INTEGER selectCoriMap 0256 INTEGER selectSigmaCoord b69c172d01 Jean*0257 INTEGER nonlinFreeSurf 8cd260dad9 Jean*0258 INTEGER select_rStar 3fcd8a21e5 Jean*0259 INTEGER selectNHfreeSurf 6ef71429db Jean*0260 INTEGER selectP_inEOS_Zc f42dd9d11c Jean*0261 INTEGER selectAddFluid 7e00d7e8f9 Jean*0262 INTEGER selectBalanceEmPmR 05dafbe7c6 Jean*0263 INTEGER selectImplicitDrag c2b6ed6bfd Jean*0264 INTEGER momForcingOutAB, tracForcingOutAB 49efc6c1e0 Jean*0265 INTEGER tempAdvScheme, tempVertAdvScheme 0266 INTEGER saltAdvScheme, saltVertAdvScheme 7548b53ced Jean*0267 INTEGER selectKEscheme e35a804907 Jean*0268 INTEGER selectVortScheme 427e24e121 Jean*0269 INTEGER selectMetricTerms 7843dde2de jm-c 0270 INTEGER selectCoriScheme 427e24e121 Jean*0271 INTEGER select3dCoriScheme f9ef55fa0c Jean*0272 INTEGER selectBotDragQuadr d4bae8cf47 Jean*0273 INTEGER pCellMix_select a993440a55 Jean*0274 INTEGER readBinaryPrec 0275 INTEGER writeBinaryPrec 0276 INTEGER rwSuffixType 9f127ffcb6 Jean*0277 INTEGER monitorSelect 494ad43bae Patr*0278 INTEGER debugLevel 337b46d524 Jean*0279 INTEGER plotLevel 494ad43bae Patr*0280 924557e60a Chri*0281 C-- COMMON /PARM_L/ Logical valued parameters used by the model. e13269dd4b Jean*0282 C- Coordinate + Grid params: 0283 C fluidIsAir :: Set to indicate that the fluid major constituent 0097b465dd Jean*0284 C is air e13269dd4b Jean*0285 C fluidIsWater :: Set to indicate that the fluid major constituent 0097b465dd Jean*0286 C is water e13269dd4b Jean*0287 C usingPCoords :: Set to indicate that we are working in a pressure 0097b465dd Jean*0288 C type coordinate (p or p*). e13269dd4b Jean*0289 C usingZCoords :: Set to indicate that we are working in a height 0097b465dd Jean*0290 C type coordinate (z or z*) ac0f2a1690 Chri*0291 C usingCartesianGrid :: If TRUE grid generation will be in a cartesian 0097b465dd Jean*0292 C coordinate frame. f4e5ffc990 Jean*0293 C usingSphericalPolarGrid :: If TRUE grid generation will be in a 0097b465dd Jean*0294 C spherical polar frame. e13269dd4b Jean*0295 C rotateGrid :: rotate grid coordinates to geographical coordinates 0296 C according to Euler angles phiEuler, thetaEuler, psiEuler 0297 C usingCylindricalGrid :: If TRUE grid generation will be Cylindrical 7f7edb5ca4 Jean*0298 C usingCurvilinearGrid :: If TRUE, use a curvilinear grid (to be provided) 0299 C hasWetCSCorners :: domain contains CS-type corners where dynamics is solved 9c29d55c39 Jean*0300 C deepAtmosphere :: deep model (drop the shallow-atmosphere approximation) e13269dd4b Jean*0301 C setInterFDr :: set Interface depth (put cell-Center at the middle) 0302 C setCenterDr :: set cell-Center depth (put Interface at the middle) dd9374dd6b Jean*0303 C useMin4hFacEdges :: set hFacW,hFacS as minimum of adjacent hFacC factor d4bae8cf47 Jean*0304 C interViscAr_pCell :: account for partial-cell in interior vert. viscosity 0305 C interDiffKr_pCell :: account for partial-cell in interior vert. diffusion e13269dd4b Jean*0306 C- Momentum params: 0307 C no_slip_sides :: Impose "no-slip" at lateral boundaries. ac0f2a1690 Chri*0308 C no_slip_bottom :: Impose "no-slip" at bottom boundary. f9ef55fa0c Jean*0309 C bottomVisc_pCell :: account for partial-cell in bottom visc. (no-slip BC) acaad95e18 Jean*0310 C useSmag3D :: Use isotropic 3-D Smagorinsky e13269dd4b Jean*0311 C useFullLeith :: Set to true to use full Leith viscosity(may be unstable 0312 C on irregular grids) 0313 C useStrainTensionVisc:: Set to true to use Strain-Tension viscous terms 0314 C useAreaViscLength :: Set to true to use old scaling for viscous lengths, 0315 C e.g., L2=Raz. May be preferable for cube sphere. ac0f2a1690 Chri*0316 C momViscosity :: Flag which turns momentum friction terms on and off. 0317 C momAdvection :: Flag which turns advection of momentum on and off. 8e1649be57 Jean*0318 C momForcing :: Flag which turns external forcing of momentum on and off. 0319 C momTidalForcing :: Flag which turns tidal forcing on and off. ac0f2a1690 Chri*0320 C momPressureForcing :: Flag which turns pressure term in momentum equation cf8488c0fd Chri*0321 C on and off. 3362dfc756 Jean*0322 C useNHMTerms :: If TRUE use non-hydrostatic metric terms. ac0f2a1690 Chri*0323 C useCoriolis :: Flag which turns the coriolis terms on and off. e13269dd4b Jean*0324 C useCDscheme :: use CD-scheme to calculate Coriolis terms. 0325 C vectorInvariantMomentum :: use Vector-Invariant form (mom_vecinv package) 0326 C (default = F = use mom_fluxform package) 0327 C useJamartMomAdv :: Use wet-point method for V.I. non-linear term 0328 C upwindVorticity :: bias interpolation of vorticity in the Coriolis term 0329 C highOrderVorticity :: use 3rd/4th order interp. of vorticity (V.I., advection) 0330 C useAbsVorticity :: work with f+zeta in Coriolis terms 35c76859f0 Jean*0331 C upwindShear :: use 1rst order upwind interp. (V.I., vertical advection) e13269dd4b Jean*0332 C momStepping :: Turns momentum equation time-stepping off 35c76859f0 Jean*0333 C calc_wVelocity :: Turns vertical velocity calculation off e13269dd4b Jean*0334 C- Temp. & Salt params: 22dbc402ed Jean*0335 C tempStepping :: Turns temperature equation time-stepping on/off 0336 C saltStepping :: Turns salinity equation time-stepping on/off 0337 C addFrictionHeating :: account for frictional heating 46918f1b26 Jean*0338 C temp_stayPositive :: use Smolarkiewicz Hack to ensure Temp stays positive 0339 C salt_stayPositive :: use Smolarkiewicz Hack to ensure Salt stays positive e13269dd4b Jean*0340 C tempAdvection :: Flag which turns advection of temperature on and off. bf6138bedc Jean*0341 C tempVertDiff4 :: use vertical bi-harmonic diffusion for temperature e13269dd4b Jean*0342 C tempIsActiveTr :: Pot.Temp. is a dynamically active tracer 22dbc402ed Jean*0343 C tempForcing :: Flag which turns external forcing of temperature on/off e13269dd4b Jean*0344 C saltAdvection :: Flag which turns advection of salinity on and off. bf6138bedc Jean*0345 C saltVertDiff4 :: use vertical bi-harmonic diffusion for salinity e13269dd4b Jean*0346 C saltIsActiveTr :: Salinity is a dynamically active tracer 22dbc402ed Jean*0347 C saltForcing :: Flag which turns external forcing of salinity on/off 2d01527c7e Jean*0348 C maskIniTemp :: apply mask to initial Pot.Temp. 0349 C maskIniSalt :: apply mask to initial salinity 0350 C checkIniTemp :: check for points with identically zero initial Pot.Temp. 0351 C checkIniSalt :: check for points with identically zero initial salinity 23bce0bbb8 Mart*0352 C- Pressure solver related parameters (PARM02) aecc8b0f47 Mart*0353 C useNSACGSolver :: Set to true to use "not self-adjoint" conjugate 0354 C gradient solver that stores the iteration history 0355 C for an iterative adjoint as accuate as possible 23bce0bbb8 Mart*0356 C useSRCGSolver :: Set to true to use conjugate gradient 0357 C solver with single reduction (only one call of 0358 C s/r mpi_allreduce), default is false 0097b465dd Jean*0359 C- Time-stepping & free-surface params: ac0f2a1690 Chri*0360 C rigidLid :: Set to true to use rigid lid c6161be44c Jean*0361 C implicitFreeSurface :: Set to true to use implicit free surface 0097b465dd Jean*0362 C uniformLin_PhiSurf :: Set to true to use a uniform Bo_surf in the 0363 C linear relation Phi_surf = Bo_surf*eta 0364 C uniformFreeSurfLev :: TRUE if free-surface level-index is uniform (=1) ac0f2a1690 Chri*0365 C exactConserv :: Set to true to conserve exactly the total Volume 74c7704c2f Davi*0366 C linFSConserveTr :: Set to true to correct source/sink of tracer f4e5ffc990 Jean*0367 C at the surface due to Linear Free Surface 0097b465dd Jean*0368 C useRealFreshWaterFlux :: if True (=Natural BCS), treats P+R-E flux 0369 C as a real Fresh Water (=> changes the Sea Level) 0370 C if F, converts P+R-E to salt flux (no SL effect) 6ef71429db Jean*0371 C storePhiHyd4Phys :: store hydrostatic potential for use in Physics/EOS 0372 C this requires specific code for restart & exchange e13269dd4b Jean*0373 C quasiHydrostatic :: Using non-hydrostatic terms in hydrostatic algorithm 0374 C nonHydrostatic :: Using non-hydrostatic algorithm 0375 C use3Dsolver :: set to true to use 3-D pressure solver c6161be44c Jean*0376 C implicitIntGravWave :: treat Internal Gravity Wave implicitly e13269dd4b Jean*0377 C staggerTimeStep :: enable a Stagger time stepping U,V (& W) then T,S 35c76859f0 Jean*0378 C applyExchUV_early :: Apply EXCH to U,V earlier, just before integr_continuity 01b68e9f05 Jean*0379 C doResetHFactors :: Do reset thickness factors @ beginning of each time-step ac0f2a1690 Chri*0380 C implicitDiffusion :: Turns implicit vertical diffusion on 0381 C implicitViscosity :: Turns implicit vertical viscosity on f9ef55fa0c Jean*0382 C tempImplVertAdv :: Turns on implicit vertical advection for Temperature 0383 C saltImplVertAdv :: Turns on implicit vertical advection for Salinity 0384 C momImplVertAdv :: Turns on implicit vertical advection for Momentum 5aef30157d Jean*0385 C multiDimAdvection :: Flag that enable multi-dimension advection ffd0966f4f Jean*0386 C useMultiDimAdvec :: True if multi-dim advection is used at least once c2b6ed6bfd Jean*0387 C momDissip_In_AB :: if False, put Dissipation tendency contribution 2f6ccfd84c Jean*0388 C out off Adams-Bashforth time stepping. 0389 C doAB_onGtGs :: if the Adams-Bashforth time stepping is used, always 6d61b52b09 Jean*0390 C apply AB on tracer tendencies (rather than on Tracer) e13269dd4b Jean*0391 C- Other forcing params - 0392 C balanceQnet :: substract global mean of Qnet at every time step 0393 C balancePrintMean:: print substracted global means to STDOUT ac0f2a1690 Chri*0394 C doThetaClimRelax :: Set true if relaxation to temperature 42bd47f06f Chri*0395 C climatology is required. ac0f2a1690 Chri*0396 C doSaltClimRelax :: Set true if relaxation to salinity 42bd47f06f Chri*0397 C climatology is required. 9e3a303fa3 Gael*0398 C balanceThetaClimRelax :: substract global mean effect at every time step 0399 C balanceSaltClimRelax :: substract global mean effect at every time step e13269dd4b Jean*0400 C allowFreezing :: Allows surface water to freeze and form ice ac0f2a1690 Chri*0401 C periodicExternalForcing :: Set true if forcing is time-dependant e13269dd4b Jean*0402 C- I/O parameters - 59cf2de9a0 Jean*0403 C globalFiles :: Selects between "global" and "tiled" files. 0404 C On some platforms with MPI, option globalFiles is either 0405 C slow or does not work. Use useSingleCpuIO instead. 0406 C useSingleCpuIO :: moved to EEPARAMS.h e13269dd4b Jean*0407 C pickupStrictlyMatch :: check and stop if pickup-file do not stricly match 0408 C startFromPickupAB2 :: with AB-3 code, start from an AB-2 pickup 0409 C usePickupBeforeC54 :: start from old-pickup files, generated with code from 0410 C before checkpoint-54a, Jul 06, 2004. a30418b6b9 Ed H*0411 C pickup_write_mdsio :: use mdsio to write pickups 0412 C pickup_read_mdsio :: use mdsio to read pickups 0413 C pickup_write_immed :: echo the pickup immediately (for conversion) 8c73a5b228 Mart*0414 C writePickupAtEnd :: write pickup at the last timestep a30418b6b9 Ed H*0415 C timeave_mdsio :: use mdsio for timeave output 0416 C snapshot_mdsio :: use mdsio for "snapshot" (dumpfreq/diagfreq) output b6356366ca Ed H*0417 C monitor_stdio :: use stdio for monitor output f4e5ffc990 Jean*0418 C dumpInitAndLast :: dumps model state to files at Initial (nIter0) 82d0948361 Jean*0419 C & Last iteration, in addition multiple of dumpFreq iter. 279d6fcfb9 Mart*0420 e13269dd4b Jean*0421 COMMON /PARM_L/ 0422 & fluidIsAir, fluidIsWater, 6ef71429db Jean*0423 & usingPCoords, usingZCoords, e13269dd4b Jean*0424 & usingCartesianGrid, usingSphericalPolarGrid, rotateGrid, 7f7edb5ca4 Jean*0425 & usingCylindricalGrid, usingCurvilinearGrid, hasWetCSCorners, dd9374dd6b Jean*0426 & deepAtmosphere, setInterFDr, setCenterDr, useMin4hFacEdges, d4bae8cf47 Jean*0427 & interViscAr_pCell, interDiffKr_pCell, f9ef55fa0c Jean*0428 & no_slip_sides, no_slip_bottom, bottomVisc_pCell, useSmag3D, e13269dd4b Jean*0429 & useFullLeith, useStrainTensionVisc, useAreaViscLength, 8e1649be57 Jean*0430 & momViscosity, momAdvection, momForcing, momTidalForcing, 427e24e121 Jean*0431 & momPressureForcing, useNHMTerms, 0432 & useCoriolis, useCDscheme, vectorInvariantMomentum, 7843dde2de jm-c 0433 & useJamartMomAdv, upwindVorticity, highOrderVorticity, e13269dd4b Jean*0434 & useAbsVorticity, upwindShear, e2b579164c Jean*0435 & momStepping, calc_wVelocity, tempStepping, saltStepping, 46918f1b26 Jean*0436 & addFrictionHeating, temp_stayPositive, salt_stayPositive, bf6138bedc Jean*0437 & tempAdvection, tempVertDiff4, tempIsActiveTr, tempForcing, 0438 & saltAdvection, saltVertDiff4, saltIsActiveTr, saltForcing, 2d01527c7e Jean*0439 & maskIniTemp, maskIniSalt, checkIniTemp, checkIniSalt, aecc8b0f47 Mart*0440 & useNSACGSolver, useSRCGSolver, 0097b465dd Jean*0441 & rigidLid, implicitFreeSurface, 0442 & uniformLin_PhiSurf, uniformFreeSurfLev, 0443 & exactConserv, linFSConserveTr, useRealFreshWaterFlux, 6ef71429db Jean*0444 & storePhiHyd4Phys, quasiHydrostatic, nonHydrostatic, 0445 & use3Dsolver, implicitIntGravWave, staggerTimeStep, 35c76859f0 Jean*0446 & applyExchUV_early, doResetHFactors, 05dafbe7c6 Jean*0447 & implicitDiffusion, implicitViscosity, c0be2284a6 Jean*0448 & tempImplVertAdv, saltImplVertAdv, momImplVertAdv, 7548b53ced Jean*0449 & multiDimAdvection, useMultiDimAdvec, c2b6ed6bfd Jean*0450 & momDissip_In_AB, doAB_onGtGs, 7e00d7e8f9 Jean*0451 & balanceQnet, balancePrintMean, 9e3a303fa3 Gael*0452 & balanceThetaClimRelax, balanceSaltClimRelax, e13269dd4b Jean*0453 & doThetaClimRelax, doSaltClimRelax, e793395f17 Jean*0454 & allowFreezing, e13269dd4b Jean*0455 & periodicExternalForcing, 59cf2de9a0 Jean*0456 & globalFiles, f4e5ffc990 Jean*0457 & pickupStrictlyMatch, usePickupBeforeC54, startFromPickupAB2, a30418b6b9 Ed H*0458 & pickup_read_mdsio, pickup_write_mdsio, pickup_write_immed, 8c73a5b228 Mart*0459 & writePickupAtEnd, 9a87ea5e43 Ed H*0460 & timeave_mdsio, snapshot_mdsio, monitor_stdio, 337b46d524 Jean*0461 & outputTypesInclusive, dumpInitAndLast cdf6d093b9 Ed H*0462 e13269dd4b Jean*0463 LOGICAL fluidIsAir 0464 LOGICAL fluidIsWater 0465 LOGICAL usingPCoords 0466 LOGICAL usingZCoords 924557e60a Chri*0467 LOGICAL usingCartesianGrid e13269dd4b Jean*0468 LOGICAL usingSphericalPolarGrid, rotateGrid 0ac260a803 Andr*0469 LOGICAL usingCylindricalGrid 7f7edb5ca4 Jean*0470 LOGICAL usingCurvilinearGrid, hasWetCSCorners 9c29d55c39 Jean*0471 LOGICAL deepAtmosphere afed22d369 Jean*0472 LOGICAL setInterFDr 0473 LOGICAL setCenterDr dd9374dd6b Jean*0474 LOGICAL useMin4hFacEdges d4bae8cf47 Jean*0475 LOGICAL interViscAr_pCell 0476 LOGICAL interDiffKr_pCell 22dbc402ed Jean*0477 0127add478 Alis*0478 LOGICAL no_slip_sides 0479 LOGICAL no_slip_bottom f9ef55fa0c Jean*0480 LOGICAL bottomVisc_pCell acaad95e18 Jean*0481 LOGICAL useSmag3D 76099ab0aa Jean*0482 LOGICAL useFullLeith 0483 LOGICAL useStrainTensionVisc 0484 LOGICAL useAreaViscLength 924557e60a Chri*0485 LOGICAL momViscosity 0486 LOGICAL momAdvection 0487 LOGICAL momForcing 8e1649be57 Jean*0488 LOGICAL momTidalForcing cf8488c0fd Chri*0489 LOGICAL momPressureForcing 22dbc402ed Jean*0490 LOGICAL useNHMTerms 0491 924557e60a Chri*0492 LOGICAL useCoriolis 22dbc402ed Jean*0493 LOGICAL useCDscheme 66d5e1666c Alis*0494 LOGICAL vectorInvariantMomentum 22dbc402ed Jean*0495 LOGICAL useJamartMomAdv 0496 LOGICAL upwindVorticity 0497 LOGICAL highOrderVorticity 0498 LOGICAL useAbsVorticity 0499 LOGICAL upwindShear 0500 LOGICAL momStepping 0501 LOGICAL calc_wVelocity 0502 LOGICAL tempStepping 0503 LOGICAL saltStepping 0504 LOGICAL addFrictionHeating 46918f1b26 Jean*0505 LOGICAL temp_stayPositive 0506 LOGICAL salt_stayPositive 924557e60a Chri*0507 LOGICAL tempAdvection bf6138bedc Jean*0508 LOGICAL tempVertDiff4 aa2e39692e Jean*0509 LOGICAL tempIsActiveTr 924557e60a Chri*0510 LOGICAL tempForcing 0511 LOGICAL saltAdvection bf6138bedc Jean*0512 LOGICAL saltVertDiff4 aa2e39692e Jean*0513 LOGICAL saltIsActiveTr 924557e60a Chri*0514 LOGICAL saltForcing 2d01527c7e Jean*0515 LOGICAL maskIniTemp 0516 LOGICAL maskIniSalt 0517 LOGICAL checkIniTemp 0518 LOGICAL checkIniSalt aecc8b0f47 Mart*0519 LOGICAL useNSACGSolver 76099ab0aa Jean*0520 LOGICAL useSRCGSolver c0a4efc370 Chri*0521 LOGICAL rigidLid aea29c8517 Alis*0522 LOGICAL implicitFreeSurface 0097b465dd Jean*0523 LOGICAL uniformLin_PhiSurf 0524 LOGICAL uniformFreeSurfLev aea29c8517 Alis*0525 LOGICAL exactConserv 74c7704c2f Davi*0526 LOGICAL linFSConserveTr 0097b465dd Jean*0527 LOGICAL useRealFreshWaterFlux 6ef71429db Jean*0528 LOGICAL storePhiHyd4Phys e13269dd4b Jean*0529 LOGICAL quasiHydrostatic 0530 LOGICAL nonHydrostatic c82f753998 Jean*0531 LOGICAL use3Dsolver c6161be44c Jean*0532 LOGICAL implicitIntGravWave 0533 LOGICAL staggerTimeStep 35c76859f0 Jean*0534 LOGICAL applyExchUV_early 01b68e9f05 Jean*0535 LOGICAL doResetHFactors b5aba14e85 Alis*0536 LOGICAL implicitDiffusion ababcf8304 Alis*0537 LOGICAL implicitViscosity 7548b53ced Jean*0538 LOGICAL tempImplVertAdv 0539 LOGICAL saltImplVertAdv c0be2284a6 Jean*0540 LOGICAL momImplVertAdv 5aef30157d Jean*0541 LOGICAL multiDimAdvection ffd0966f4f Jean*0542 LOGICAL useMultiDimAdvec c2b6ed6bfd Jean*0543 LOGICAL momDissip_In_AB 2f6ccfd84c Jean*0544 LOGICAL doAB_onGtGs e13269dd4b Jean*0545 LOGICAL balanceQnet 0546 LOGICAL balancePrintMean 42bd47f06f Chri*0547 LOGICAL doThetaClimRelax 0548 LOGICAL doSaltClimRelax 9e3a303fa3 Gael*0549 LOGICAL balanceThetaClimRelax 0550 LOGICAL balanceSaltClimRelax e13269dd4b Jean*0551 LOGICAL allowFreezing 4edf45584c Alis*0552 LOGICAL periodicExternalForcing ab42872a05 Alis*0553 LOGICAL globalFiles f4e5ffc990 Jean*0554 LOGICAL pickupStrictlyMatch a1bffd2f2d Jean*0555 LOGICAL usePickupBeforeC54 001808f0de Jean*0556 LOGICAL startFromPickupAB2 a30418b6b9 Ed H*0557 LOGICAL pickup_read_mdsio, pickup_write_mdsio 8c73a5b228 Mart*0558 LOGICAL pickup_write_immed, writePickupAtEnd b6356366ca Ed H*0559 LOGICAL timeave_mdsio, snapshot_mdsio, monitor_stdio ff63a227b0 Ed H*0560 LOGICAL outputTypesInclusive e13269dd4b Jean*0561 LOGICAL dumpInitAndLast 924557e60a Chri*0562 0563 C-- COMMON /PARM_R/ "Real" valued parameters used by the model. fe587f155a Jean*0564 C cg2dTargetResidual e6e223b277 Jean*0565 C :: Target residual for cg2d solver ; no unit (RHS normalisation) aea29c8517 Alis*0566 C cg2dTargetResWunit e6e223b277 Jean*0567 C :: Target residual for cg2d solver ; W unit (No RHS normalisation) 46dc4f419b Chri*0568 C cg3dTargetResidual e6e223b277 Jean*0569 C :: Target residual for cg3d solver ; no unit (RHS normalisation) 0570 C cg3dTargetResWunit 0571 C :: Target residual for cg3d solver ; W unit (No RHS normalisation) ac0f2a1690 Chri*0572 C cg2dpcOffDFac :: Averaging weight for preconditioner off-diagonal. 66dc79a095 Chri*0573 C Note. 20th May 1998 0574 C I made a weird discovery! In the model paper we argue 0575 C for the form of the preconditioner used here ( see 0576 C A Finite-volume, Incompressible Navier-Stokes Model 0577 C ...., Marshall et. al ). The algebra gives a simple 0578 C 0.5 factor for the averaging of ac and aCw to get a 0579 C symmettric pre-conditioner. By using a factor of 0.51 0580 C i.e. scaling the off-diagonal terms in the 0581 C preconditioner down slightly I managed to get the 0582 C number of iterations for convergence in a test case to 0583 C drop form 192 -> 134! Need to investigate this further! 0584 C For now I have introduced a parameter cg2dpcOffDFac which 0585 C defaults to 0.51 but can be set at runtime. ac0f2a1690 Chri*0586 C delR :: Vertical grid spacing ( units of r ). c28ce1627a Jean*0587 C delRc :: Vertical grid spacing between cell centers (r unit). ac0f2a1690 Chri*0588 C delX :: Separation between cell faces (m) or (deg), depending 1e8bf13d3f Jean*0589 C delY on input flags. Note: moved to header file SET_GRID.h 9744e36521 Jean*0590 C xgOrigin :: Origin of the X-axis (Cartesian Grid) / Longitude of Western 0591 C :: most cell face (Lat-Lon grid) (Note: this is an "inert" 0592 C :: parameter but it makes geographical references simple.) 0593 C ygOrigin :: Origin of the Y-axis (Cartesian Grid) / Latitude of Southern 0594 C :: most face (Lat-Lon grid). 2ad79bdf32 Jean*0595 C rSphere :: Radius of sphere for a spherical polar grid ( m ). 0596 C recip_rSphere :: Reciprocal radius of sphere ( m^-1 ). 0597 C radius_fromHorizGrid :: sphere Radius of input horiz. grid (Curvilinear Grid) 0598 C seaLev_Z :: the reference height of sea-level (usually zero) 0599 C top_Pres :: pressure (P-Coords) or reference pressure (Z-Coords) at the top 6ef71429db Jean*0600 C rSigmaBnd :: vertical position (in r-unit) of r/sigma transition (Hybrid-Sigma) 0601 C gravity :: Acceleration due to constant gravity ( m/s^2 ) 0602 C recip_gravity :: Reciprocal gravity acceleration ( s^2/m ) aad87ebb4c Jean*0603 C gBaro :: Accel. due to gravity used in barotropic equation ( m/s^2 ) 6ef71429db Jean*0604 C gravFacC :: gravity factor (vs surf. gravity) vert. profile at cell-Center 0605 C gravFacF :: gravity factor (vs surf. gravity) vert. profile at cell-interF aad87ebb4c Jean*0606 C rhoNil :: Reference density for the linear equation of state 0607 C rhoConst :: Vertically constant reference density (Boussinesq) 6ef71429db Jean*0608 C rho1Ref :: reference vertical profile for density (anelastic) aad87ebb4c Jean*0609 C rhoFacC :: normalized (by rhoConst) reference density at cell-Center 0610 C rhoFacF :: normalized (by rhoConst) reference density at cell-interFace e305438401 Mart*0611 C rhoConstFresh :: Constant reference density for fresh water (rain) 6ef71429db Jean*0612 C thetaConst :: Constant reference for potential temperature aad87ebb4c Jean*0613 C tRef :: reference vertical profile for potential temperature 0614 C sRef :: reference vertical profile for salinity/specific humidity 5b172de0d2 Jean*0615 C rhoRef :: density vertical profile from (tRef,sRef) [kg/m^3] aad87ebb4c Jean*0616 C dBdrRef :: vertical gradient of reference buoyancy [(m/s/r)^2]: 0617 C :: z-coord: = N^2_ref = Brunt-Vaissala frequency [s^-2] 0618 C :: p-coord: = -(d.alpha/dp)_ref [(m^2.s/kg)^2] 5b172de0d2 Jean*0619 C surf_pRef :: surface reference pressure ( Pa ) 0620 C pRef4EOS :: reference pressure used in EOS (case selectP_inEOS_Zc=1) 0621 C phiRef :: reference potential (press/rho, geopot) profile (m^2/s^2) eba17c6dff Jean*0622 C rVel2wUnit :: units conversion factor (Non-Hydrostatic code), 0623 C :: from r-coordinate vertical velocity to vertical velocity [m/s]. 0624 C :: z-coord: = 1 ; p-coord: wSpeed [m/s] = rVel [Pa/s] * rVel2wUnit 0625 C wUnit2rVel :: units conversion factor (Non-Hydrostatic code), 0626 C :: from vertical velocity [m/s] to r-coordinate vertical velocity. 0627 C :: z-coord: = 1 ; p-coord: rVel [Pa/s] = wSpeed [m/s] * wUnit2rVel 5b172de0d2 Jean*0628 C rUnit2z :: units conversion factor (for ocean in P-coord, only fct of k), 0629 C :: from r-coordinate to z [m] (at level center): 0630 C :: z-coord: = 1 ; p-coord: dz [m] = dr [Pa] * rUnit2z 0631 C z2rUnit :: units conversion factor (for ocean in P-coord, only fct of k), 0632 C :: from z [m] to r-coordinate (at level center): 0633 C :: z-coord: = 1 ; p-coord: dr [Pa] = dz [m] * z2rUnit 599be48d9a Jean*0634 C mass2rUnit :: units conversion factor (surface forcing), 0635 C :: from mass per unit area [kg/m2] to vertical r-coordinate unit. 0636 C :: z-coord: = 1/rhoConst ( [kg/m2] / rho = [m] ) ; 0637 C :: p-coord: = gravity ( [kg/m2] * g = [Pa] ) ; 0638 C rUnit2mass :: units conversion factor (surface forcing), 0639 C :: from vertical r-coordinate unit to mass per unit area [kg/m2]. 0640 C :: z-coord: = rhoConst ( [m] * rho = [kg/m2] ) ; 0641 C :: p-coord: = 1/gravity ( [Pa] / g = [kg/m2] ) ; 0320e25227 Mart*0642 C sIceLoadFac:: factor to scale (and turn off) sIceLoad (sea-ice loading) 0643 C default = 1 9780090eaa Jean*0644 C f0 :: Reference coriolis parameter ( 1/s ) 0645 C ( Southern edge f for beta plane ) 0646 C beta :: df/dy ( s^-1.m^-1 ) c07cd3bfa8 Jean*0647 C fPrime :: Second Coriolis parameter ( 1/s ), related to Y-component 0648 C of rotation (reference value = 2.Omega.Cos(Phi)) 9780090eaa Jean*0649 C omega :: Angular velocity ( rad/s ) aa63d8425c Jean*0650 C rotationPeriod :: Rotation period (s) (= 2.pi/omega) 2d15ad3a83 Jean*0651 C viscArNr :: vertical profile of Eddy viscosity coeff. 0652 C for vertical mixing of momentum ( units of r^2/s ) 9780090eaa Jean*0653 C viscAh :: Eddy viscosity coeff. for mixing of 0654 C momentum laterally ( m^2/s ) 0655 C viscAhW :: Eddy viscosity coeff. for mixing of vertical 0656 C momentum laterally, no effect for hydrostatic acaad95e18 Jean*0657 C model, defaults to viscAhD if unset ( m^2/s ) 9780090eaa Jean*0658 C Not used if variable horiz. viscosity is used. 0659 C viscA4 :: Biharmonic viscosity coeff. for mixing of 0660 C momentum laterally ( m^4/s ) 0661 C viscA4W :: Biharmonic viscosity coeff. for mixing of vertical 0662 C momentum laterally, no effect for hydrostatic acaad95e18 Jean*0663 C model, defaults to viscA4D if unset ( m^2/s ) 9780090eaa Jean*0664 C Not used if variable horiz. viscosity is used. 0665 C viscAhD :: Eddy viscosity coeff. for mixing of momentum laterally 0666 C (act on Divergence part) ( m^2/s ) 0667 C viscAhZ :: Eddy viscosity coeff. for mixing of momentum laterally 0668 C (act on Vorticity part) ( m^2/s ) 0669 C viscA4D :: Biharmonic viscosity coeff. for mixing of momentum laterally 0670 C (act on Divergence part) ( m^4/s ) 0671 C viscA4Z :: Biharmonic viscosity coeff. for mixing of momentum laterally 0672 C (act on Vorticity part) ( m^4/s ) 2d5bb917cc Jean*0673 C smag3D_coeff :: Isotropic 3-D Smagorinsky viscosity coefficient (-) 0674 C smag3D_diffCoeff :: Isotropic 3-D Smagorinsky diffusivity coefficient (-) e35a804907 Jean*0675 C viscC2leith :: Leith non-dimensional viscosity factor (grad(vort)) 1e9e8678dd Bayl*0676 C viscC2leithD :: Modified Leith non-dimensional visc. factor (grad(div)) f59d76b0dd Ed D*0677 C viscC2LeithQG:: QG Leith non-dimensional viscosity factor e35a804907 Jean*0678 C viscC4leith :: Leith non-dimensional viscosity factor (grad(vort)) 0679 C viscC4leithD :: Modified Leith non-dimensional viscosity factor (grad(div)) 0680 C viscC2smag :: Smagorinsky non-dimensional viscosity factor (harmonic) 0681 C viscC4smag :: Smagorinsky non-dimensional viscosity factor (biharmonic) 0682 C viscAhMax :: Maximum eddy viscosity coeff. for mixing of 0683 C momentum laterally ( m^2/s ) 0684 C viscAhReMax :: Maximum gridscale Reynolds number for eddy viscosity 0685 C coeff. for mixing of momentum laterally (non-dim) 0686 C viscAhGrid :: non-dimensional grid-size dependent viscosity 8f106aecfd Bayl*0687 C viscAhGridMax:: maximum and minimum harmonic viscosity coefficients ... 1e9e8678dd Bayl*0688 C viscAhGridMin:: in terms of non-dimensional grid-size dependent visc. e35a804907 Jean*0689 C viscA4Max :: Maximum biharmonic viscosity coeff. for mixing of 0690 C momentum laterally ( m^4/s ) 0691 C viscA4ReMax :: Maximum Gridscale Reynolds number for 0692 C biharmonic viscosity coeff. momentum laterally (non-dim) 0693 C viscA4Grid :: non-dimensional grid-size dependent bi-harmonic viscosity 070e727a0d Dimi*0694 C viscA4GridMax:: maximum and minimum biharmonic viscosity coefficients ... 0695 C viscA4GridMin:: in terms of non-dimensional grid-size dependent viscosity ac0f2a1690 Chri*0696 C diffKhT :: Laplacian diffusion coeff. for mixing of 924557e60a Chri*0697 C heat laterally ( m^2/s ) ac0f2a1690 Chri*0698 C diffK4T :: Biharmonic diffusion coeff. for mixing of 924557e60a Chri*0699 C heat laterally ( m^4/s ) bf6138bedc Jean*0700 C diffKrNrT :: vertical profile of Laplacian diffusion coeff. 0701 C for mixing of heat vertically ( units of r^2/s ) 0702 C diffKr4T :: vertical profile of Biharmonic diffusion coeff. 0703 C for mixing of heat vertically ( units of r^4/s ) ac0f2a1690 Chri*0704 C diffKhS :: Laplacian diffusion coeff. for mixing of 924557e60a Chri*0705 C salt laterally ( m^2/s ) ac0f2a1690 Chri*0706 C diffK4S :: Biharmonic diffusion coeff. for mixing of 924557e60a Chri*0707 C salt laterally ( m^4/s ) bf6138bedc Jean*0708 C diffKrNrS :: vertical profile of Laplacian diffusion coeff. 0709 C for mixing of salt vertically ( units of r^2/s ), 0710 C diffKr4S :: vertical profile of Biharmonic diffusion coeff. 0711 C for mixing of salt vertically ( units of r^4/s ) 19ec94aecc Alis*0712 C diffKrBL79surf :: T/S surface diffusivity (m^2/s) Bryan and Lewis, 1979 0713 C diffKrBL79deep :: T/S deep diffusivity (m^2/s) Bryan and Lewis, 1979 0714 C diffKrBL79scl :: depth scale for arctan fn (m) Bryan and Lewis, 1979 0715 C diffKrBL79Ho :: depth offset for arctan fn (m) Bryan and Lewis, 1979 e40c34e398 Dimi*0716 C BL79LatVary :: polarwise of this latitude diffKrBL79 is applied with 0717 C gradual transition to diffKrBLEQ towards Equator 0718 C diffKrBLEQsurf :: same as diffKrBL79surf but at Equator 0719 C diffKrBLEQdeep :: same as diffKrBL79deep but at Equator 0720 C diffKrBLEQscl :: same as diffKrBL79scl but at Equator 0721 C diffKrBLEQHo :: same as diffKrBL79Ho but at Equator d4bae8cf47 Jean*0722 C pCellMix_maxFac :: maximum enhanced mixing factor for thin partial-cell 0723 C pCellMix_delR :: thickness criteria for too thin partial-cell 0724 C pCellMix_viscAr :: vertical viscosity for too thin partial-cell 0725 C pCellMix_diffKr :: vertical diffusivity for too thin partial-cell ac0f2a1690 Chri*0726 C deltaT :: Default timestep ( s ) 0727 C deltaTClock :: Timestep used as model "clock". This determines the 66dc79a095 Chri*0728 C IO frequencies and is used in tagging output. It can 0729 C be totally different to the dynamical time. Typically 0730 C it will be the deep-water timestep for accelerated runs. 0731 C Frequency of checkpointing and dumping of the model state 0732 C are referenced to this clock. ( s ) ac0f2a1690 Chri*0733 C deltaTMom :: Timestep for momemtum equations ( s ) 062a876ce5 Jean*0734 C dTtracerLev :: Timestep for tracer equations ( s ), function of level k 22dbc402ed Jean*0735 C deltaTFreeSurf :: Timestep for free-surface equation ( s ) 0097b465dd Jean*0736 C freeSurfFac :: Parameter to turn implicit free surface term on or off 0737 C freeSurFac = 1. uses implicit free surface 0738 C freeSurFac = 0. uses rigid lid 001808f0de Jean*0739 C abEps :: Adams-Bashforth-2 stabilizing weight 0740 C alph_AB :: Adams-Bashforth-3 primary factor 0741 C beta_AB :: Adams-Bashforth-3 secondary factor ac0f2a1690 Chri*0742 C implicSurfPress :: parameter of the Crank-Nickelson time stepping : e5f0f23b70 Jean*0743 C Implicit part of Surface Pressure Gradient ( 0-1 ) 05dafbe7c6 Jean*0744 C implicDiv2DFlow :: parameter of the Crank-Nickelson time stepping : e5f0f23b70 Jean*0745 C Implicit part of barotropic flow Divergence ( 0-1 ) 9f72978e70 Jean*0746 C implicitNHPress :: parameter of the Crank-Nickelson time stepping : 0747 C Implicit part of Non-Hydrostatic Pressure Gradient ( 0-1 ) ac0f2a1690 Chri*0748 C hFacMin :: Minimum fraction size of a cell (affects hFacC etc...) e2bc96a5d1 Jean*0749 C hFacMinDz :: Minimum dimensional size of a cell (affects hFacC etc..., m) 0750 C hFacMinDp :: Minimum dimensional size of a cell (affects hFacC etc..., Pa) 0751 C hFacMinDr :: Minimum dimensional size of a cell (-> hFacC etc..., r units) ac0f2a1690 Chri*0752 C hFacInf :: Threshold (inf and sup) for fraction size of surface cell e2bc96a5d1 Jean*0753 C hFacSup that control vanishing and creating levels 0754 C tauCD :: CD scheme coupling timescale ( s ) 0755 C rCD :: CD scheme normalised coupling parameter (= 1 - deltaT/tauCD) 0756 C epsAB_CD :: Adams-Bashforth-2 stabilizing weight used in CD scheme 873c307f71 Jean*0757 C baseTime :: model base time (time origin) = time @ iteration zero ac0f2a1690 Chri*0758 C startTime :: Starting time for this integration ( s ). 0759 C endTime :: Ending time for this integration ( s ). 0760 C chkPtFreq :: Frequency of rolling check pointing ( s ). 0761 C pChkPtFreq :: Frequency of permanent check pointing ( s ). 0762 C dumpFreq :: Frequency with which model state is written to 0097b465dd Jean*0763 C post-processing files ( s ). ac0f2a1690 Chri*0764 C diagFreq :: Frequency with which model writes diagnostic output 0097b465dd Jean*0765 C of intermediate quantities. 427e24e121 Jean*0766 C afFacMom :: Advection of momentum term multiplication factor 0767 C vfFacMom :: Momentum viscosity term multiplication factor 0768 C pfFacMom :: Momentum pressure forcing multiplication factor 0769 C cfFacMom :: Coriolis term multiplication factor 0770 C foFacMom :: Momentum forcing multiplication factor 0771 C mtFacMom :: Metric terms multiplication factor ac0f2a1690 Chri*0772 C cosPower :: Power of cosine of latitude to multiply viscosity 0773 C cAdjFreq :: Frequency of convective adjustment 15e8c0c8ad Chri*0774 C e35a804907 Jean*0775 C taveFreq :: Frequency with which time-averaged model state 9800a0be87 Jean*0776 C is written to post-processing files ( s ). e35a804907 Jean*0777 C tave_lastIter :: (for state variable only) fraction of the last time 0778 C step (of each taveFreq period) put in the time average. 9800a0be87 Jean*0779 C (fraction for 1rst iter = 1 - tave_lastIter) ac0f2a1690 Chri*0780 C tauThetaClimRelax :: Relaxation to climatology time scale ( s ). 0781 C tauSaltClimRelax :: Relaxation to climatology time scale ( s ). 36b12bb7ff Jean*0782 C latBandClimRelax :: latitude band where Relaxation to Clim. is applied, 0783 C i.e. where |yC| <= latBandClimRelax ac0f2a1690 Chri*0784 C externForcingPeriod :: Is the period of which forcing varies (eg. 1 month) 0785 C externForcingCycle :: Is the repeat time of the forcing (eg. 1 year) 4edf45584c Alis*0786 C (note: externForcingCycle must be an integer 0787 C number times externForcingPeriod) ea4246aae8 Jean*0788 C convertFW2Salt :: salinity, used to convert Fresh-Water Flux to Salt Flux 0789 C (use model surface (local) value if set to -1) e35a804907 Jean*0790 C temp_EvPrRn :: temperature of Rain & Evap. ea4246aae8 Jean*0791 C salt_EvPrRn :: salinity of Rain & Evap. 427e24e121 Jean*0792 C temp_addMass :: temperature of addMass field 0793 C salt_addMass :: salinity of addMass field e35a804907 Jean*0794 C (notes: a) tracer content of Rain/Evap only used if both ea4246aae8 Jean*0795 C NonLin_FrSurf & useRealFreshWater are set. 0796 C b) use model surface (local) value if set to UNSET_RL) 7c01d59526 Davi*0797 C hMixCriteria:: criteria for mixed-layer diagnostic 0798 C dRhoSmall :: parameter for mixed-layer diagnostic ab47de63dc Mart*0799 C hMixSmooth :: Smoothing parameter for mixed-layer diag 0800 C (default=0: no smoothing) dcd7aba685 Jean*0801 C ivdc_kappa :: implicit vertical diffusivity for convection [m^2/s] e35a804907 Jean*0802 C sideDragFactor :: side-drag scaling factor (used only if no_slip_sides) f4b9df5e2d Jean*0803 C (default=2: full drag ; =1: gives half-slip BC) 01c16836c5 Jean*0804 C bottomDragLinear :: Linear bottom-drag coefficient (units of [r]/s) 0805 C bottomDragQuadratic :: Quadratic bottom-drag coefficient (units of [r]/m) 0806 C (if using zcoordinate, units becomes linear: m/s, quadratic: [-]) ab47de63dc Mart*0807 C zRoughBot :: roughness length for quadratic bottom friction coefficient 0808 C (in m, typical values are order 0.01 m) 616600b8d2 Patr*0809 C smoothAbsFuncRange :: 1/2 of interval around zero, for which FORTRAN ABS 0810 C is to be replace by a smoother function 0811 C (affects myabs, mymin, mymax) ab47de63dc Mart*0812 C nh_Am2 :: scales non-hydrostatic terms and changes internal scales f4b9df5e2d Jean*0813 C (i.e. allows convection at different Rayleigh numbers) 22dbc402ed Jean*0814 C tCylIn :: Temperature of the cylinder inner boundary 0815 C tCylOut :: Temperature of the cylinder outer boundary 7514c1bd55 Mart*0816 C phiEuler :: Euler angle, rotation about original z-axis 0817 C thetaEuler :: Euler angle, rotation about new x-axis 0818 C psiEuler :: Euler angle, rotation about new z-axis 7548b53ced Jean*0819 COMMON /PARM_R/ cg2dTargetResidual, cg2dTargetResWunit, e6e223b277 Jean*0820 & cg2dpcOffDFac, cg3dTargetResidual, cg3dTargetResWunit, 2ad79bdf32 Jean*0821 & delR, delRc, xgOrigin, ygOrigin, rSphere, recip_rSphere, 0822 & radius_fromHorizGrid, seaLev_Z, top_Pres, rSigmaBnd, 22dbc402ed Jean*0823 & deltaT, deltaTMom, dTtracerLev, deltaTFreeSurf, deltaTClock, 001808f0de Jean*0824 & abEps, alph_AB, beta_AB, c07cd3bfa8 Jean*0825 & f0, beta, fPrime, omega, rotationPeriod, 2d5bb917cc Jean*0826 & viscFacAdj, viscAh, viscAhW, smag3D_coeff, smag3D_diffCoeff, acaad95e18 Jean*0827 & viscAhMax, viscAhGrid, viscAhGridMax, viscAhGridMin, f59d76b0dd Ed D*0828 & viscC2leith, viscC2leithD, viscC2LeithQG, fb933c6516 Bayl*0829 & viscC2smag, viscC4smag, 915a82d1f5 Jean*0830 & viscAhD, viscAhZ, viscA4D, viscA4Z, e35a804907 Jean*0831 & viscA4, viscA4W, viscA4Max, 0832 & viscA4Grid, viscA4GridMax, viscA4GridMin, 0833 & viscAhReMax, viscA4ReMax, 2d15ad3a83 Jean*0834 & viscC4leith, viscC4leithD, viscArNr, bf6138bedc Jean*0835 & diffKhT, diffK4T, diffKrNrT, diffKr4T, 0836 & diffKhS, diffK4S, diffKrNrS, diffKr4S, 19ec94aecc Alis*0837 & diffKrBL79surf, diffKrBL79deep, diffKrBL79scl, diffKrBL79Ho, e40c34e398 Dimi*0838 & BL79LatVary, 0aefc24df1 Dimi*0839 & diffKrBLEQsurf, diffKrBLEQdeep, diffKrBLEQscl, diffKrBLEQHo, d4bae8cf47 Jean*0840 & pCellMix_maxFac, pCellMix_delR, pCellMix_viscAr, pCellMix_diffKr, e2bc96a5d1 Jean*0841 & tauCD, rCD, epsAB_CD, 05dafbe7c6 Jean*0842 & freeSurfFac, implicSurfPress, implicDiv2DFlow, implicitNHPress, aea29c8517 Alis*0843 & hFacMin, hFacMinDz, hFacInf, hFacSup, 599be48d9a Jean*0844 & gravity, recip_gravity, gBaro, 6ef71429db Jean*0845 & gravFacC, recip_gravFacC, gravFacF, recip_gravFacF, 0846 & rhoNil, rhoConst, recip_rhoConst, rho1Ref, 0847 & rhoFacC, recip_rhoFacC, rhoFacF, recip_rhoFacF, rhoConstFresh, 5b172de0d2 Jean*0848 & thetaConst, tRef, sRef, rhoRef, dBdrRef, 0849 & surf_pRef, pRef4EOS, phiRef, 0850 & rVel2wUnit, wUnit2rVel, rUnit2z, z2rUnit, mass2rUnit, rUnit2mass, 7548b53ced Jean*0851 & baseTime, startTime, endTime, 0852 & chkPtFreq, pChkPtFreq, dumpFreq, adjDumpFreq, dd069a2c40 Patr*0853 & diagFreq, taveFreq, tave_lastIter, monitorFreq, adjMonitorFreq, b05b067368 Chri*0854 & afFacMom, vfFacMom, pfFacMom, cfFacMom, foFacMom, mtFacMom, c07cd3bfa8 Jean*0855 & cosPower, cAdjFreq, e13269dd4b Jean*0856 & tauThetaClimRelax, tauSaltClimRelax, latBandClimRelax, b915494633 Chri*0857 & externForcingCycle, externForcingPeriod, acf54afd9e Jean*0858 & convertFW2Salt, temp_EvPrRn, salt_EvPrRn, 80d98e0151 Dimi*0859 & temp_addMass, salt_addMass, hFacMinDr, hFacMinDp, f15994caab Jean*0860 & ivdc_kappa, hMixCriteria, dRhoSmall, hMixSmooth, ab47de63dc Mart*0861 & sideDragFactor, bottomDragLinear, bottomDragQuadratic, 0862 & zRoughBot, nh_Am2, smoothAbsFuncRange, sIceLoadFac, 7514c1bd55 Mart*0863 & tCylIn, tCylOut, 0864 & phiEuler, thetaEuler, psiEuler b915494633 Chri*0865 4e41eecc46 Alis*0866 _RL cg2dTargetResidual aea29c8517 Alis*0867 _RL cg2dTargetResWunit 46dc4f419b Chri*0868 _RL cg3dTargetResidual e6e223b277 Jean*0869 _RL cg3dTargetResWunit 66dc79a095 Chri*0870 _RL cg2dpcOffDFac 3d6b649e23 Chri*0871 _RL delR(Nr) c28ce1627a Jean*0872 _RL delRc(Nr+1) 9744e36521 Jean*0873 _RL xgOrigin 0874 _RL ygOrigin 2ad79bdf32 Jean*0875 _RL rSphere 0876 _RL recip_rSphere 0877 _RL radius_fromHorizGrid 0878 _RL seaLev_Z 0879 _RL top_Pres 6ef71429db Jean*0880 _RL rSigmaBnd 4e41eecc46 Alis*0881 _RL deltaT 66dc79a095 Chri*0882 _RL deltaTClock 22dbc402ed Jean*0883 _RL deltaTMom 062a876ce5 Jean*0884 _RL dTtracerLev(Nr) 22dbc402ed Jean*0885 _RL deltaTFreeSurf 001808f0de Jean*0886 _RL abEps, alph_AB, beta_AB 4e41eecc46 Alis*0887 _RL f0 c07cd3bfa8 Jean*0888 _RL beta 0889 _RL fPrime 0890 _RL omega 0891 _RL rotationPeriod c0a4efc370 Chri*0892 _RL freeSurfFac e5f0f23b70 Jean*0893 _RL implicSurfPress 05dafbe7c6 Jean*0894 _RL implicDiv2DFlow 9f72978e70 Jean*0895 _RL implicitNHPress 174c27c489 Alis*0896 _RL hFacMin 0897 _RL hFacMinDz 910f05e765 Chri*0898 _RL hFacMinDp b915494633 Chri*0899 _RL hFacMinDr aea29c8517 Alis*0900 _RL hFacInf 0901 _RL hFacSup 2d15ad3a83 Jean*0902 _RL viscArNr(Nr) ff0e47a5e6 Patr*0903 _RL viscFacAdj 4e41eecc46 Alis*0904 _RL viscAh 6deb815953 Mart*0905 _RL viscAhW 915a82d1f5 Jean*0906 _RL viscAhD 0907 _RL viscAhZ 2d5bb917cc Jean*0908 _RL smag3D_coeff, smag3D_diffCoeff 396048594e Alis*0909 _RL viscAhMax 1e9e8678dd Bayl*0910 _RL viscAhReMax e35a804907 Jean*0911 _RL viscAhGrid, viscAhGridMax, viscAhGridMin e46ec53fc5 Alis*0912 _RL viscC2leith 8f106aecfd Bayl*0913 _RL viscC2leithD f59d76b0dd Ed D*0914 _RL viscC2LeithQG f293e6030b Bayl*0915 _RL viscC2smag 7548b53ced Jean*0916 _RL viscA4 0b6cbae535 Mart*0917 _RL viscA4W 915a82d1f5 Jean*0918 _RL viscA4D 0919 _RL viscA4Z 396048594e Alis*0920 _RL viscA4Max 1e9e8678dd Bayl*0921 _RL viscA4ReMax 070e727a0d Dimi*0922 _RL viscA4Grid, viscA4GridMax, viscA4GridMin e46ec53fc5 Alis*0923 _RL viscC4leith 8f106aecfd Bayl*0924 _RL viscC4leithD e35a804907 Jean*0925 _RL viscC4smag 7548b53ced Jean*0926 _RL diffKhT 0927 _RL diffK4T bf6138bedc Jean*0928 _RL diffKrNrT(Nr) 0929 _RL diffKr4T(Nr) 7548b53ced Jean*0930 _RL diffKhS 0931 _RL diffK4S bf6138bedc Jean*0932 _RL diffKrNrS(Nr) 0933 _RL diffKr4S(Nr) 19ec94aecc Alis*0934 _RL diffKrBL79surf 0935 _RL diffKrBL79deep 0936 _RL diffKrBL79scl 0937 _RL diffKrBL79Ho e40c34e398 Dimi*0938 _RL BL79LatVary 0aefc24df1 Dimi*0939 _RL diffKrBLEQsurf 0940 _RL diffKrBLEQdeep 0941 _RL diffKrBLEQscl 0942 _RL diffKrBLEQHo d4bae8cf47 Jean*0943 _RL pCellMix_maxFac 0944 _RL pCellMix_delR 0945 _RL pCellMix_viscAr(Nr) 0946 _RL pCellMix_diffKr(Nr) e2bc96a5d1 Jean*0947 _RL tauCD, rCD, epsAB_CD 6ef71429db Jean*0948 _RL gravity, recip_gravity c0a4efc370 Chri*0949 _RL gBaro 6ef71429db Jean*0950 _RL gravFacC(Nr), recip_gravFacC(Nr) 0951 _RL gravFacF(Nr+1), recip_gravFacF(Nr+1) d22f79dd46 Jean*0952 _RL rhoNil afed22d369 Jean*0953 _RL rhoConst, recip_rhoConst 6ef71429db Jean*0954 _RL rho1Ref(Nr) afed22d369 Jean*0955 _RL rhoFacC(Nr), recip_rhoFacC(Nr) 0956 _RL rhoFacF(Nr+1), recip_rhoFacF(Nr+1) e305438401 Mart*0957 _RL rhoConstFresh 6ef71429db Jean*0958 _RL thetaConst 3d6b649e23 Chri*0959 _RL tRef(Nr) 0960 _RL sRef(Nr) 5b172de0d2 Jean*0961 _RL rhoRef(Nr) 0962 _RL dBdrRef(Nr) 0bfef71ac3 Jean*0963 _RL surf_pRef, pRef4EOS(Nr) d72f51c392 Jean*0964 _RL phiRef(2*Nr+1) eba17c6dff Jean*0965 _RL rVel2wUnit(Nr+1), wUnit2rVel(Nr+1) 5b172de0d2 Jean*0966 _RL rUnit2z(Nr), z2rUnit(Nr) 599be48d9a Jean*0967 _RL mass2rUnit, rUnit2mass 873c307f71 Jean*0968 _RL baseTime 4e41eecc46 Alis*0969 _RL startTime 0970 _RL endTime 0971 _RL chkPtFreq 66dc79a095 Chri*0972 _RL pChkPtFreq 4e41eecc46 Alis*0973 _RL dumpFreq ea0f79f160 Patr*0974 _RL adjDumpFreq 3a279374db Alis*0975 _RL diagFreq c0c3fe12e2 Alis*0976 _RL taveFreq 9800a0be87 Jean*0977 _RL tave_lastIter dc684458c1 Alis*0978 _RL monitorFreq dd069a2c40 Patr*0979 _RL adjMonitorFreq cf8488c0fd Chri*0980 _RL afFacMom 0981 _RL vfFacMom 0982 _RL pfFacMom 0983 _RL cfFacMom 0984 _RL foFacMom 3362dfc756 Jean*0985 _RL mtFacMom d61b70ab90 Alis*0986 _RL cosPower cf8488c0fd Chri*0987 _RL cAdjFreq 42bd47f06f Chri*0988 _RL tauThetaClimRelax 0989 _RL tauSaltClimRelax 36b12bb7ff Jean*0990 _RL latBandClimRelax 4edf45584c Alis*0991 _RL externForcingCycle 0992 _RL externForcingPeriod ea4246aae8 Jean*0993 _RL convertFW2Salt 0994 _RL temp_EvPrRn 0995 _RL salt_EvPrRn 80d98e0151 Dimi*0996 _RL temp_addMass 0997 _RL salt_addMass d4701cb6da Alis*0998 _RL ivdc_kappa dcd7aba685 Jean*0999 _RL hMixCriteria 7c01d59526 Davi*1000 _RL dRhoSmall d1b0368d70 Davi*1001 _RL hMixSmooth f4b9df5e2d Jean*1002 _RL sideDragFactor fb481a83c2 Alis*1003 _RL bottomDragLinear 1004 _RL bottomDragQuadratic ab47de63dc Mart*1005 _RL zRoughBot 616600b8d2 Patr*1006 _RL smoothAbsFuncRange 0320e25227 Mart*1007 _RL sIceLoadFac f4b9df5e2d Jean*1008 _RL nh_Am2 22dbc402ed Jean*1009 _RL tCylIn, tCylOut 7514c1bd55 Mart*1010 _RL phiEuler, thetaEuler, psiEuler 4e41eecc46 Alis*1011 c95709dc6d Jean*1012 C-- COMMON /PARM_A/ Thermodynamics constants ? aad87ebb4c Jean*1013 COMMON /PARM_A/ HeatCapacity_Cp 4e41eecc46 Alis*1014 _RL HeatCapacity_Cp 3a4fdb21a1 Alis*1015 c95709dc6d Jean*1016 C-- COMMON /PARM_ATM/ Atmospheric physical parameters (Ideal Gas EOS, ...) 1017 C celsius2K :: convert centigrade (Celsius) degree to Kelvin be72675163 Jean*1018 C atm_Po :: standard reference pressure 1019 C atm_Cp :: specific heat (Cp) of the (dry) air at constant pressure 1020 C atm_Rd :: gas constant for dry air ac0f2a1690 Chri*1021 C atm_kappa :: kappa = R/Cp (R: constant of Ideal Gas EOS) 1aedd07e9b Jean*1022 C atm_Rq :: water vapour specific volume anomaly relative to dry air 1023 C (e.g. typical value = (29/18 -1) 10^-3 with q [g/kg]) be72675163 Jean*1024 C integr_GeoPot :: option to select the way we integrate the geopotential e35a804907 Jean*1025 C (still a subject of discussions ...) be72675163 Jean*1026 C selectFindRoSurf :: select the way surf. ref. pressure (=Ro_surf) is 1027 C derived from the orography. Implemented: 0,1 (see INI_P_GROUND) 7548b53ced Jean*1028 COMMON /PARM_ATM/ c95709dc6d Jean*1029 & celsius2K, 1aedd07e9b Jean*1030 & atm_Cp, atm_Rd, atm_kappa, atm_Rq, atm_Po, c95709dc6d Jean*1031 & integr_GeoPot, selectFindRoSurf 1032 _RL celsius2K 1aedd07e9b Jean*1033 _RL atm_Po, atm_Cp, atm_Rd, atm_kappa, atm_Rq be72675163 Jean*1034 INTEGER integr_GeoPot, selectFindRoSurf b69c172d01 Jean*1035 427e24e121 Jean*1036 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| d4bae8cf47 Jean*1037 C-- Logical flags for selecting packages 65594b9008 Jean*1038 LOGICAL useGAD 1039 LOGICAL useOBCS 1040 LOGICAL useSHAP_FILT 1041 LOGICAL useZONAL_FILT 69a7b27187 Mart*1042 LOGICAL useOPPS 830fad566b Mart*1043 LOGICAL usePP81 d8d1486ca1 Jean*1044 LOGICAL useKL10 830fad566b Mart*1045 LOGICAL useMY82 69a7b27187 Mart*1046 LOGICAL useGGL90 de6e9ab483 Patr*1047 LOGICAL useKPP 1048 LOGICAL useGMRedi 65594b9008 Jean*1049 LOGICAL useDOWN_SLOPE 15338fa568 Dimi*1050 LOGICAL useBBL 7548b53ced Jean*1051 LOGICAL useCAL 1052 LOGICAL useEXF 65594b9008 Jean*1053 LOGICAL useBulkForce 7548b53ced Jean*1054 LOGICAL useEBM 65594b9008 Jean*1055 LOGICAL useCheapAML ea7d076e20 Gael*1056 LOGICAL useAUTODIFF 41794ec014 Patr*1057 LOGICAL useGrdchk e2bc96a5d1 Jean*1058 LOGICAL useSMOOTH e994210c2e Gael*1059 LOGICAL usePROFILES de6e9ab483 Patr*1060 LOGICAL useECCO e2bbdfe9d8 Gael*1061 LOGICAL useCTRL 65594b9008 Jean*1062 LOGICAL useSBO c806179eb4 Alis*1063 LOGICAL useFLT 5c43c390b6 Alis*1064 LOGICAL usePTRACERS 0a90236bb2 Mart*1065 LOGICAL useGCHEM aad15a16e0 Step*1066 LOGICAL useRBCS 273603bbbc Jean*1067 LOGICAL useOffLine 7548b53ced Jean*1068 LOGICAL useMATRIX e0b3e1bdd8 Dimi*1069 LOGICAL useFRAZIL 5ee2971ab8 Patr*1070 LOGICAL useSEAICE 65594b9008 Jean*1071 LOGICAL useSALT_PLUME 420f1345d9 Mart*1072 LOGICAL useShelfIce 00f81e6785 Ou W*1073 LOGICAL useSTIC 5d210a8dab Patr*1074 LOGICAL useStreamIce 5da8ce63fa Dimi*1075 LOGICAL useICEFRONT 4df1d791de Jean*1076 LOGICAL useThSIce 9042972bc7 Jean*1077 LOGICAL useLand 30f180d597 Jeff*1078 LOGICAL useATM2d 65594b9008 Jean*1079 LOGICAL useAIM 9042972bc7 Jean*1080 LOGICAL useAtm_Phys 65594b9008 Jean*1081 LOGICAL useFizhi 1082 LOGICAL useGridAlt 46979d29da Jean*1083 LOGICAL useDiagnostics 39cebd8084 Ed H*1084 LOGICAL useREGRID 68fac71428 Ryan*1085 LOGICAL useLayers 65594b9008 Jean*1086 LOGICAL useMNC 1eeb28fe07 Alis*1087 LOGICAL useRunClock 0ee646bca5 Ed H*1088 LOGICAL useEMBED_FILES 0dc94a8572 Patr*1089 LOGICAL useMYPACKAGE f55100cf63 Alis*1090 COMMON /PARM_PACKAGES/ 65594b9008 Jean*1091 & useGAD, useOBCS, useSHAP_FILT, useZONAL_FILT, d8d1486ca1 Jean*1092 & useOPPS, usePP81, useKL10, useMY82, useGGL90, useKPP, f9ef55fa0c Jean*1093 & useGMRedi, useBBL, useDOWN_SLOPE, 65594b9008 Jean*1094 & useCAL, useEXF, useBulkForce, useEBM, useCheapAML, f9ef55fa0c Jean*1095 & useGrdchk, useSMOOTH, usePROFILES, useECCO, useCTRL, ea7d076e20 Gael*1096 & useSBO, useFLT, useAUTODIFF, 7548b53ced Jean*1097 & usePTRACERS, useGCHEM, useRBCS, useOffLine, useMATRIX, 00f81e6785 Ou W*1098 & useFRAZIL, useSEAICE, useSALT_PLUME, useShelfIce, useSTIC, 9042972bc7 Jean*1099 & useStreamIce, useICEFRONT, useThSIce, useLand, 427e24e121 Jean*1100 & useATM2d, useAIM, useAtm_Phys, useFizhi, useGridAlt, 68fac71428 Ryan*1101 & useDiagnostics, useREGRID, useLayers, useMNC, 65594b9008 Jean*1102 & useRunClock, useEMBED_FILES, 514844cf97 Jean*1103 & useMYPACKAGE 83d329dbf1 Mart*1104 427e24e121 Jean*1105 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated from https://github.com/MITgcm/MITgcm by the 2.2.1-MITgcm-0.1 LXR engine. The LXR team |