#!/bin/ksh -x ########## config.base ########## # Common to all steps echo "BEGIN: config.base" # Machine environment export machine="@MACHINE@" # EMC parallel or NCO production export RUN_ENVIR="emc" # Account, queue, etc. export ACCOUNT="@ACCOUNT@" export QUEUE="@QUEUE@" export QUEUE_SERVICE="@QUEUE_SERVICE@" export PARTITION_BATCH="@PARTITION_BATCH@" # Project to use in mass store: HPSS_PROJECT=emc-global # Directories relative to installation areas: export HOMEgfs=@HOMEgfs@ export PARMgfs=$HOMEgfs/parm export FIXgfs=$HOMEgfs/fix export USHgfs=$HOMEgfs/ush export UTILgfs=$HOMEgfs/util export EXECgfs=$HOMEgfs/exec export SCRgfs=$HOMEgfs/scripts ######################################################################## # GLOBAL static environment parameters export PACKAGEROOT="@PACKAGEROOT@" export COMROOT="@COMROOT@" export COMINsyn="@COMINsyn@" export DMPDIR="@DMPDIR@" export RTMFIX=$CRTM_FIX # USER specific paths export HOMEDIR="@HOMEDIR@" export STMP="@STMP@" export PTMP="@PTMP@" export NOSCRUB="@NOSCRUB@" # Base directories for various builds export BASE_GIT="@BASE_GIT@" # Toggle to turn on/off EMCSFC_SFC_PREP job export DO_SFCPREP="NO" # SNOGRB dump file production # Toggle to turn on/off GFS downstream processing. export DO_BUFRSND="YES" # BUFR sounding products export DO_GEMPAK="NO" # GEMPAK products export DO_AWIPS="NO" # AWIPS products export DO_WDQMS="NO" # Generate WDQMS products # NO for retrospective parallel; YES for real-time parallel # arch.sh uses REALTIME for MOS. Need to set REALTIME=YES # if want MOS written to HPSS. Should update arch.sh to # use RUNMOS flag (currently in config.vrfy) export REALTIME="YES" # Experiment mode (cycled or forecast-only) export MODE="@MODE@" # cycled/forecast-only #################################################### # DO NOT ADD MACHINE DEPENDENT STUFF BELOW THIS LINE # IF YOU HAVE TO MAKE MACHINE SPECIFIC CHANGES BELOW # FEEL FREE TO MOVE THEM ABOVE THIS LINE TO KEEP IT # CLEAR #################################################### # Build paths relative to $HOMEgfs export FIXgsi="$HOMEgfs/fix/fix_gsi" export HOMEfv3gfs="$HOMEgfs/sorc/fv3gfs.fd" export HOMEpost="$HOMEgfs" export HOMEobsproc="$BASE_GIT/obsproc/v${obsproc_run_ver}" export BASE_VERIF="$BASE_GIT/verif/global/tags/vsdb" # CONVENIENT utility scripts and other environment parameters export NCP="/bin/cp -p" export NMV="/bin/mv" export NLN="/bin/ln -sf" export VERBOSE="YES" export KEEPDATA="NO" export CHGRP_RSTPROD="@CHGRP_RSTPROD@" export CHGRP_CMD="@CHGRP_CMD@" export NEMSIOGET="$HOMEgfs/exec/nemsio_get" export NCDUMP="$NETCDF/bin/ncdump" export NCLEN="$HOMEgfs/ush/getncdimlen" # Machine environment, jobs, and other utility scripts export BASE_ENV="$HOMEgfs/env" export BASE_JOB="$HOMEgfs/jobs/rocoto" # EXPERIMENT specific environment parameters export SDATE=@SDATE@ export FDATE=@FDATE@ export EDATE=@EDATE@ export EXP_WARM_START="@EXP_WARM_START@" export assim_freq=6 export PSLOT="@PSLOT@" export EXPDIR="@EXPDIR@/$PSLOT" export ROTDIR="@ROTDIR@/$PSLOT" export ROTDIR_DUMP="YES" #Note: A value of "NO" does not currently work export DUMP_SUFFIX="" #Note: Can be set to "p" when using p-dumps export RUNDIR="$STMP/RUNDIRS/$PSLOT" export DATAROOT="$RUNDIR/$CDATE/$CDUMP" export ARCDIR="$NOSCRUB/archive/$PSLOT" export ICSDIR="@ICSDIR@" export ATARDIR="/NCEPDEV/$HPSS_PROJECT/1year/$USER/$machine/scratch/$PSLOT" # Commonly defined parameters in JJOBS export envir=${envir:-"prod"} export NET="gfs" export RUN=${RUN:-${CDUMP:-"gfs"}} export COMINatmos=${ROTDIR}/${CDUMP}.${PDY}/${cyc}/atmos export COMOUTatmos=${ROTDIR}/${CDUMP}.${PDY}/${cyc}/atmos export COMINwave=${ROTDIR}/${CDUMP}.${PDY}/${cyc}/wave export COMOUTwave=${ROTDIR}/${CDUMP}.${PDY}/${cyc}/wave export COMIN_OBS=${ROTDIR}/${CDUMP}.${PDY}/${cyc}/atmos export COMIN_GES_OBS=${ROTDIR}/${GDUMP}.${gPDY}/${gcyc}/atmos export COMINtcvital=${COMIN_OBS:-${ROTDIR}/${CDUMP}.${PDY}/${cyc}/atmos} export ERRSCRIPT=${ERRSCRIPT:-'eval [[ $err = 0 ]]'} export LOGSCRIPT=${LOGSCRIPT:-""} #export ERRSCRIPT=${ERRSCRIPT:-"err_chk"} #export LOGSCRIPT=${LOGSCRIPT:-"startmsg"} export REDOUT="1>" export REDERR="2>" export SENDECF=${SENDECF:-"NO"} export SENDCOM=${SENDCOM:-"NO"} export SENDSDM=${SENDSDM:-"NO"} export SENDDBN_NTC=${SENDDBN_NTC:-"NO"} export SENDDBN=${SENDDBN:-"NO"} export DBNROOT=${DBNROOT:-${UTILROOT}/fakedbn} # Resolution specific parameters export LEVS=128 export CASE="@CASECTL@" export CASE_ENKF="@CASEENS@" # Surface cycle update frequency if [[ "$CDUMP" == "gdas" ]] ; then export FHCYC=1 export FTSFS=10 elif [[ "$CDUMP" == "gfs" ]] ; then export FHCYC=24 fi # Output frequency of the forecast model (for cycling) export FHMIN=0 export FHMAX=9 export FHOUT=3 # Cycle to run EnKF (set to BOTH for both gfs and gdas) export EUPD_CYC="gdas" # GFS cycle info export gfs_cyc=@gfs_cyc@ # 0: no GFS cycle, 1: 00Z only, 2: 00Z and 12Z only, 4: all 4 cycles. # GFS output and frequency export FHMIN_GFS=0 export FHMAX_GFS_00=384 export FHMAX_GFS_06=384 export FHMAX_GFS_12=384 export FHMAX_GFS_18=384 export FHMAX_GFS=$(eval echo \${FHMAX_GFS_$cyc}) export FHOUT_GFS=3 export FHMAX_HF_GFS=0 export FHOUT_HF_GFS=1 export ILPOST=1 # gempak output frequency up to F120 # GFS restart interval in hours export restart_interval_gfs=0 # I/O QUILTING, true--use Write Component; false--use GFDL FMS # if quilting=true, choose OUTPUT_GRID as cubed_sphere_grid in netcdf or gaussian_grid # if gaussian_grid, set OUTPUT_FILE for nemsio or netcdf # WRITE_DOPOST=true, use inline POST export QUILTING=".true." export OUTPUT_GRID="gaussian_grid" export OUTPUT_FILE="netcdf" export WRITE_DOPOST=".true." # suffix options depending on file format if [ $OUTPUT_FILE = "netcdf" ]; then export SUFFIX=".nc" export NEMSIO_IN=".false." export NETCDF_IN=".true." else export SUFFIX=".nemsio" export NEMSIO_IN=".true." export NETCDF_IN=".false." fi # IAU related parameters export DOIAU="YES" # Enable 4DIAU for control with 3 increments export IAUFHRS="3,6,9" export IAU_FHROT=`echo $IAUFHRS | cut -c1` export IAU_DELTHRS=6 export IAU_OFFSET=6 export DOIAU_ENKF=${DOIAU:-"YES"} # Enable 4DIAU for EnKF ensemble export IAUFHRS_ENKF="3,6,9" export IAU_DELTHRS_ENKF=6 if [[ "$SDATE" = "$CDATE" && $EXP_WARM_START = ".false." ]] || [[ "$DOIAU" = "NO" ]] || [[ "$MODE" = "forecast-only" && $EXP_WARM_START = ".false." ]] ; then # Cold starting or IAU off export IAU_OFFSET=0 export IAU_FHROT=0 fi # Use Jacobians in eupd and thereby remove need to run eomg export lobsdiag_forenkf=".true." # run GLDAS to spin up land ICs export DO_GLDAS=YES export gldas_cyc=00 # run wave component export DO_WAVE="NO" export WAVE_CDUMP="both" # Microphysics Options: 99-ZhaoCarr, 8-Thompson; 6-WSM6, 10-MG, 11-GFDL export imp_physics=11 # Shared parameters # Hybrid related export DOHYBVAR="YES" export NMEM_ENKF=@NMEM_ENKF@ export SMOOTH_ENKF="NO" export l4densvar=".true." export lwrite4danl=".true." # EnKF output frequency if [ $DOHYBVAR = "YES" ]; then export FHMIN_ENKF=3 export FHMAX_ENKF=9 if [ $l4densvar = ".true." ]; then export FHOUT=1 export FHOUT_ENKF=1 else export FHOUT_ENKF=3 fi fi # turned on nsst in anal and/or fcst steps, and turn off rtgsst export DONST="YES" if [ $DONST = "YES" ]; then export FNTSFA=" "; fi # The switch to apply SST elevation correction or not export nst_anl=.true. # Analysis increments to zero in CALCINCEXEC export INCREMENTS_TO_ZERO="'liq_wat_inc','icmr_inc','rwmr_inc','snmr_inc','grle_inc'" if [ $OUTPUT_FILE = "nemsio" ]; then export DO_CALC_INCREMENT="YES" export DO_CALC_ANALYSIS="NO" fi # Stratospheric increments to zero export INCVARS_ZERO_STRAT="'sphum_inc','liq_wat_inc','icmr_inc','rwmr_inc','snmr_inc','grle_inc'" export INCVARS_EFOLD="5" # Swith to generate netcdf or binary diagnostic files. If not specified, # script default to binary diagnostic files. Set diagnostic file # variables here since used in both DA and vrfy jobs export netcdf_diag=".true." export binary_diag=".false." # Verification options export DO_METP="YES" # Run METPLUS jobs - set METPLUS settings in config.metp export DO_VSDB="YES" # Run VSDB package - set VSDB settings in config.vrfy # Archiving options export HPSSARCH="@HPSSARCH@" # save data to HPSS archive export ARCH_CYC=00 # Archive data at this cycle for warm_start capability export ARCH_WARMICFREQ=4 # Archive frequency in days for warm_start capability export ARCH_FCSTICFREQ=1 # Archive frequency in days for gdas and gfs forecast-only capability export DELETE_COM_IN_ARCHIVE_JOB="YES" # NO=retain ROTDIR. YES default in arch.sh and earc.sh. echo "END: config.base"