## Configures input sources for the hwrf.input module

# This file is read in after the hwrf.conf file, and specifies where
# to get input data.  The hwrf.input classes read this to figure out
# where to pull data from (over network or tape) and where to put it
# in staging areas.

## WCOSS: Input locations for the production HWRF
[wcoss_fcst_nco]
gfs={ENV[COMINgfs]}/gfs.{aYMD}/{aHH}/atmos/          ;; GFS directory
gdas1={ENV[COMINgdas]}/gdas.{aYMD}/{aHH}/atmos/      ;; GDAS directory
enkf={ENV[COMINgfs]}/enkfgdas.{aYMD}/{aHH}/atmos/  ;; GFS ENKF directory
obsproc={ENV[COMINobs]}/gfs.{aYMD}/{aHH}/atmos/
messages={ENV[COMINmsg]}/                ;; Hurricane message file directory
syndatdir={ENV[COMINarch]}               ;; TCVitals directory
loopdata={ENV[COMINnhc]}                 ;; Loop current data directory
hd_obs=/deliberately/invalid/path        ;; hdobs directory
nexrad_obs=/deliberately/invalid/path    ;; nexrad_obs data directory
dcom={ENV[DCOMROOT]}/           ;; dcom directory
gfswave={ENV[COMINgfs]}/gfs.{aYMD}/{aHH}/wave/station        ;; gfswave root directory for wave boundary condition
gdaswave={ENV[COMINgdas]}/gdas.{aYMD}/{aHH}/wave/restart     ;; gdaswave root directory for wave initial condition
rtofs={ENV[COMINrtofs]}/rtofs.{aYMD}/    ;; RTOFS root directory for each cycle.
rtofsstage={WORKhwrf}/hycominit/RTOFSDIR

## Use GFS master GRIB2 file, only available in production:
##gfs_gribA         = gfs.t{aHH}z.master.grb2f{fahr:02d}

## Use GDAS master GRIB2 file, only available in production:
##gdas1_gribA = gdas1.t{aHH}z.master.grb2f{fahr:02d}

@inc=gfs2020_naming,prod_loop_naming,rtofs_naming,ww3_naming ;; Include naming info from other sections

[com_canned] # Canned cases for NCO
gfs=/com_canned/hur/{ENV[envir]}/inpdata_{aYMDH}/      ;; GFS directory
gdas1=/com_canned/hur/{ENV[envir]}/inpdata_{aYMDH}/    ;; GDAS directory
enkf=/com_canned/hur/{ENV[envir]}/inpdata_{aYMDH}/     ;; GFS ENKF directory
messages=/com_canned/hur/{ENV[envir]}/inpdata_a{YMDH}/ ;; hurricane message file directory
syndat={ENV[COMINARCH]}/                               ;; syndat directory
loopdata=/nhc/save/guidance/storm-data/ncep/           ;; loop current directory
@inc=gfs2020_naming,prod_loop_naming,rtofs_naming,ww3_naming ;; Include naming info from other sections

[nco_com_env]
comroot=/com                                       ;; COM location
envir={ENV[envir|-prod]}                           ;; run environment (para, prod or test)
#- datasets -#
gfs={comroot}/gfs/{envir}/gfs.{aYMD}/              ;; GFS directory
gdas1={comroot}/gfs/{envir}/gdas.{aYMD}/           ;; GDAS directory
gefs={comroot}/gens/{envir}/gefs.{aYMD}/{aHH}/     ;; GEFS directory
enkf={comroot}/gfs/{envir}/enkf.{aYMD}/{aHH}/      ;; GFS ENKF directory
messages={comroot}/hur/{envir}/inpdata/            ;; hurricane message file directory
syndatdir={ENV[COMINARCH|-/com/arch/prod/syndat]}/ ;; syndat tcvitals directory
loopdata=/nhc/save/guidance/storm-data/ncep/       ;; loop current directory
hd_obs={WORKhwrf}/RECON/gdas.{aYMD}/               ;; hdobs directory
nexrad_obs={WORKhwrf}/NEXRAD/nexrad.{aYMD}/        ;; nexrad_obs data directory
tdr={WORKhwrf}/TDR/{aYYYY}/{aYMDH}/{vit[stnum]:02d}{vit[basin1lc]}/ ;; TDR location
g4tdrso={WORKhwrf}/G4TDRSO/{aYYYY}/{aYMDH}/{vit[stnum]:02d}{vit[basin1lc]}/
tdrso={WORKhwrf}/TDRSO/{aYYYY}/{aYMDH}/{vit[stnum]:02d}{vit[basin1lc]}/
hiwrapso={WORKhwrf}/HIWRAPSO/{aYYYY}/{aYMDH}/{vit[stnum]:02d}{vit[basin1lc]}/
@inc=gfs2020_naming,prod_loop_naming,rtofs_naming,ww3_naming ;; Include naming info from other sections

