*********************************************************************
How to use the drivers for WAFS jobs
*********************************************************************

There are 4 WAFS jobs and their corresponding drivers
JGFS_WAFS   <-> run_JGFS_WAFS.cray
JGFS_WAFS_GRIB2		<-> run_JGFS_WAFS_GRIB2.cray
JGFS_WAFS_BLENDING	<-> run_JGFS_WAFS_BLENDING.cray
JGFS_WAFS_GCIP		    <-> run_JGFS_WAFS_GCIP.cray

JGFS_WAFS_BLENDING is a downstream of JGFS_WAFS_GRIB2 and
should run after JGFS_WAFS_GRIB2

JGFS_WAFS_GCIP has satellite and radar data inputs, and METAR SHIP PIREPs 
data which are dumped from DCOMROOT by using 'dumpjb'

Step 1:
=====================
After a user downloads/checkouts the project tag.
1) cd sorc
2) sh build_wafs_cray.sh

Project location, defined by HOMEgfs
export NWROOT=/gpfs/hps/emc/global/noscrub/Yali.Mao/project
export HOMEgfs=${HOMEgfs:-${NWROOT}/wafs_cray.${gfs_ver}}

A user needs to modify NWROOT or HOMEgfs to the project location 


Step 2:
=====================
Canned model data:
/gpfs/hps/emc/global/noscrub/Yali.Mao/datainput/com2/gfs/para/gfs.20161101

So first set the specific data:
export PDY=20161101

1) For run_JGFS_WAFS.cray, run_JGFS_WAFS_GRIB2.cray,
It's optional for a user to modify the input data location, COMROOT or COMIN:
export COMROOT=/gpfs/hps/emc/global/noscrub/Yali.Mao/datainput/com2
export COMIN=$COMROOT/gfs/$envir/gfs.$PDY

2) JGFS_WAFS_BLENDING has two inputs, UK and US.
US data is a downstream product of JGFS_WAFS_GRIB2, so COMINus needs to point to
PCOM of run_JGFS_WAFS_GRIB2.cray:
export COMINus=

UK data is from DCOM, currently copied DCOM from Phase 1. For canned data, it's at:
/gpfs/hps/emc/global/noscrub/Yali.Mao/datainput/dcom/us007003/20161101/wgrbbul/ukmet_wafs
export DCOMROOT=/gpfs/hps/emc/global/noscrub/Yali.Mao/datainput/dcom
export COMINuk=${COMINuk:-$DCOMROOT/us007003/$PDY/wgrbbul/ukmet_wafs}

It's optional for a user to change either DCOMROOT or COMINuk to where the input UK data is.

3) JGFS_WAFS_GCIP has 4 inputs: model data, bufr, satellite and radar 

Canned model data location: 
/gpfs/hps/emc/global/noscrub/Yali.Mao/datainput/com2/gfs/para/gfs.20161101
It's optional for a user to modify the input data location, COMROOT or COMINgfs:
export COMROOT=/gpfs/hps/emc/global/noscrub/Yali.Mao/datainput/com2
export COMINgfs=$COMROOT/gfs/$envir/gfs.$PDY

BUFR data is dumped from DCOM.
export DCOMROOT=/gpfs/hps/emc/global/noscrub/Yali.Mao/datainput/dcom
dumpjb searches data in b000 b001 b004 b007 under DCOMROOT.
Though it's optional to modify DCOMROOT for dumping BUFR data, it should be mentioned
DCOMROOT of satellite data may be affected.

Satellite data, currently copied from DCOM on Phase1. For canned data, it's at:
/gpfs/hps/emc/global/noscrub/Yali.Mao/datainput/dcom/us007003/20161101/mcidas/
It's optional for a user to modify the input data location, DCOMROOT or COMINsat:
export DCOMROOT=/gpfs/hps/emc/global/noscrub/Yali.Mao/datainput/dcom
export COMINsat=${COMINsat:-$DCOMROOT/us007003/$PDY/mcidas}

Radar data, currently copied from COM on Phase1. For canned data, it's at:
/gpfs/hps/emc/global/noscrub/Yali.Mao/datainput/com/hourly/prod/radar.20161101/
It's optional for a user to modify the input data location, COMROOTp1 or COMINradar
export COMROOTp1=/gpfs/hps/emc/global/noscrub/Yali.Mao/datainput/com
export COMINradar=${COMINradar:-$COMROOTp1/hourly/prod/radar.$PDY}

Step 3:
=====================
Change working folder:
export DATA=

Change product output folder:
export COMOUT=
(for run_JGFS_WAFS_GRIB2.cray, PCOM needs to be specified to be an input of JGFS_WAFS_BLENDING)
export PCOMROOT=
export PCOM=

Change file names of error messages and script printout:
#BSUB -oo
#BSUB -eo


*********************************************************************
How to test and test results
*********************************************************************
Test by comparing outputs to operational products in different ways.
1) Use wgrib2 to check date, cycle and forecast hour are correct.
2) Check the number of fields and records are correct by comparing the
   control files generated by g2ctl
3) Plot and compare by using GrADS to have a sanity check whether 
   the differences are reasonable.

The operational products are saved at:
/gpfs/hps/emc/global/noscrub/Yali.Mao/dataprod/com2/gfs/prod/gfs.20161101

The parallel WAFS outputs and sample test results are displayed by *.png images at:
/gpfs/hps/emc/global/noscrub/Yali.Mao/dataoutput