C $Header: /home/ubuntu/mnt/e9_copy/MITgcm_contrib/AITCZ/code/mitphys_readparms.F,v 1.1 2003/08/20 15:24:59 czaja Exp $ C $Name: $ C modified from shap_filt_readparms.F #include "CPP_OPTIONS.h" SUBROUTINE MITPHYS_READPARMS( myThid ) C /==========================================================\ C | SUBROUTINE SHAP_FILT_READPARMS | C | o Routine to initialize Shapiro Filter parameters | C |==========================================================| C \==========================================================/ IMPLICIT NONE C === Global variables === #include "SIZE.h" #include "EEPARAMS.h" #include "PARAMS.h" #include "MITPHYS_PARAMS.h" C === Routine arguments === INTEGER myThid #ifdef ALLOW_MITPHYS NAMELIST /MITPHYS_PARM01/ & CDM, CD, US0, VS0, WS0, & RADINT, CRFINT, CLEARSKY, RADFREQ, & PBL_MIX, CONV_MOM_TRANS, & CONV_ADJ, K_PBL, LOG_CORRECT, & DARAD, RAD_LAT, RAD_LON, RAD_TIME, & RAD_START_TIME, LINEAR_FRICTION, & LIN_FR_VEL, PHYS_CALL NAMELIST /MITPHYS_PARM02/ & PRESC_SST, SST_BACK, PRESC_STL, PRESC_BKT, & DELT_EQ_PO, DELT_EQ_BND, & DELT_LH, LAT_LH, & DELT_PERT, LAT_PERT, DEL_LAT, & DELT_STL_EQU, DELT_STL_HEM, DEL_LAT_STL, & DELT_PERT_NTA, LAT_PERT_NTA, DEL_LAT_NTA, & DELT_PERT_MO, LAT_PERT_MO, DEL_LAT_MO, & LON_PERT_MO, DEL_LON_MO, & ANNUAL_CYCLE, SST_DELAY, & RELAX_SST, SST_RELAX_TIME, SEA_THICK, & HEATCAPOCEA, HEATCAPLAND, BKT0, & DELL_STAR, DELQ_STAR, QSTAR_BACK, & DELL_OCEAN, DELQ_OCEAN, LOE_OCEAN, LOW_OCEAN C === Local variables === C msgBuf - Informational/error meesage buffer C iUnit - Work variable for IO unit number CHARACTER*(MAX_LEN_MBUF) msgBuf INTEGER iUnit C-- MITPHYS_READPARMS has been called so we know that C the package is active. _BEGIN_MASTER(myThid) WRITE(msgBuf,'(A)') ' MITPHYS_READPARMS: opening data.mitphys' CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, & SQUEEZE_RIGHT , 1) CALL OPEN_COPY_DATA_FILE( I 'data.mitphys', 'MITPHYS_READPARMS', O iUnit, I myThid ) C-- Default flags and values for MITPHYS C MITPHYS_PARM01: parameters used mostly by MITPHY_DRIVER CD = 1.2d-3 CDM = 1.2d-3 US0 = 0.0 VS0 = 0.0 WS0 = 2.0 DARAD = .TRUE. ! TRUE= no diurnal cycle RAD_LAT = .FALSE. ! TRUE= latitudinal variation of insolation RAD_LON = .FALSE. ! TRUE= longitudinal variation of insolation RAD_TIME =.FALSE. ! FALSE = radiation constant with time. RAD_START_TIME = 0. ! starting time for radiation calc, default value ! corresponds to March 1st of january C RAD_START_TIME = 24. * 3600. * (30. + 30. + 20.) ! starting time for radiation calc, default value ! corresponds to March 21st RADINT=.TRUE. ! TRUE=interactive radiation CRFINT=.TRUE. ! TRUE=interactive cld rad forcing CLEARSKY=.FALSE. ! TRUE=ignore cld-rad interactions CONV_MOM_TRANS = .FALSE. ! FALSE= no momentum transport by ! moist convection CONV_ADJ = .FALSE. ! FALSE:instantaneous dry convective adjustment ! and does not affect the zonal wind ! TRUE: the adjustment is performed through ! time tendencies. It also affects ! the horizontal wind. PBL_MIX = .TRUE. ! FALSE = mixing of momentum in the PBL ! TRUE = Diffusion of momentum in the PBL K_PBL = 4 ! Thickness of the 'PBL' in model layers LOG_CORRECT = 1.0 ! Correction term for surface wind RADFREQ = 6. * 3600. ! Time interval between radiation calls LINEAR_FRICTION = .FALSE. LIN_FR_VEL = 6.0 PHYS_CALL = 1 ! call physics every PHYS_CALL time step(s). C MITPHYS_PARM02: paramters controlling the SST PRESC_SST = .TRUE. PRESC_STL = .TRUE. SST_BACK = 298.15d0 DELT_EQ_PO = 0.0 DELT_EQ_BND = 0.0 DELT_LH = 0.0 LAT_LH = 0.0 DELT_PERT = 0.0 LAT_PERT = 0.0 DEL_LAT = 20.0 DELT_STL_EQU = 0.0 DELT_STL_HEM = 0.0 DEL_LAT_STL = 30.0 DELT_PERT_NTA = 0.0 LAT_PERT_NTA = 0.0 DEL_LAT_NTA = 15.0 DELT_PERT_MO = 0.0 LAT_PERT_MO = 0.0 DEL_LAT_MO = 20.0 LON_PERT_MO = 0.0 DEL_LON_MO= 20.0 ANNUAL_CYCLE = .FALSE. ! No annual cycle in SST SST_DELAY = 30. ! Delay between SST cycle and solar cycle (in days) C Interactive SST --- not used if PRESC_SST is .TRUE. RELAX_SST = .TRUE. ! SST relaxed to prescribe profile SST_RELAX_TIME = 10.* 86400. ! SEA_THICK = 10.d3 ! HEATCAPOCEA = 4.d8 ! C Interactive STL --- not used if PRESC_STL is .TRUE. HEATCAPLAND = 4.d5 ! C Interactive soil moisture --- not used if PRESC_BKT is .TRUE. PRESC_BKT = .FALSE. ! BKT0 = 15. ! C QFLUX forcing DELL_STAR = 30. DELQ_STAR = 100. QSTAR_BACK = 50. DELL_OCEAN = 20. DELQ_OCEAN = 10. LOW_OCEAN = 120. LOE_OCEAN = 300. C-- Read parameters from open data file READ(UNIT=iUnit,NML=MITPHYS_PARM01) READ(UNIT=iUnit,NML=MITPHYS_PARM02) WRITE(msgBuf,'(A)') & ' MITPHYS_FILT_READPARMS: finished reading data.shap' CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, & SQUEEZE_RIGHT , 1) write(*,*) 'RADINT =', RADINT,'; CRFINT = ', & CRFINT write(*,*) 'CREARSKY =', CLEARSKY,'; RADFREQ =', RADFREQ write(*,*) 'CD =', CD, '; CDM =', CDM write(*,*) 'CONV_ADJ =', CONV_ADJ, 'PBL_MIX =', PBL_MIX write(*,*) 'WS0 =',WS0, '; K_PBL =', K_PBL write(*,*) ' LOG_CORRECT =', LOG_CORRECT C-- Close the open data file CLOSE(iUnit) _END_MASTER(myThid) C-- Everyone else must wait for the parameters to be loaded _BARRIER #endif /* ALLOW_MITPHYS */ RETURN END