#!/bin/sh
#
# Version 3 of mm5 job deck
#
# The mm5 executable (mm5.exe) expects to find the following files
# in the Run/ directory:
# MMINPUT_DOMAIN1 -|
# BDYOUT_DOMAIN1 | --> output files from Interpf
# LOWBDY_DOMAIN1 -|
# TERRAIN_DOMAIN[2,3..] if running nests --> output from Terrain
#
# If it is a restart run:
# RESTART_DOMAIN1[,2,3..] --> output from MM5 run: renamed from
# SAVE_DOMAIN1[,2,3...]
#
# If it is gridded FDDA run with surface analysis nudging:
# SFCFDDA_DOMAIN1[2,3,...]
#
# If it is observational nudging run:
# MM5OBS_DOMAIN1[,2,3..] --> user-created observation files
#
# Output from a MM5 run:
# If IFTAPE = 1
# MMOUT_DOMAIN1[,2,3...] --> one output for each domain
# If IFSAVE = TRUE
# SAVE_DOMAIN1[,2,3...]
#
#
# temp files should be accessible
umask 022
#
# Sections
# 1. Options for namelist ("mmlif")
# 2. Running...
#
#-----------------------------------------------------------------------------
# 1. Options for namelist ("mmlif")
#-----------------------------------------------------------------------------
#
# The first dimension (column) of the arrays denotes the domain
# identifier.
# Col 1 = Domain #1, Col 2 = Dom #2, etc.
#
cat > ./Run/oparam << EOF
&OPARAM
;
; ************* FORECAST TIME AND TIME STEP ******************
;
TIMAX = 720., ; forecast length in minutes
TISTEP = 240., ; coarse domain DT in model, use 3*DX
;
; ************** OUTPUT/RESTART OPTIONS ***************
;
IFREST = .FALSE., ; whether this is a restart
IXTIMR = 720, ; restart time in minutes
IFSAVE = .TRUE., ; save data for restart
SVLAST = .TRUE., ; T: only save the last file for restart
; F: save multiple files
SAVFRQ = 360., ; how frequently to save data (in minutes)
IFTAPE = 1, ; model output: 0,1
TAPFRQ = 180., ; how frequently to output model results (in minutes)
BUFFRQ = 0., ; how frequently to split model output files (in minutes),
; ignored if < TAPFRQ
INCTAP = 1,1,1,1,1,1,1,1,1,1, ; multipliers of TAPFRQ for outputting
IFSKIP = .FALSE., ; whether to skip input files - DO NOT use this for restart
CDATEST = '1993-03-13_00:00:00', ; the DATE for the starting file
IFPRT = 0, ; sample print out: =1, a lot of print
PRTFRQ = 720., ; Print frequency for sample output (in minutes)
MASCHK = 99999, ; mass conservation check (KTAU or no. of time steps)
IFTSOUT = .FALSE., ; output time series (default 30 points)
TSLAT = 0.0,0.0,0.0,0.0,0.0, ; latitudes of time series points (S is negative)
TSLON = 0.0,0.0,0.0,0.0,0.0, ; longitudes of time series points (W is negative)
&END
EOF
cat > ./Run/lparam << EOF
&LPARAM
;
; 1. user-chosen options I
;
RADFRQ = 30., ;atmospheric radiation calculation frequency (in minutes)
IMVDIF = 1, ;moist vertical diffusion in clouds - 0, 1 (IBLTYP=2,5 only)
IVQADV = 1, ;vertical moisture advection uses log interpolation - 0, linear - 1
IVTADV = 1, ;vertical temperature advection uses theta interpolation - 0, linear - 1
ITHADV = 1, ;advection of temperature uses potential temperature - 1, standard - 0
ITPDIF = 1, ;diffusion using perturbation temperature - 0,1
ICOR3D = 1, ;3D Coriolis force - 0, 1
IFUPR = 1, ;upper radiative boundary condition - 0, 1
;
; 2. do not change IBOUDY
;
IBOUDY = 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, ;boundary conditions
; (fixed, time-dependent, relaxation -0,2,3)
;
; 3. keep the following 8 variables as they are
; unless doing sensitivity runs
;
IFDRY = 0, ;fake-dry run (no latent heating) - 0, 1
; for IMPHYS = 2,3,4,5,6,7 (requires ICUPA = 1)
ISSTVAR= 0, ;varying SST in time - 1, otherwise, 0
IMOIAV = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ;bucket soil moisture scheme. 0 - not used,
;1 - used w/o extra input, 2 - user w/ soil m input
IZ0TOPT= 0, ;thermal roughness option in IBLTYP = 2,5.
;0 - old option, 1 - Garratt, 2 - Zilitinkevich
IFSNOW = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ;SNOW COVER EFFECTS - 0, 1, 2
; ;0 - no effect, 1 - with effect, 2 - simple snow model
ISFFLX = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ;surface fluxes - 0, 1
ITGFLG = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ;surface temperature prediction - 1:yes, 3:no
ISFPAR = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ;surface characteristics - 0, 1
ICLOUD = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ;cloud effects on radiation - 0, 1
; currently for IFRAD = 1,2
IEVAP = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ;evap of cloud/rainwater - <0, 0, >0
; (currently for IMPHYS=3,4,5 only)
ISMRD = 0, ;soil moisture initialization by PX LSM:
; =0, use moisture avail from LANDUSE.TBL;
; =2, use soil moisture from REGRID
;
EOF
cat > ./Run/nparam << EOF
&NPARAM
;
; ************** NEST AND MOVING NEST OPTIONS ***************
;
LEVIDN = 0,1,2,1,1,1,1,1,1,1, ; level of nest for each domain
NUMNC = 1,1,2,1,1,1,1,1,1,1, ; ID of mother domain for each nest
NESTIX = 35, 49, 31, 46, 46, 46, 46, 46, 46, 46, ; domain size i
NESTJX = 41, 52, 31, 61, 61, 61, 61, 61, 61, 61, ; domain size j
NESTI = 1, 10, 8, 1, 1, 1, 1, 1, 1, 1, ; start location i
NESTJ = 1, 17, 9, 1, 1, 1, 1, 1, 1, 1, ; start location i
XSTNES = 0., 0.,900., 0., 0., 0., 0., 0., 0., 0., ; domain initiation
XENNES =1440.,1440.,1440.,720.,720.,720.,720.,720.,720.,720.; domain termination
IOVERW = 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, ; overwrite nest input
; 0=interpolate from coarse mesh (for nest domains);
; 1=read in domain initial conditions
; 2=read in nest terrain file
IACTIV = 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, ;
; in case of restart: is this domain active?
;
; ************* MOVING NEST OPTIONS ******************
;
IMOVE = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; move domain 0,1
IMOVCO = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ; 1st move #
; imovei(j,k)=L, ; I-INCREMENT MOVE (DOMAIN J, MOVE NUMBER K) IS L
IMOVEI = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; I move #1
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; I move #2
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; I move #3
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; I move #4
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; I move #5
IMOVEJ = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; J move #1
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; J move #2
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; J move #3
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; J move #4
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; J move #5
IMOVET = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; time of move #1
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; time of move #2
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; time of move #3
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; time of move #4
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; time of move #5
IFEED = 3, ; no feedback; 9-pt weighted average; 1-pt feedback w/o smoothing /
; light smoothing / heavy smoothing - 0,1,2,3, and 4
&END
EOF
cat > ./Run/pparam << EOF
&PPARAM
;
; ************* MISCELLANEOUS OPTIONS *****************
;
; The values for the following 5 variables are only used if ISFPAR = 0
; (i.e. only land/water surface catagories)
;
ZZLND = 0.1, ; roughness length over land in meters
ZZWTR = 0.0001, ; roughness length over water in meters
ALBLND = 0.15, ; albedo
THINLD = 0.04, ; surface thermal inertia
XMAVA = 0.3, ; moisture availability over land as a decimal fraction of one
;
CONF = 1.0, ; non-convective precipitation saturation threshold (=1: 100%)
&END
EOF
cat > ./Run/fparam << EOF
&FPARAM
;
; ************* 4DDA OPTIONS **********************
;
; THE FIRST DIMENSION (COLUMN) IS THE DOMAIN IDENTIFIER:
; COLUMN 1 = DOMAIN #1, COLUMN 2 = DOMAIN #2, ETC.
;
; START TIME FOR FDDA (ANALYSIS OR OBS) FOR EACH DOMAIN
; (IN MINUTES RELATIVE TO MODEL INITIAL TIME)
FDASTA=0.,0.,0.,0.,0.,0.,0.,0.,0.,0.
; ENDING TIME FOR FDDA (ANALYSIS OR OBS) FOR EACH DOMAIN
; (IN MINUTES RELATIVE TO MODEL INITIAL TIME)
FDAEND=780.,0.,0.,0.,0.,0.,0.,0.,0.,0., See changes further down
;
; **************** ANALYSIS NUDGING ******************
;
; THE FIRST DIMENSION (COLUMN) OF THE ARRAYS DENOTES THE
; DOMAIN IDENTIFIER:
; COLUMN 1 = DOMAIN #1, COLUMN 2 = DOMAIN #2, ETC.
; THE SECOND DIMENSION (ROW OR LINE) EITHER REFERS TO THE 3D VS
; SFC ANALYSIS OR WHICH VARIABLE IS ACCESSED:
; LINE 1 = 3D, LINE 2 = SFC OR
; LINE 1 = U, LINE 2 = V, LINE 3 = T, LINE 4 = Q
;
; IS THIS A GRID 4DDA RUN? 0 = NO; 1 = YES
I4D= 0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
;
; SPECIFY THE TIME IN MINUTES BETWEEN THE INPUT (USUALLY
; FROM INTERP) USED FOR GRID FDDA
DIFTIM=720.,720.,0.,0.,0.,0.,0.,0.,0.,0., ; 3D ANALYSIS NUDGING
180.,180.,0.,0.,0.,0.,0.,0.,0.,0., ; SFC ANALYSIS NUDGING
;
; GRID NUDGE THE WIND FIELD? 0 = NO; 1 = YES
IWIND=1,1,0,0,0,0,0,0,0,0, ; 3D ANALYSIS NUDGING
1,1,0,0,0,0,0,0,0,0, ; SFC ANALYSIS NUDGING
;
; NUDGING COEFFICIENT FOR WINDS ANALYSES
GV=2.5E-4,1.0E-4,0.,0.,0.,0.,0.,0.,0.,0., ; 3D ANALYSIS NUDGING
2.5E-4,1.0E-4,0.,0.,0.,0.,0.,0.,0.,0., ; SFC ANALYSIS NUDGING
;
; GRID NUDGE THE TEMPERATURE FIELD? 0 = NO; 1 = YES
ITEMP=1,1,0,0,0,0,0,0,0,0, ; 3D ANALYSIS NUDGING
1,1,0,0,0,0,0,0,0,0, ; SFC ANALYSIS NUDGING
;
; NUDGING COEFFICIENT FOR TEMPERATURE ANALYSES
GT=2.5E-4,1.0E-4,0.,0.,0.,0.,0.,0.,0.,0., ; 3D ANALYSIS NUDGING
2.5E-4,1.0E-4,0.,0.,0.,0.,0.,0.,0.,0., ; SFC ANALYSIS NUDGING
;
IMOIS=1,1,0,0,0,0,0,0,0,0, ; 3D ANALYSIS NUDGING
1,1,0,0,0,0,0,0,0,0, ; SFC ANALYSIS NUDGING
;
; NUDGING COEFFICIENT FOR THE MIXING RATIO ANALYSES
GQ=1.E-5,1.E-5,0.,0.,0.,0.,0.,0.,0.,0., ; 3D ANALYSIS NUDGING
1.E-5,1.E-5,0.,0.,0.,0.,0.,0.,0.,0., ; SFC ANALYSIS NUDGING
;
; GRID NUDGE THE ROTATIONAL WIND FIELD? 0 = NO; 1 = YES
IROT=0,0,0,0,0,0,0,0,0,0, ; 3D ANALYSIS NUDGING
;
; NUDGING COEFFICIENT FOR THE ROTATIONAL COMPONENT OF THE WINDS
GR=5.E6,5.E6,0.,0.,0.,0.,0.,0.,0.,0., ; 3D ANALYSIS NUDGING
;
; IF GRID NUDGING (I4D(1,1)=1) AND YOU WISH TO EXCLUDE THE
; BOUNDARY LAYER FROM FDDA OF COARSE GRID THREE DIMENSIONAL
; DATA (USUALLY FROM INTERP),
; 0 = NO, INCLUDE BOUNDARY LAYER NUDGING
; 1 = YES, EXCLUDE BOUNDARY LAYER NUDGING
INONBL =0,0,0,0,0,0,0,0,0,0, ; U WIND
0,0,0,0,0,0,0,0,0,0, ; V WIND
1,1,1,1,1,1,1,1,1,1, ; TEMPERATURE
1,1,1,1,1,1,1,1,1,1, ; MIXING RATIO
;
; RADIUS OF INFLUENCE FOR SURFACE ANALYSIS (KM).
; IF I4D(2,1)=1 OR I4D(2,2)=1, ETC, DEFINE RINBLW (KM) USED
; IN SUBROUTINE BLW TO DETERMINE THE HORIZONTAL VARIABILITY
; OF THE SURFACE-ANALYSIS NUDGING AS A FUNCTION OF SURFACE
; DATA DENSITY. OVER LAND, THE STRENGTH OF THE SURFACE-
; ANALYSIS NUDGING IS LINEARLY DECREASED BY 80 PERCENT AT
; THOSE GRID POINTS GREATER THAN RINBLW FROM AN OBSERVATION
; TO ACCOUNT FOR DECREASED CONFIDENCE IN THE ANALYSIS
; IN REGIONS NOT NEAR ANY OBSERVATIONS.
RINBLW=250.,
;
; SET THE NUDGING PRINT FREQUENCY FOR SELECTED DIAGNOSTIC
; PRINTS IN THE GRID (ANALYSIS) NUDGING CODE (IN CGM
; TIMESTEPS)
NPFG=50,
;
; **************** OBSERVATION NUDGING ***************
;
;
; INDIVIDUAL OBSERVATION NUDGING. VARIABLES THAT ARE ARRAYS
; USE THE FIRST DIMENSION (COLUMN) AS THE DOMAIN IDENTIFIER:
; COLUMN 1 = DOMAIN #1, COLUMN 2 = DOMAIN #2, ETC.
;
; IS THIS INDIVIDUAL OBSERVATION NUDGING? 0 = NO; 1 = YES
I4DI =0,0,0,0,0,0,0,0,0,0,
;
; OBS NUDGE THE WIND FIELD FROM STATION DATA? 0 = NO; 1 = YES
ISWIND =1,0,0,0,0,0,0,0,0,0,
;
; NUDGING COEFFICIENT FOR WINDS FROM STATION DATA
GIV =4.E-4,4.E-4,0.,0.,0.,0.,0.,0.,0.,0.,
;
; OBS NUDGE THE TEMPERATURE FIELD FROM STATION DATA? 0 = NO; 1 = YES
ISTEMP=1,0,0,0,0,0,0,0,0,0,
;
; NUDGING COEFFICIENT FOR TEMPERATURES FROM STATION DATA
GIT =4.E-4,4.E-4,0.,0.,0.,0.,0.,0.,0.,0.,
;
; OBS NUDGE THE MIXING RATIO FIELD FROM STATION DATA? 0 = NO; 1 = YES
ISMOIS=1,0,0,0,0,0,0,0,0,0,
;
; NUDGING COEFFICIENT FOR THE MIXING RATIO FROM STATION DATA
GIQ =4.E-4,4.E-4,0.,0.,0.,0.,0.,0.,0.,0.,
;
; THE OBS NUDGING RADIUS OF INFLUENCE IN THE
; HORIZONTAL IN KM FOR CRESSMAN-TYPE DISTANCE-WEIGHTED
; FUNCTIONS WHICH SPREAD THE OBS-NUDGING CORRECTION
; IN THE HORIZONTAL.
RINXY=240.,
;
; THE OBS NUDGING RADIUS OF INFLUENCE IN THE
; VERTICAL IN SIGMA UNITS FOR CRESSMAN-TYPE DISTANCE-
; WEIGHTED FUNCTIONS WHICH SPREAD THE OBS-NUDGING
; CORRECTION IN THE VERTICAL.
RINSIG=0.001,
;
; THE HALF-PERIOD OF THE TIME WINDOW, IN MINUTES, OVER
; WHICH AN OBSERVATION WILL AFFECT THE FORECAST VIA OBS
; NUDGING. THAT IS, THE OBS WILL INFLUENCE THE FORECAST
; FROM TIMEOBS-TWINDO TO TIMEOBS+TWINDO. THE TEMPORAL
; WEIGHTING FUNCTION IS DEFINED SUCH THAT THE OBSERVATION
; IS APPLIED WITH FULL STRENGTH WITHIN TWINDO/2. MINUTES
; BEFORE OR AFTER THE OBSERVATION TIME, AND THEN LINEARLY
; DECREASES TO ZERO TWINDO MINUTES BEFORE OR AFTER THE
; OBSERVATION TIME.
TWINDO=40.0,
;
; THE NUDGING PRINT FREQUENCY FOR SELECTED DIAGNOSTIC PRINT
; IN THE OBS NUDGING CODE (IN CGM TIMESTEPS)
NPFI=20,
;
; FREQUENCY (IN CGM TIMESTEPS) TO COMPUTE OBS NUDGING WEIGHTS
IONF=2,
IDYNIN=0, ;for dynamic initialization using a ramp-down function to gradually
; turn off the FDDA before the pure forecast, set idynin=1 [y=1, n=0]
DTRAMP=60.,;the time period in minutes over which the
; nudging (obs nudging and analysis nudging) is ramped down
; from one to zero. Set dtramp negative if FDDA is to be ramped
; down BEFORE the end-of-data time (DATEND), and positive if the
; FDDA ramp-down period extends beyond the end-of-data time.
&END
EOF
#
#-----------------------------------------------------------------
#
# create namelist: mmlif, and remove comments from namelist:
#
make mmlif
cd ./Run
sed -f ../Util/no_comment.sed mmlif | grep [A-Z,a-z] > mmlif.tmp
mv mmlif.tmp mmlif
rm fparam lparam nparam oparam pparam
#
#-----------------------------------------------------------------
#
# run MM5
#
date
echo "timex mm5.exe >! mm5.print.out "
timex ./mm5.exe > mm5.print.out 2>&1