[gfs2020_naming]
gfs_sf            = gfs.t{aHH}z.atmf{fahr:03d}.nc  ;; GFS NEMSIO forecast
gfs_sfcanl        = gfs.t{aHH}z.sfcanl.nc           ;; GFS NEMSIO surface analysis
gfs_sanl          = gfs.t{aHH}z.atmanl.nc           ;; GFS NEMSIO analysis
gfs_bufr          = gfs.t{aHH}z.{obstype}.tm00.bufr_d   ;; GFS bufr files
gfs_abias         = gfs.t{aHH}z.abias                   ;; bias correction
tcvitals_tm00     = gfs.t{aHH}z.syndata.tcvitals.tm00   ;; time 0 tcvitals
gfs_prepbufr_rst  = gfs.t{aHH}z.prepbufr                ;; prepbufr data, restricted
gfs_prepbufr_nr   = gfs.t{aHH}z.prepbufr.nr             ;; prepbufr data, non-restricted

enkf_sfg          = mem{enkfmem:03d}/gdas.t{aHH}z.atmf{fahr:03d}.nc ;; GFS ENKF forecast
enkf_siganl       = mem{enkfmem:03d}/gdas.t{aHH}z.ratminc.nc     ;; GFS ENKF analysis increment

gdas1_bufr        = gdas.t{aHH}z.{obstype}.tm00.bufr_d ;; GDAS bufr data
gdas1_biascr      = gdas.t{aHH}z.abias                 ;; GDAS bias correction abias file
gdas1_biascr_pc   = gdas.t{aHH}z.abias_pc              ;; GDAS bias correction abias_pc file
gdas1_sf          = gdas.t{aHH}z.atmf{fahr:03d}.nc  ;; GDAS spectral forecast

gfs_gribA         = gfs.t{aHH}z.pgrb2.0p25.f{fahr:03d}  ;; GFS GRIB on standard levels
gfs_gribB         = gfs.t{aHH}z.pgrb2b.0p25.f{fahr:03d} ;; GFS GRIB on "in-between" levels

gdas1_gribA       = gdas.t{aHH}z.pgrb2.0p25.f{fahr:03d}  ;; GDAS GRIB on standard levels
gdas1_gribB       = gdas.t{aHH}z.pgrb2b.0p25.f{fahr:03d} ;; GDAS GRIB on "in-between" levels

gfs_sfluxgrb      = gfs.t{aHH}z.pgrb2.0p25.f{fahr:03d}     ;; GFS surface flux files
gdas1_sfluxgrb    = gdas.t{aHH}z.pgrb2.0p25.f{fahr:03d}   ;; GDAS surface flux files

nexrad_bufr       = nam.t{aHH}z.nexrad.tm00.bufr_d

tempdropsonm      = dropsonde.{aYMDH}.tar

[ww3_naming]
ww3bdy_ibp=gfswave.t{aHH}z.ibp_tar
ww3rst_gnh_10m={ap6YMD}.{ap6HH}0000.restart.gnh_10m

[prod_loop_naming]
gfdl_loop         = gfdl_loop_current_rmy5.dat
gfdl_wc_ring      = gfdl_loop_current_wc_ring_rmy5.dat

[rtofs_naming]
rtofs_fcst_name=./rtofs_glo.t00z.f{fahr:02d}.archv.{ab}
rtofs_now_name=./rtofs_glo.t00z.n00.archv.{ab}
rtofs_rst_name=./rtofs_glo.t00z.n00.restart.{ab}
rtofs_past_name=./rtofs_glo.t00z.n{fahr:03d}.archv.{ab}
rtofs_fcst=./rtofs_glo.t00z.f{fahr:02d}.archv.{ab}
rtofs_now=./rtofs_glo.t00z.n00.archv.{ab}
rtofs_rst=./rtofs_glo.t00z.n00.restart.{ab}