--- MITgcm/model/inc/PARAMS.h 2007/08/23 19:07:32 1.203 +++ MITgcm/model/inc/PARAMS.h 2007/10/22 13:08:21 1.206 @@ -1,4 +1,4 @@ -C $Header: /home/ubuntu/mnt/e9_copy/MITgcm/model/inc/PARAMS.h,v 1.203 2007/08/23 19:07:32 jmc Exp $ +C $Header: /home/ubuntu/mnt/e9_copy/MITgcm/model/inc/PARAMS.h,v 1.206 2007/10/22 13:08:21 jmc Exp $ C $Name: $ C @@ -43,12 +43,15 @@ INTEGER UNSET_I PARAMETER ( UNSET_I = 123456789 ) -C Checkpoint data - INTEGER maxNoChkptLev - PARAMETER ( maxNoChkptLev = 2 ) - C-- COMMON /PARM_C/ Character valued parameters used by the model. -C checkPtSuff :: List of checkpoint file suffices +C buoyancyRelation :: Flag used to indicate which relation to use to +C get buoyancy. +C eosType :: choose the equation of state: +C LINEAR, POLY3, UNESCO, JMD95Z, JMD95P, MDJWF, IDEALGAS +C pickupSuff :: force to start from pickup files (even if nIter0=0) +C and read pickup files with this suffix (max 10 Char.) +C mdsioLocalDir :: read-write tiled file from/to this directory name +C (+ 4 digits Processor-Rank) instead of current dir. C tRefFile :: File containing reference Potential Temperat. tRef (1.D) C sRefFile :: File containing reference salinity/spec.humid. sRef (1.D) C rhoRefFile :: File containing reference density profile rhoRef (1.D) @@ -58,21 +61,22 @@ C delYFile :: File containing Y-spacing grid definition (1.D array) C horizGridFile :: File containing horizontal-grid definition C (only when using curvilinear_grid) -C bathyFile :: File containing bathymetry. If not defined bathymetry -C is taken from inline function. -C topoFile :: File containing the topography of the surface (unit=m) -C (mainly used for the atmosphere = ground height). -C shelfIceFile:: File containing the topography of the shelfice draught -C (unit=m) -C hydrogThetaFile :: File containing initial hydrographic data for potential -C temperature. -C hydrogSaltFile :: File containing initial hydrographic data for salinity. +C bathyFile :: File containing bathymetry. If not defined bathymetry +C is taken from inline function. +C topoFile :: File containing the topography of the surface (unit=m) +C (mainly used for the atmosphere = ground height). +C shelfIceFile :: File containing the topography of the shelfice draught +C (unit=m) +C hydrogThetaFile :: File containing initial hydrographic data (3-D) +C for potential temperature. +C hydrogSaltFile :: File containing initial hydrographic data (3-D) +C for salinity. C diffKrFile :: File containing 3D specification of vertical diffusivity C zonalWindFile :: File containing zonal wind data C meridWindFile :: File containing meridional wind data -C thetaClimFile :: File containing theta climataology used +C thetaClimFile :: File containing surface theta climataology used C in relaxation term -lambda(theta-theta*) -C saltClimFile :: File containing salt climataology used +C saltClimFile :: File containing surface salt climataology used C in relaxation term -lambda(salt-salt*) C surfQfile :: File containing surface heat flux, excluding SW C (old version, kept for backward compatibility) @@ -84,29 +88,28 @@ C pLoadFile :: File containing pressure loading C eddyTauxFile :: File containing zonal Eddy stress data C eddyTauyFile :: File containing meridional Eddy stress data -C buoyancyRelation :: Flag used to indicate which relation to use to -C get buoyancy. -C eosType :: choose the equation of state: -C LINEAR, POLY3, UNESCO, JMD95Z, JMD95P, MDJWF, IDEALGAS C the_run_name :: string identifying the name of the model "run" - COMMON /PARM_C/ checkPtSuff, + COMMON /PARM_C/ + & buoyancyRelation, eosType, + & pickupSuff, mdsioLocalDir, & tRefFile, sRefFile, rhoRefFile, & delRFile, delRcFile, & delXFile, delYFile, horizGridFile, & bathyFile, topoFile, shelfIceFile, & hydrogThetaFile, hydrogSaltFile, diffKrFile, & zonalWindFile, meridWindFile, thetaClimFile, - & saltClimFile, buoyancyRelation, + & saltClimFile, & EmPmRfile, saltFluxFile, & surfQfile, surfQnetFile, surfQswFile, & lambdaThetaFile, lambdaSaltFile, & uVelInitFile, vVelInitFile, pSurfInitFile, & dQdTfile, ploadFile, & eddyTauxFile, eddyTauyFile, - & eosType, pickupSuff, - & mdsioLocalDir, & the_run_name - CHARACTER*(5) checkPtSuff(maxNoChkptLev) + CHARACTER*(MAX_LEN_FNAM) buoyancyRelation + CHARACTER*(6) eosType + CHARACTER*(10) pickupSuff + CHARACTER*(MAX_LEN_FNAM) mdsioLocalDir CHARACTER*(MAX_LEN_FNAM) tRefFile CHARACTER*(MAX_LEN_FNAM) sRefFile CHARACTER*(MAX_LEN_FNAM) rhoRefFile @@ -127,7 +130,6 @@ CHARACTER*(MAX_LEN_FNAM) surfQswFile CHARACTER*(MAX_LEN_FNAM) EmPmRfile CHARACTER*(MAX_LEN_FNAM) saltFluxFile - CHARACTER*(MAX_LEN_FNAM) buoyancyRelation CHARACTER*(MAX_LEN_FNAM) uVelInitFile CHARACTER*(MAX_LEN_FNAM) vVelInitFile CHARACTER*(MAX_LEN_FNAM) pSurfInitFile @@ -137,10 +139,7 @@ CHARACTER*(MAX_LEN_FNAM) eddyTauyFile CHARACTER*(MAX_LEN_FNAM) lambdaThetaFile CHARACTER*(MAX_LEN_FNAM) lambdaSaltFile - CHARACTER*(MAX_LEN_FNAM) mdsioLocalDir CHARACTER*(MAX_LEN_PREC/2) the_run_name - CHARACTER*(6) eosType - CHARACTER*(10) pickupSuff C-- COMMON /PARM_I/ Integer valued parameters used by the model. C cg2dMaxIters :: Maximum number of iterations in the @@ -155,12 +154,9 @@ C in con. grad solver. C nIter0 :: Start time-step number of for this run C nTimeSteps :: Number of timesteps to execute -C numStepsPerPickup :: For offline setup. Frequency of pickup -C of flow fields. C writeStatePrec :: Precision used for writing model state. C writeBinaryPrec :: Precision used for writing binary files C readBinaryPrec :: Precision used for reading binary files -C nCheckLev :: Holds current checkpoint level C nonlinFreeSurf :: option related to non-linear free surface C =0 Linear free surface ; >0 Non-linear C select_rStar :: option related to r* vertical coordinate @@ -182,8 +178,7 @@ & cg3dMaxIters, & cg3dChkResFreq, & nIter0, nTimeSteps, nEndIter, - & numStepsPerPickup, - & writeStatePrec, nCheckLev, + & writeStatePrec, & writeBinaryPrec, readBinaryPrec, & nonlinFreeSurf, select_rStar, & momForcingOutAB, tracForcingOutAB, @@ -199,11 +194,9 @@ INTEGER nIter0 INTEGER nTimeSteps INTEGER nEndIter - INTEGER numStepsPerPickup INTEGER writeStatePrec INTEGER writeBinaryPrec INTEGER readBinaryPrec - INTEGER nCheckLev INTEGER nonlinFreeSurf INTEGER select_rStar INTEGER momForcingOutAB, tracForcingOutAB @@ -223,7 +216,7 @@ C-- COMMON /PARM_L/ Logical valued parameters used by the model. C usingCartesianGrid :: If TRUE grid generation will be in a cartesian C coordinate frame. -C usingSphericalPolarGrid :: If TRUE grid generation will be in a +C usingSphericalPolarGrid :: If TRUE grid generation will be in a C spherical polar frame. C usingCylindricalGrid :: If TRUE grid generation will be Cylindrical C usingCurvilinearGrid :: If TRUE, use a curvilinear grid (to be provided) @@ -243,11 +236,11 @@ C and off. C tempForcing :: Flag which turns external forcing of temperature on C and off. -C saltAdvection :: Flag which turns advection of salinity on +C saltAdvection :: Flag which turns advection of salinity on C and off. C saltForcing :: Flag which turns external forcing of salinity on C and off. -C useRealFreshWaterFlux :: if True (=Natural BCS), treats P+R-E flux +C useRealFreshWaterFlux :: if True (=Natural BCS), treats P+R-E flux C as a real Fresh Water (=> changes the Sea Level) C if F, converts P+R-E to salt flux (no SL effect) C useFullLeith :: Set to true to use full Leith viscosity(may be unstable @@ -259,7 +252,7 @@ C implicitFreeSurface :: Set to true to use implicit free surface C exactConserv :: Set to true to conserve exactly the total Volume C linFSConserveTr :: Set to true to correct source/sink of tracer -C at the surface due to Linear Free Surface +C at the surface due to Linear Free Surface C uniformLin_PhiSurf :: Set to true to use a uniform Bo_surf in the C linear relation Phi_surf = Bo_surf*eta C use3Dsolver :: set to true to use 3-D pressure solver @@ -291,6 +284,7 @@ C out off Adams-Bashforth time stepping. C doAB_onGtGs :: if the Adams-Bashforth time stepping is used, always C apply AB on tracer tendencies (rather than on Tracer) +C pickupStrictlyMatch :: check and stop if pickup-file do not stricly match C startFromPickupAB2 :: with AB-3 code, start from an AB-2 pickup C usePickupBeforeC54 :: start from old-pickup files, generated with code from C before checkpoint-54a, Jul 06, 2004. @@ -326,7 +320,7 @@ C timeave_mdsio :: use mdsio for timeave output C snapshot_mdsio :: use mdsio for "snapshot" (dumpfreq/diagfreq) output C monitor_stdio :: use stdio for monitor output -C dumpInitAndLast :: dumps model state to files at Initial (nIter0) +C dumpInitAndLast :: dumps model state to files at Initial (nIter0) C & Last iteration, in addition multiple of dumpFreq iter. C balanceEmPmR :: substract global mean of EmPmR at every time step C balanceQnet :: substract global mean of Qnet at every time step @@ -363,7 +357,7 @@ & usingPCoords, usingZCoords, useDynP_inEos_Zc, & nonHydrostatic, quasiHydrostatic, globalFiles, useSingleCpuIO, & allowFreezing, useOldFreezing, - & usePickupBeforeC54, startFromPickupAB2, + & pickupStrictlyMatch, usePickupBeforeC54, startFromPickupAB2, & pickup_read_mdsio, pickup_write_mdsio, pickup_write_immed, & timeave_mdsio, snapshot_mdsio, monitor_stdio, & outputTypesInclusive, dumpInitAndLast, debugMode, @@ -443,6 +437,7 @@ LOGICAL useSingleCpuIO LOGICAL allowFreezing LOGICAL useOldFreezing + LOGICAL pickupStrictlyMatch LOGICAL usePickupBeforeC54 LOGICAL startFromPickupAB2 LOGICAL dumpInitAndLast @@ -690,7 +685,7 @@ & gravity, recip_gravity, gBaro, & rhonil, recip_rhonil, rhoConst, recip_rhoConst, & rhoFacC, recip_rhoFacC, rhoFacF, recip_rhoFacF, - & rhoConstFresh, convertEmP2rUnit, tRef, sRef, phiRef, dBdrRef, + & rhoConstFresh, tRef, sRef, phiRef, dBdrRef, & rVel2wUnit, wUnit2rVel, mass2rUnit, rUnit2mass, & baseTime, startTime, endTime, & chkPtFreq, pChkPtFreq, dumpFreq, adjDumpFreq, @@ -785,7 +780,6 @@ _RL rhoFacC(Nr), recip_rhoFacC(Nr) _RL rhoFacF(Nr+1), recip_rhoFacF(Nr+1) _RL rhoConstFresh - _RL convertEmP2rUnit _RL tRef(Nr) _RL sRef(Nr) _RL phiRef(2*Nr+1)