#!/usr/bin/env bash ########################################################### # # JOB NAME: JLMP_1HCNVLTG_FCST # # HISTORY: NOV 27 2013 HUANG CREATED # NOV 27 2013 GHIRARDELLI MODIFIED DATA TO BE UNIQUE # JAN 09 2014 lamp.v1.1.0 GHIRARDELLI MODIFIED FOR HANDOFF # SEP 07 2016 lamp.v1.1.6 GHIRARDELLI MODIFIED TO REMOVE mdl_parm # USE # SEP 08 2021 lamp.v2.4.0 SAMPLATSKY MODIFIED FOR WCOSS2 UPDATES # JAN 13 2023 lmp.v2.5.0 SHAFER REMOVED ERROREOUS cat ${pgmout} # ########################################################### ########################################################### # SET SHELL PROCESSING VARIABLES ########################################################### date export PS4=' $SECONDS + ' set -x ########################################################### # OBTAIN UNIQUE PROCESS ID (PID) AND CREATE TEMP DIRECTORY ########################################################### export DATA=${DATA:-${DATAROOT:?}/${jobid:?}} mkdir -p $DATA cd $DATA export HOUR=$cyc export cycle=t${cyc}z ########################################################### # SPECIFY NET AND MODEL VARIABLES ########################################################### export NET=${NET:-lmp} export RUN=${RUN:-lmp} ########################################################### # DETERMINE JOB OUTPUT NAME (USED IN $DATA WHILE JOB IS # RUNNING) ########################################################### export pgmout="OUTPUT.$$" ########################################################### # SENDECF - Flag Events on ECF # SENDCOM - Copy Files From TMPDIR to $com # SENDDBN - Send files to OSO ########################################################### export SENDECF=${SENDECF:-YES} export SENDCOM=${SENDCOM:-YES} export SENDDBN=${SENDDBN:-YES} ########################################################### # SPECIFY DIRECTORIES WHERE JOB-RELATED FILES RESIDE ########################################################### export USHlmp=${USHlmp:-${HOMElmp}/ush} export EXEClmp=${EXEClmp:-${HOMElmp}/exec} export FIXlmp=${FIXlmp:-${HOMElmp}/fix} export PARMlmp=${PARMlmp:-${HOMElmp}/parm} export SCRlmp=${SCRlmp:-${HOMElmp}/scripts} ########################################################### # RUN SETPDY TO INITIALIZE PDY (DATE AND HOUR) VARIABLES, # AND SET OTHER DATE/TIME VARIABLES ########################################################### export PDY=$PDY setpdy.sh . ./PDY export DAT=${PDY}${HOUR} ########################################################### # DEFINE COMIN/COMOUT DIRECTORIES, CREATE COMOUT IF # DIRECTORY DOES NOT EXIST ########################################################### export COMIN=${COMIN:-$(compath.py ${envir}/com/${NET}/${lmp_ver})/${RUN}.${PDY}} export COMOUT=${COMOUT:-$(compath.py -o ${NET}/${lmp_ver})/${RUN}.${PDY}} mkdir -m 775 -p ${COMOUT} env ########################################################### # DEFINE THE SEASON ########################################################### MMDD=`printf ${PDY} | cut -c5-8` num0=`echo $MMDD | cut -c 1` if [[ $num0 -eq 0 ]]; then MMDD=`echo $MMDD | cut -c 2-4` else MMDD=$MMDD fi if [[ ${MMDD} -ge 316 && ${MMDD} -le 630 ]]; then export SEASON=03160630 elif [[ ${MMDD} -ge 701 && ${MMDD} -le 1015 ]]; then export SEASON=07011015 else export SEASON=10160315 fi ########################################################### # SET UP DIRECTORY PATHS DEPENDENT ON DATE VARIABLES ########################################################### ##################################################### # SET UP POE ##################################################### rm -f ${DATA}/mpmdscript runlist1="cnv ltg" runlist2="01 02 03 04 05 06 07" for run1 in ${runlist1} do for run2 in ${runlist2} do echo "${SCRlmp}/exlmp_1hcnvltg_fcst.sh ${run1} ${run2}" >> ${DATA}/mpmdscript done done ############################################################# # EXECUTE THE POESCRIPT ############################################################# chmod 775 ${DATA}/mpmdscript export MP_PGMMODEL=mpmd export MP_LABELIO=YES mpiexec --configfile $DATA/mpmdscript export err=$?; err_chk set +x i=0 for run1 in $runlist1 do for run2 in $runlist2 do echo "############# OUTPUT FOR RUN ${run1}-${run2} #################" cat ${DATA}/${run1}${run2}/${pgmout} echo "###################################################" let i=i+1 done done set -x #cat ${pgmout} ########################################################### # DELETE WORKING DIRECTORY ########################################################### cd $DATAROOT if [ "${KEEPDATA^^}" != "YES" ]; then rm -fr ${DATA} fi date