#!/bin/ksh set -xue export PS4='$SECONDS + ' date ########################################################## ########################################################## export DATA=${DATA:-${DATAROOT:?}/${jobid:?}} mkdir -p $DATA cd $DATA cp $(which postmsg) $DATA # need to call this because the obsproc VS is not NCO stanards complliant. export tmmark=tm00 export cycle=t${cyc}z ########################## # Specify NET and RUN Name ########################## export NET=cfs export RUN=cdas export RUN1=cdas1 #################################### # Determine Job Output Name on System #################################### export pgmout="OUTPUT.$$" ########################################################## # define cfs directories/scripts/executables ########################################################## export EXECcfs=$HOMEcfs/exec export PARMcfs=$HOMEcfs/parm export USHcfs=$HOMEcfs/ush export FIXcfs=$HOMEcfs/fix export HOMEobsproc=${HOMEobsproc:-${PACKAGEROOT}/obsproc.${obsproc_ver}} export PARMPREP=$PARMcfs/cfs_parm_prep export PARMSYND=$PARMcfs/cfs_parm_prep ############################## # Run setpdy and initialize PDY variables ############################## sh setpdy.sh . ./PDY ############################################## # Define COM directories ############################################## export COMROT=$(compath.py -o ${NET}/${cfs_ver}) export COMIN=$(compath.py -o ${NET}/${cfs_ver}/${RUN}.${PDY}) export COMOUT=$(compath.py -o ${NET}/${cfs_ver}/${RUN}.${PDY}) mkdir -m775 -p $COMOUT ############################################## # Specify varaibles specific to this execution of script ############################################## export OMP_NUM_THREADS=1 export POE=YES # NPROCS indicates the number of POE tasks # {Applies only when PREPDATA=YES below and POE=YES (default)} export NPROCS=$NCPUS # NSPLIT indicates the number of tasks for running PREPDATA # (PREPDATA processing will be split into this many parts) # {Applies only when PREPDATA=YES below and POE=YES (default)} # (must be .le. $NPROCS) export NSPLIT=$NPROCS # BUFRLIST indicates the list of BUFR data dump file names to process export BUFRLIST=${BUFRLIST:-"adpupa proflr aircar aircft satwnd adpsfc sfcshp vadwnd wdsatr ascatw rassda gpsipw"} # VARIABLES THAT CONTROL PROCESSING OF INDIVIDUAL PROGRAMS # -------------------------------------------------------- # -- These can individually be switched to NO without affecting the # success of other programs and the success of the complete job # (all should normally be set to YES unless otherwise specified; # if job fails in one of these programs, set offending program # to NO and resubmit to "work-around" problem) export SYNDATA=${SYNDATA:-YES} # Execute program SYNDAT_SYNDATA if YES export PREPACQC=${PREPACQC:-YES} # Execute PREPACQC script processing export PROCESS_ACQC=YES # Run program PREPOBS_PREPACQC export PROCESS_ACPF=NO # Do not run program PREPOBS_PREPACPF (profiles are not generated in CFS) export PROFCQC=${PROFCQC:-YES} # Execute program PREPOBS_PROFCQC if YES export CQCVAD=${CQCVAD:-YES} # Execute program PREPOBS_CQCVAD if YES export CQCBUFR=${CQCBUFR:-YES} # Execute program PREPOBS_CQCBUFR if YES export OIQCBUFR=${OIQCBUFR:-YES} # Execute program PREPOBS_OIQCBUFR if YES # -- If any of these are switched to NO it will affect the success of # other programs and the success of the complete job # (these are set-up only for CHECKOUT runs - they should always # be set to YES for operational runs) export PREPDATA=YES # Execute programs PREPOBS_MPCOPYBUFR, PREPOBS_PREPDATA, # PREPOBS_LISTHEADERS and PREPOBS_MONOPREPBUFR if YES export GETGUESS=YES # Encode first guess (background) values interpolated to # observation locations in the PREPBUFR file for use by # the q.c. programs. This guess is always from a global # sigma guess file valid at the center PREPBUFR # processing date/time. #export envir_getges=$(basename $COMROT) #export envir_getges=${envir_getges:-${envir:-prod}} #export USHGETGES=$HOMEcfs/global_shared_cfs/ush #export USHGETGES=$HOMEprepobs/ush #export network_getges=cfs-cdas export DO_QC=YES # IF NO, programs PREPOBS_PREPACQC, PREPOBS_PREPACPF, # HOMEgfs is directory path to prepobs_errtable.global (PRVT), used in # prepobs_makeprepbufr.sh and its child scripts prepobs_syndata.sh and # prepobsp_prevents.sh. export HOMEgfs=${HOMEgfs:-$(compath.py gfs/${gfs_ver})} export PRVT=$HOMEgfs/fix/prepobs_errtable.global #export OIQCT=$FIXcfs/cfs_fix_cdas/prepobs_oiqc.oberrs export OIQCX=${OIQCX:-$EXECcfs/prepobs_oiqcbufr} #export USHOIQC=$HOMEcfs/ush export ushscript_prep=${ushscript_prep:-$USHprepobs} env ############################################################# # execute the script - use CFS cfs_vers of makeprepbufr ############################################################# RUN=$RUN1 ${PREPSH:-$HOMEcfs/scripts/exglobal_makeprepbufr.sh} export err=$?; err_chk cat $pgmout msg="ENDED NORMALLY." postmsg "$msg" ######################################## # Remove the Temporary working directory ######################################## cd $DATAROOT if [ ${KEEPDATA:-NO} = NO ] ; then rm -rf $DATA ; fi date