#!/bin/ksh set -xa #################################### # 01/28/2013 New variables added for WCOSS and cross-machine unfication export gefsmachine=${gefsmachine:-dell} export gefsmpexec=${gefsmpexec:-mpirun} # #### 08/28/2006 ############################# # THIS GEFS ENSEMBLE POST JOB IS SPECIFICALLY # FOR CALCULATING THE MEAN TROPICAL CYCLONE # TRACK FORECASTS FROM THE TRACK FORECASTS OF # THE VARIOUS ENSEMBLE PERTURBED MEMBERS. # ############################################## ########################################### # Run gefs_config to get input parameters ########################################### if [ "$RUN_ENVIR" = dev ] ### For Developers then # RLW 20141008 modify to obtain and use version for vertical structure . $basesource/nw$envir/*/versions/gefs_legacy.ver . $basesource/nw$envir/gefs_legacy.${gefs_legacy_ver}/parm/gefs_config fi # ############################################# # SETUP ENS POST PROCESSING VARIABLES # ############################################# #################################### # obtain unique process id (pid) and make temp directory #################################### export pid=$$ #export DATA=$DATAROOT/${job}.${pid} export DATA=${DATA:-$DATAROOT/${job}.${pid}} if [[ $envir = dev ]]; then #export DATA=$basetmp/tmpnwprd1/${job}.${pid}.$PDY$cyc$jjj export DATA=$basetmp/tmpnwprd1/${job}.${pid} fi mkdir -p $DATA cd $DATA export cycle=t${cyc}z #################################### # Specify NET and RUN Name and model #################################### export NET=gens export RUN=trakave #################################### # File To Log Msgs #################################### if [[ "$RUN_ENVIR" = dev ]]; then export jlogfile=$baselog/com/logs/jlogfile fi export jlogfile=${jlogfile:-${DATA}/jlogfile} #################################### # Determine Job Output Name on System #################################### export outid="LL$job" export jobid="${outid}.o${pid}" export pgmout="OUTPUT.${pid}" export pgmerr=errfile #################################### # SENDECF - Flag Events on ECF # SENDCOM - Copy Files From TMPDIR to $COMOUT # SENDDBN - Issue DBNet Client Calls #################################### export SENDECF=YES export SENDCOM=YES export SENDDBN=NO if [[ $envir = dev ]]; then export SENDDBN=NO fi #################################### # Specify Execution Areas #################################### export HOMEgefs=${HOMEgefs_legacy:-/gpfs/dell1/nco/ops/nw${envir}/gefs_legacy.${gefs_legacy_ver}} export HOMEGLOBAL=${HOMEGLOBAL:-$HOMEgefs} export HOMEglobal=${HOMEglobal:-$HOMEgefs} #export HOMEGLOBAL=/nw${envir} #export HOMEgefs=/nw${envir}/gefs_legacy.${gefs_legacy_ver} if [[ $envir = dev ]]; then HOMEgefs=$basesource/$HOMEgefs fi export PARMgefs=$HOMEgefs/parm export EXECGLOBAL=$HOMEGLOBAL/exec export USHGLOBAL=$HOMEGLOBAL/ush export FIXGLOBAL=$HOMEGLOBAL/fix export PARMGLOBAL=$HOMEGLOBAL/parm if [[ $envir = dev ]]; then # export HOMEGLOBAL=$basesource/nw${envir} # export PARMGLOBAL=$HOMEGLOBAL/parm export PARMGLOBAL=$basesource/nw${envir}/parm if [[ $gefsmachine = wcoss ]]; then #export FIXGLOBAL=$HOMEglobal/fix # RLW 20141008 modify to obtain and use version for vertical structure export FIXGLOBAL=$basesource/nw${envir}/gefs_legacy.${gefs_legacy_ver}/fix fi fi export ERRSCRIPT=err_chk export LOGSCRIPT=startmsg export REDOUT='1>>' export REDERR='2>' ############################## # Set up the UTILITIES ############################## export HOMEUTIL=$HOMEgefs/util export EXECUTIL=$HOMEUTIL/exec if [[ $envir = dev ]]; then if [[ $gefsmachine = zeus ]]; then export HOMEUTIL=$HOMEglobal/util fi fi #export utilscript=$HOMEUTIL/ush #export EXECUTIL=$HOMEUTIL/exec ############################## # Run setup to initialize working directory and utility scripts ############################## #ksh $utilscript/setup.sh ############################## # Run setpdy and initialize PDY variables ############################## #ksh $utilscript/setpdy.sh setpdy.sh . PDY ############################################## # Define COM directories ############################################## #export COMINgfs=/com2/gfs/prod/gfs.$PDY #export COMIN=/com/${NET}/${envir}/gefs_legacy.${PDY} #export COMINm1=/com/${NET}/${envir}/gefs_legacy.${PDYm1} export COMINgfs=${COMINgfs:-$(compath.py gfs/prod/gfs.${PDY})/$cyc} export COMIN=$COMROOT/${NET}/${envir}/gefs_legacy.${PDY} export COMINm1=$COMROOT/${NET}/${envir}/gefs_legacy.${PDYm1} if [[ $envir = dev ]]; then export COMIN=$baseoutput$COMIN export COMINm1=$baseoutput$COMINm1 fi mkdir -m 775 -p $COMIN/$cyc/pgrba mkdir -m 775 -p $COMIN/$cyc/pgrbalr mkdir -m 775 -p $COMIN/$cyc/track ############################################################# #export COMOUT=/com/${NET}/${envir}/gefs_legacy.${PDY} export COMIN=$COMROOT/${NET}/${envir}/gefs_legacy.${PDY} export COMOUT=$COMROOT/${NET}/${envir}/gefs_legacy.${PDY} if [[ $envir = dev ]]; then export COMOUT=$baseoutput/$COMOUT fi mkdir -m 775 -p $COMOUT/$cyc/ensstat mkdir -m 775 -p $COMOUT/$cyc/pgrba mkdir -m 775 -p $COMOUT/$cyc/pgrbalr mkdir -m 775 -p $COMOUT/$cyc/pgrb2a mkdir -m 775 -p $COMOUT/$cyc/pgrb2alr mkdir -m 775 -p $COMOUT/$cyc/track msg="HAS BEGUN on `hostname`" postmsg "$jlogfile" "$msg" #################################### # Specify Timeout Behavior of Post # # SLEEP_TIME - Amount of time to wait for # a restart file before exiting # SLEEP_INT - Amount of time to wait between # checking for restart files #################################### export SLEEP_TIME=900 export SLEEP_INT=5 ############################################## echo set parameters using gefs.parm ############################################## . $PARMgefs/gefs.parm #################################### # Specify Forecast Hour Range #################################### export SHOUR=00 export FHINC=06 export FHOUR=$fhmax env | sort ############################################################# # Execute the script to compute the ensemble # mean tropical cyclone track export cmodel=ens export COM=$COMOUT/$cyc/track if [[ $envir = dev ]]; then #DHOU 04/13/2012 Added 1 line for ZEUS if [[ $gefsmachine = zeus ]]; then exectrkdir=$HOMEglobal/util/exec $basesource/nw$envir/gefs_legacy.${gefs_legacy_ver}/util/ush/ens_trak_ave.sh elif [[ $gefsmachine = wcoss ]]; then exectrkdir=$basesource/nw$envir/gefs_legacy.${gefs_legacy_ver}/util/exec $basesource/nw$envir/gefs_legacy.${gefs_legacy_ver}/util/ush/ens_trak_ave.sh else exectrkdir=$HOMEgefs/util/exec $HOMEgefs/util/ush/ens_trak_ave.sh fi else exectrkdir=$HOMEgefs/util/exec $HOMEgefs/util/ush/ens_trak_ave.sh fi ############################################################# echo "`hostname`--`date`" >$COMOUT/${cyc}/track/where_gefs_tracker_${cycle}_ran msg="JOB COMPLETED NORMALLY" postmsg "$jlogfile" "$msg" ############################## # Remove the Temporary working directory ############################## cd $DATAROOT rm -rf $DATA