diff --git a/jobs/JGDAS_ATMOS_ANALYSIS_DIAG b/jobs/JGDAS_ATMOS_ANALYSIS_DIAG index f25da9b488..332ce23ff7 100755 --- a/jobs/JGDAS_ATMOS_ANALYSIS_DIAG +++ b/jobs/JGDAS_ATMOS_ANALYSIS_DIAG @@ -24,8 +24,6 @@ GDUMP=${GDUMP:-"gdas"} export OPREFIX="${CDUMP}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." export APREFIX="${CDUMP}.t${cyc}z." -export GSUFFIX=${GSUFFIX:-${SUFFIX}} -export ASUFFIX=${ASUFFIX:-${SUFFIX}} if [ ${RUN_ENVIR} = "nco" -o ${ROTDIR_DUMP:-NO} = "YES" ]; then @@ -44,7 +42,7 @@ export COMIN_GES="${ROTDIR}/${GDUMP}.${gPDY}/${gcyc}/atmos" export COMIN_GES_ENS="${ROTDIR}/enkfgdas.${gPDY}/${gcyc}" -export ATMGES="${COMIN_GES}/${GPREFIX}atmf006${GSUFFIX}" +export ATMGES="${COMIN_GES}/${GPREFIX}atmf006.nc" if [ ! -f ${ATMGES} ]; then echo "FATAL ERROR: FILE MISSING: ATMGES = ${ATMGES}" exit 1 @@ -52,7 +50,7 @@ fi if [ ${DOHYBVAR} = "YES" ]; then - export ATMGES_ENSMEAN="${COMIN_GES_ENS}/${GPREFIX}atmf006.ensmean${GSUFFIX}" + export ATMGES_ENSMEAN="${COMIN_GES_ENS}/${GPREFIX}atmf006.ensmean.nc" if [ ! -f ${ATMGES_ENSMEAN} ]; then echo "FATAL ERROR: FILE MISSING: ATMGES_ENSMEAN = ${ATMGES_ENSMEAN}" exit 2 diff --git a/jobs/JGDAS_ATMOS_CHGRES_FORENKF b/jobs/JGDAS_ATMOS_CHGRES_FORENKF index b1572e98cb..1e2e9ec2ac 100755 --- a/jobs/JGDAS_ATMOS_CHGRES_FORENKF +++ b/jobs/JGDAS_ATMOS_CHGRES_FORENKF @@ -25,9 +25,6 @@ GDUMP=${GDUMP:-"gdas"} export OPREFIX="${CDUMP}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." export APREFIX="${CDUMP}.t${cyc}z." -export GSUFFIX=${GSUFFIX:-${SUFFIX}} -export ASUFFIX=${ASUFFIX:-${SUFFIX}} - if [ ${RUN_ENVIR} = "nco" -o ${ROTDIR_DUMP:-NO} = "YES" ]; then export COMIN=${COMIN:-${ROTDIR}/${RUN}.${PDY}/${cyc}/atmos} diff --git a/jobs/JGDAS_ENKF_DIAG b/jobs/JGDAS_ENKF_DIAG index a9d65823c1..bc4c2eec49 100755 --- a/jobs/JGDAS_ENKF_DIAG +++ b/jobs/JGDAS_ENKF_DIAG @@ -29,8 +29,6 @@ export CDUMP_OBS=${CDUMP_OBS:-${CDUMP}} export OPREFIX="${CDUMP_OBS}.t${cyc}z." export APREFIX="${CDUMP}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." -export GSUFFIX="${GSUFFIX:-".ensmean${SUFFIX}"}" -export ASUFFIX="${ASUFFIX:-"${SUFFIX}"}" if [ ${RUN_ENVIR} = "nco" -o ${ROTDIR_DUMP:-NO} = "YES" ]; then export COMIN_OBS=${COMIN_OBS:-$(compath.py ${envir}/obsproc/${obsproc_ver})/${RUN}.${PDY}/${cyc}/${COMPONENT}} @@ -48,7 +46,7 @@ export COMIN_GES=${COMIN_GES_ENS} export COMOUT="${ROTDIR}/enkf${CDUMP}.${PDY}/${cyc}" -export ATMGES_ENSMEAN="${COMIN_GES_ENS}/${GPREFIX}atmf006${GSUFFIX}" +export ATMGES_ENSMEAN="${COMIN_GES_ENS}/${GPREFIX}atmf006.ensmean.nc" if [ ! -f ${ATMGES_ENSMEAN} ]; then echo "FATAL ERROR: FILE MISSING: ATMGES_ENSMEAN = ${ATMGES_ENSMEAN}" exit 1 diff --git a/jobs/JGDAS_ENKF_ECEN b/jobs/JGDAS_ENKF_ECEN index bf33ecc3f6..8a566a2b06 100755 --- a/jobs/JGDAS_ENKF_ECEN +++ b/jobs/JGDAS_ENKF_ECEN @@ -35,8 +35,6 @@ export OPREFIX="${CDUMP}.t${cyc}z." export APREFIX="${CDUMP}.t${cyc}z." export APREFIX_ENKF="${CDUMP_ENKF}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." -export GSUFFIX=${GSUFFIX:-${SUFFIX}} -export ASUFFIX=${ASUFFIX:-${SUFFIX}} if [ ${RUN_ENVIR} = "nco" -o ${ROTDIR_DUMP:-NO} = "YES" ]; then export COMIN_OBS=${COMIN_OBS:-$(compath.py ${envir}/obsproc/${obsproc_ver})/${RUN}.${PDY}/${cyc}/atmos} diff --git a/jobs/JGDAS_ENKF_SELECT_OBS b/jobs/JGDAS_ENKF_SELECT_OBS index 7995a68093..e456cec892 100755 --- a/jobs/JGDAS_ENKF_SELECT_OBS +++ b/jobs/JGDAS_ENKF_SELECT_OBS @@ -29,8 +29,7 @@ export CDUMP_OBS=${CDUMP_OBS:-${CDUMP}} export OPREFIX="${CDUMP_OBS}.t${cyc}z." export APREFIX="${CDUMP}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." -export GSUFFIX="${GSUFFIX:-".ensmean${SUFFIX}"}" -export ASUFFIX="${ASUFFIX:-"${SUFFIX}"}" +export GSUFFIX=".ensmean.nc" if [ ${RUN_ENVIR} = "nco" -o ${ROTDIR_DUMP:-NO} = "YES" ]; then export COMIN_OBS=${COMIN_OBS:-$(compath.py ${envir}/obsproc/${obsproc_ver})/${RUN}.${PDY}/${cyc}/${COMPONENT}} diff --git a/jobs/JGDAS_ENKF_SFC b/jobs/JGDAS_ENKF_SFC index 06c2c32391..dc5cff2b00 100755 --- a/jobs/JGDAS_ENKF_SFC +++ b/jobs/JGDAS_ENKF_SFC @@ -35,8 +35,6 @@ export OPREFIX="${CDUMP}.t${cyc}z." export APREFIX="${CDUMP}.t${cyc}z." export APREFIX_ENKF="${CDUMP_ENKF}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." -export GSUFFIX=${GSUFFIX:-${SUFFIX}} -export ASUFFIX=${ASUFFIX:-${SUFFIX}} if [ ${RUN_ENVIR} = "nco" -o ${ROTDIR_DUMP:-NO} = "YES" ]; then export COMIN_OBS=${COMIN_OBS:-$(compath.py ${envir}/obsproc/${obsproc_ver})/${RUN}.${PDY}/${cyc}/atmos} diff --git a/jobs/JGDAS_ENKF_UPDATE b/jobs/JGDAS_ENKF_UPDATE index ae3ddb0145..55ad4a05ae 100755 --- a/jobs/JGDAS_ENKF_UPDATE +++ b/jobs/JGDAS_ENKF_UPDATE @@ -22,9 +22,6 @@ gcyc=$(echo ${GDATE} | cut -c9-10) export APREFIX="${CDUMP}.t${cyc}z." export GPREFIX="gdas.t${gcyc}z." -export ASUFFIX=${ASUFFIX:-${SUFFIX}} -export GSUFFIX=${GSUFFIX:-${SUFFIX}} - # COMIN_GES_ENS and COMOUT_ANL_ENS are used in script export COMIN_GES_ENS="${ROTDIR}/enkfgdas.${gPDY}/${gcyc}" diff --git a/jobs/JGDAS_GLOBAL_ATMOS_ANALYSIS_POST b/jobs/JGDAS_GLOBAL_ATMOS_ANALYSIS_POST index 49dcd5f21c..e44e607581 100755 --- a/jobs/JGDAS_GLOBAL_ATMOS_ANALYSIS_POST +++ b/jobs/JGDAS_GLOBAL_ATMOS_ANALYSIS_POST @@ -23,8 +23,6 @@ export GDUMP=${GDUMP:-"gdas"} export OPREFIX="${CDUMP}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." export APREFIX="${CDUMP}.t${cyc}z." -export GSUFFIX=${GSUFFIX:-${SUFFIX}} -export ASUFFIX=${ASUFFIX:-${SUFFIX}} export COMOUT=${COMOUT:-${ROTDIR}/${CDUMP}.${PDY}/${cyc}/${COMPONENT}} diff --git a/jobs/JGDAS_GLOBAL_ATMOS_ANALYSIS_PREP b/jobs/JGDAS_GLOBAL_ATMOS_ANALYSIS_PREP index 9a21d032e2..093fccdd5a 100755 --- a/jobs/JGDAS_GLOBAL_ATMOS_ANALYSIS_PREP +++ b/jobs/JGDAS_GLOBAL_ATMOS_ANALYSIS_PREP @@ -23,8 +23,6 @@ export GDUMP=${GDUMP:-"gdas"} export OPREFIX="${CDUMP}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." export APREFIX="${CDUMP}.t${cyc}z." -export GSUFFIX=${GSUFFIX:-${SUFFIX}} -export ASUFFIX=${ASUFFIX:-${SUFFIX}} export COMOUT=${COMOUT:-${ROTDIR}/${CDUMP}.${PDY}/${cyc}/${COMPONENT}} diff --git a/jobs/JGDAS_GLOBAL_ATMOS_ANALYSIS_RUN b/jobs/JGDAS_GLOBAL_ATMOS_ANALYSIS_RUN index 32722f4ba3..876598ff7e 100755 --- a/jobs/JGDAS_GLOBAL_ATMOS_ANALYSIS_RUN +++ b/jobs/JGDAS_GLOBAL_ATMOS_ANALYSIS_RUN @@ -23,8 +23,6 @@ export GDUMP=${GDUMP:-"gdas"} export OPREFIX="${CDUMP}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." export APREFIX="${CDUMP}.t${cyc}z." -export GSUFFIX=${GSUFFIX:-${SUFFIX}} -export ASUFFIX=${ASUFFIX:-${SUFFIX}} export COMOUT=${COMOUT:-${ROTDIR}/${CDUMP}.${PDY}/${cyc}/${COMPONENT}} diff --git a/jobs/JGDAS_GLOBAL_ATMOS_ENSANAL_POST b/jobs/JGDAS_GLOBAL_ATMOS_ENSANAL_POST index 6022cc548a..e1d53b552e 100755 --- a/jobs/JGDAS_GLOBAL_ATMOS_ENSANAL_POST +++ b/jobs/JGDAS_GLOBAL_ATMOS_ENSANAL_POST @@ -23,8 +23,6 @@ export GDUMP=${GDUMP:-"gdas"} export OPREFIX="${CDUMP}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." export APREFIX="${CDUMP}.t${cyc}z." -export GSUFFIX=${GSUFFIX:-${SUFFIX}} -export ASUFFIX=${ASUFFIX:-${SUFFIX}} export COMOUT=${COMOUT:-${ROTDIR}/${CDUMP}.${PDY}/${cyc}/${COMPONENT}} export COMOUT_ENS=${COMOUT_ENS:-${ROTDIR}/enkf${CDUMP}.${PDY}/${cyc}/${COMPONENT}} diff --git a/jobs/JGDAS_GLOBAL_ATMOS_ENSANAL_PREP b/jobs/JGDAS_GLOBAL_ATMOS_ENSANAL_PREP index 48b4a5b99b..7b3ecee7ca 100755 --- a/jobs/JGDAS_GLOBAL_ATMOS_ENSANAL_PREP +++ b/jobs/JGDAS_GLOBAL_ATMOS_ENSANAL_PREP @@ -23,8 +23,6 @@ export GDUMP=${GDUMP:-"gdas"} export OPREFIX="${CDUMP}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." export APREFIX="${CDUMP}.t${cyc}z." -export GSUFFIX=${GSUFFIX:-${SUFFIX}} -export ASUFFIX=${ASUFFIX:-${SUFFIX}} export COMOUT=${COMOUT:-${ROTDIR}/${CDUMP}.${PDY}/${cyc}/${COMPONENT}} export COMOUT_ENS=${COMOUT_ENS:-${ROTDIR}/enkf${CDUMP}.${PDY}/${cyc}/${COMPONENT}} diff --git a/jobs/JGDAS_GLOBAL_ATMOS_ENSANAL_RUN b/jobs/JGDAS_GLOBAL_ATMOS_ENSANAL_RUN index 2afbc9028e..45368d51ff 100755 --- a/jobs/JGDAS_GLOBAL_ATMOS_ENSANAL_RUN +++ b/jobs/JGDAS_GLOBAL_ATMOS_ENSANAL_RUN @@ -23,8 +23,6 @@ export GDUMP=${GDUMP:-"gdas"} export OPREFIX="${CDUMP}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." export APREFIX="${CDUMP}.t${cyc}z." -export GSUFFIX=${GSUFFIX:-${SUFFIX}} -export ASUFFIX=${ASUFFIX:-${SUFFIX}} export COMOUT=${COMOUT:-${ROTDIR}/${CDUMP}.${PDY}/${cyc}/${COMPONENT}} export COMOUT_ENS=${COMOUT_ENS:-${ROTDIR}/enkf${CDUMP}.${PDY}/${cyc}/${COMPONENT}} diff --git a/jobs/JGDAS_GLOBAL_OCEAN_ANALYSIS_PREP b/jobs/JGDAS_GLOBAL_OCEAN_ANALYSIS_PREP index 6f4c4f29c3..8f51c2c1e1 100755 --- a/jobs/JGDAS_GLOBAL_OCEAN_ANALYSIS_PREP +++ b/jobs/JGDAS_GLOBAL_OCEAN_ANALYSIS_PREP @@ -24,8 +24,6 @@ export GDUMP=${GDUMP:-"gdas"} export OPREFIX="${CDUMP}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." export APREFIX="${CDUMP}.t${cyc}z." -export GSUFFIX=${GSUFFIX:-${SUFFIX}} -export ASUFFIX=${ASUFFIX:-${SUFFIX}} export COMOUT=${COMOUT:-${ROTDIR}/${CDUMP}.${PDY}/${cyc}/ocean} diff --git a/jobs/JGLOBAL_ATMOS_ANALYSIS b/jobs/JGLOBAL_ATMOS_ANALYSIS index ef504ba708..7c2a11b4be 100755 --- a/jobs/JGLOBAL_ATMOS_ANALYSIS +++ b/jobs/JGLOBAL_ATMOS_ANALYSIS @@ -27,8 +27,6 @@ GDUMP=${GDUMP:-"gdas"} export OPREFIX="${CDUMP}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." export APREFIX="${CDUMP}.t${cyc}z." -export GSUFFIX=${GSUFFIX:-${SUFFIX}} -export ASUFFIX=${ASUFFIX:-${SUFFIX}} if [ ${RUN_ENVIR} = "nco" -o ${ROTDIR_DUMP:-NO} = "YES" ]; then @@ -47,7 +45,7 @@ export COMIN_GES="${ROTDIR}/${GDUMP}.${gPDY}/${gcyc}/atmos" export COMIN_GES_ENS="${ROTDIR}/enkfgdas.${gPDY}/${gcyc}" -export ATMGES="${COMIN_GES}/${GPREFIX}atmf006${GSUFFIX}" +export ATMGES="${COMIN_GES}/${GPREFIX}atmf006.nc" if [ ! -f ${ATMGES} ]; then echo "FATAL ERROR: FILE MISSING: ATMGES = ${ATMGES}" exit 1 @@ -61,7 +59,7 @@ status=$? if [ ${DOHYBVAR} = "YES" ]; then - export ATMGES_ENSMEAN="${COMIN_GES_ENS}/${GPREFIX}atmf006.ensmean${GSUFFIX}" + export ATMGES_ENSMEAN="${COMIN_GES_ENS}/${GPREFIX}atmf006.ensmean.nc" if [ ! -f ${ATMGES_ENSMEAN} ]; then echo "FATAL ERROR: FILE MISSING: ATMGES_ENSMEAN = ${ATMGES_ENSMEAN}" exit 2 diff --git a/jobs/JGLOBAL_ATMOS_ANALYSIS_CALC b/jobs/JGLOBAL_ATMOS_ANALYSIS_CALC index b2f0fda786..801fc8f465 100755 --- a/jobs/JGLOBAL_ATMOS_ANALYSIS_CALC +++ b/jobs/JGLOBAL_ATMOS_ANALYSIS_CALC @@ -25,9 +25,6 @@ GDUMP=${GDUMP:-"gdas"} export OPREFIX="${CDUMP}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." export APREFIX="${CDUMP}.t${cyc}z." -export GSUFFIX=${GSUFFIX:-${SUFFIX}} -export ASUFFIX=${ASUFFIX:-${SUFFIX}} - if [ ${RUN_ENVIR} = "nco" -o ${ROTDIR_DUMP:-NO} = "YES" ]; then export COMIN=${COMIN:-${ROTDIR}/${RUN}.${PDY}/${cyc}/atmos} @@ -45,7 +42,7 @@ export COMIN_GES="${ROTDIR}/${GDUMP}.${gPDY}/${gcyc}/atmos" export COMIN_GES_ENS="${ROTDIR}/enkfgdas.${gPDY}/${gcyc}" -export ATMGES="${COMIN_GES}/${GPREFIX}atmf006${GSUFFIX}" +export ATMGES="${COMIN_GES}/${GPREFIX}atmf006.nc" if [ ! -f ${ATMGES} ]; then echo "FATAL ERROR: FILE MISSING: ATMGES = ${ATMGES}" exit 1 @@ -59,7 +56,7 @@ status=$? if [ ${DOHYBVAR} = "YES" ]; then - export ATMGES_ENSMEAN="${COMIN_GES_ENS}/${GPREFIX}atmf006.ensmean${GSUFFIX}" + export ATMGES_ENSMEAN="${COMIN_GES_ENS}/${GPREFIX}atmf006.ensmean.nc" if [ ! -f ${ATMGES_ENSMEAN} ]; then echo "FATAL ERROR: FILE MISSING: ATMGES_ENSMEAN = ${ATMGES_ENSMEAN}" exit 2 diff --git a/jobs/JGLOBAL_ATMOS_SFCANL b/jobs/JGLOBAL_ATMOS_SFCANL index 151fd3d272..063438c9c7 100755 --- a/jobs/JGLOBAL_ATMOS_SFCANL +++ b/jobs/JGLOBAL_ATMOS_SFCANL @@ -27,9 +27,6 @@ GDUMP=${GDUMP:-"gdas"} export OPREFIX="${CDUMP}.t${cyc}z." export GPREFIX="${GDUMP}.t${gcyc}z." export APREFIX="${CDUMP}.t${cyc}z." -export GSUFFIX=${GSUFFIX:-${SUFFIX}} -export ASUFFIX=${ASUFFIX:-${SUFFIX}} - if [ ${RUN_ENVIR} = "nco" -o ${ROTDIR_DUMP:-NO} = "YES" ]; then export COMIN=${COMIN:-${ROTDIR}/${RUN}.${PDY}/${cyc}/atmos} @@ -47,7 +44,7 @@ export COMIN_GES="${ROTDIR}/${GDUMP}.${gPDY}/${gcyc}/atmos" export COMIN_GES_ENS="${ROTDIR}/enkfgdas.${gPDY}/${gcyc}" -export ATMGES="${COMIN_GES}/${GPREFIX}atmf006${GSUFFIX}" +export ATMGES="${COMIN_GES}/${GPREFIX}atmf006.nc" if [ ! -f ${ATMGES} ]; then echo "FATAL ERROR: FILE MISSING: ATMGES = ${ATMGES}" exit 1 diff --git a/jobs/rocoto/vrfy.sh b/jobs/rocoto/vrfy.sh index 53806c66a2..6324eec568 100755 --- a/jobs/rocoto/vrfy.sh +++ b/jobs/rocoto/vrfy.sh @@ -69,7 +69,7 @@ if [ ${VRFYFITS} = "YES" -a ${CDUMP} = ${CDFNL} -a ${CDATE} != ${SDATE} ]; then xdate=$(${NDATE} -${VBACKUP_FITS} ${CDATE}) export RUN_ENVIR_SAVE=${RUN_ENVIR} - export RUN_ENVIR=${OUTPUT_FILE} + export RUN_ENVIR="netcdf" ${PREPQFITSH} ${PSLOT} ${xdate} ${ROTDIR} ${ARCDIR} ${TMPDIR} diff --git a/parm/config/config.aero b/parm/config/config.aero old mode 100644 new mode 100755 diff --git a/parm/config/config.aerosol_init b/parm/config/config.aerosol_init old mode 100644 new mode 100755 diff --git a/parm/config/config.base.emc.dyn b/parm/config/config.base.emc.dyn index 348f6c1f84..42f86e0fa6 100755 --- a/parm/config/config.base.emc.dyn +++ b/parm/config/config.base.emc.dyn @@ -271,15 +271,9 @@ export restart_interval_gfs=0 export QUILTING=".true." export OUTPUT_GRID="gaussian_grid" -export OUTPUT_FILE="netcdf" -export WRITE_DOPOST=".true." # WRITE_DOPOST=true, use inline POST +export WRITE_DOPOST=".true." # WRITE_DOPOST=true, use inline POST export WRITE_NSFLIP=".true." -# suffix options depending on file format -export SUFFIX=".nc" -export NEMSIO_IN=".false." -export NETCDF_IN=".true." - # IAU related parameters export DOIAU="YES" # Enable 4DIAU for control with 3 increments export IAUFHRS="3,6,9" diff --git a/parm/config/config.base.nco.static b/parm/config/config.base.nco.static index 8d8301ced9..4e42a82863 100755 --- a/parm/config/config.base.nco.static +++ b/parm/config/config.base.nco.static @@ -162,23 +162,14 @@ export ILPOST=1 # gempak output frequency up to F120 # frequency for saving restart files. set to 6,12,24,48 etc export restart_interval_gfs=12 +# I/O QUILTING, true--use Write Component; false--use GFDL FMS +# if quilting=true, choose OUTPUT_GRID as cubed_sphere_grid in netcdf or gaussian_grid +# WRITE_DOPOST=true, use inline POST export QUILTING=".true." export OUTPUT_GRID="gaussian_grid" -export OUTPUT_FILE="netcdf" -export WRITE_DOPOST=".true." # WRITE_DOPOST=true, use inline POST +export WRITE_DOPOST=".true." # WRITE_DOPOST=true, use inline POST export WRITE_NSFLIP=".true." -# suffix options depending on file format -if [ $OUTPUT_FILE = "netcdf" ]; then - export SUFFIX=".nc" - export NEMSIO_IN=".false." - export NETCDF_IN=".true." -else - export SUFFIX=".nemsio" - export NEMSIO_IN=".true." - export NETCDF_IN=".false." -fi - # IAU related parameters export DOIAU="YES" # Enable 4DIAU for control with 3 increments export IAUFHRS="3,6,9" @@ -239,11 +230,6 @@ export nst_anl=.true. # Analysis increments to zero in CALCINCEXEC export INCREMENTS_TO_ZERO="'liq_wat_inc','icmr_inc'" -if [ $OUTPUT_FILE = "nemsio" ]; then - export DO_CALC_INCREMENT="YES" - export DO_CALC_ANALYSIS="NO" -fi - # Stratospheric increments to zero export INCVARS_ZERO_STRAT="'sphum_inc','liq_wat_inc','icmr_inc'" export INCVARS_EFOLD="5" diff --git a/parm/config/config.defaults.s2sw b/parm/config/config.defaults.s2sw old mode 100644 new mode 100755 diff --git a/parm/config/config.ice b/parm/config/config.ice old mode 100644 new mode 100755 diff --git a/parm/config/config.ocn b/parm/config/config.ocn old mode 100644 new mode 100755 diff --git a/parm/config/config.ocnanal b/parm/config/config.ocnanal old mode 100644 new mode 100755 diff --git a/parm/config/config.ocnanalpost b/parm/config/config.ocnanalpost old mode 100644 new mode 100755 diff --git a/parm/config/config.ocnanalrun b/parm/config/config.ocnanalrun old mode 100644 new mode 100755 diff --git a/parm/config/config.sfcanl b/parm/config/config.sfcanl old mode 100644 new mode 100755 diff --git a/scripts/exgdas_atmos_chgres_forenkf.sh b/scripts/exgdas_atmos_chgres_forenkf.sh index 254ab206f6..0662720c42 100755 --- a/scripts/exgdas_atmos_chgres_forenkf.sh +++ b/scripts/exgdas_atmos_chgres_forenkf.sh @@ -63,24 +63,23 @@ SIGLEVEL=${SIGLEVEL:-${FIXgsm}/global_hyblev.l${LEVS}.txt} # forecast files APREFIX=${APREFIX:-""} -ASUFFIX=${ASUFFIX:-$SUFFIX} # at full resolution -ATMF03=${ATMF03:-${COMOUT}/${APREFIX}atmf003${ASUFFIX}} -ATMF04=${ATMF04:-${COMOUT}/${APREFIX}atmf004${ASUFFIX}} -ATMF05=${ATMF05:-${COMOUT}/${APREFIX}atmf005${ASUFFIX}} -ATMF06=${ATMF06:-${COMOUT}/${APREFIX}atmf006${ASUFFIX}} -ATMF07=${ATMF07:-${COMOUT}/${APREFIX}atmf007${ASUFFIX}} -ATMF08=${ATMF08:-${COMOUT}/${APREFIX}atmf008${ASUFFIX}} -ATMF09=${ATMF09:-${COMOUT}/${APREFIX}atmf009${ASUFFIX}} +ATMF03=${ATMF03:-${COMOUT}/${APREFIX}atmf003.nc} +ATMF04=${ATMF04:-${COMOUT}/${APREFIX}atmf004.nc} +ATMF05=${ATMF05:-${COMOUT}/${APREFIX}atmf005.nc} +ATMF06=${ATMF06:-${COMOUT}/${APREFIX}atmf006.nc} +ATMF07=${ATMF07:-${COMOUT}/${APREFIX}atmf007.nc} +ATMF08=${ATMF08:-${COMOUT}/${APREFIX}atmf008.nc} +ATMF09=${ATMF09:-${COMOUT}/${APREFIX}atmf009.nc} # at ensemble resolution -ATMF03ENS=${ATMF03ENS:-${COMOUT}/${APREFIX}atmf003.ensres${ASUFFIX}} -ATMF04ENS=${ATMF04ENS:-${COMOUT}/${APREFIX}atmf004.ensres${ASUFFIX}} -ATMF05ENS=${ATMF05ENS:-${COMOUT}/${APREFIX}atmf005.ensres${ASUFFIX}} -ATMF06ENS=${ATMF06ENS:-${COMOUT}/${APREFIX}atmf006.ensres${ASUFFIX}} -ATMF07ENS=${ATMF07ENS:-${COMOUT}/${APREFIX}atmf007.ensres${ASUFFIX}} -ATMF08ENS=${ATMF08ENS:-${COMOUT}/${APREFIX}atmf008.ensres${ASUFFIX}} -ATMF09ENS=${ATMF09ENS:-${COMOUT}/${APREFIX}atmf009.ensres${ASUFFIX}} -ATMFCST_ENSRES=${ATMFCST_ENSRES:-${COMOUT_ENS}/mem001/atmos/${APREFIX}atmf006${ASUFFIX}} +ATMF03ENS=${ATMF03ENS:-${COMOUT}/${APREFIX}atmf003.ensres.nc} +ATMF04ENS=${ATMF04ENS:-${COMOUT}/${APREFIX}atmf004.ensres.nc} +ATMF05ENS=${ATMF05ENS:-${COMOUT}/${APREFIX}atmf005.ensres.nc} +ATMF06ENS=${ATMF06ENS:-${COMOUT}/${APREFIX}atmf006.ensres.nc} +ATMF07ENS=${ATMF07ENS:-${COMOUT}/${APREFIX}atmf007.ensres.nc} +ATMF08ENS=${ATMF08ENS:-${COMOUT}/${APREFIX}atmf008.ensres.nc} +ATMF09ENS=${ATMF09ENS:-${COMOUT}/${APREFIX}atmf009.ensres.nc} +ATMFCST_ENSRES=${ATMFCST_ENSRES:-${COMOUT_ENS}/mem001/atmos/${APREFIX}atmf006.nc} # Set script / GSI control parameters DOHYBVAR=${DOHYBVAR:-"NO"} diff --git a/scripts/exgdas_atmos_post.sh b/scripts/exgdas_atmos_post.sh index 441f8a92ab..895765c970 100755 --- a/scripts/exgdas_atmos_post.sh +++ b/scripts/exgdas_atmos_post.sh @@ -49,14 +49,8 @@ export JO=${LATB:-721} # specify default model output format: 3 for sigio and 4 # for nemsio export OUTTYP=${OUTTYP:-4} -export OUTPUT_FILE=${OUTPUT_FILE:-"netcdf"} export TCYC=${TCYC:-".t${cyc}z."} export PREFIX=${PREFIX:-${RUN}${TCYC}} -if (( OUTTYP == 4 )) ; then - export SUFFIX=".nc" -else - export SUFFIX= -fi export machine=${machine:-WCOSS2} ########################### @@ -75,11 +69,7 @@ export IDRT=${IDRT:-0} # IDRT=0 is setting for outputting grib files on lat/lon # Chuang: modify to process analysis when post_times is 00 stime="$(echo "${post_times}" | cut -c1-3)" export stime -if (( OUTTYP == 4 )) ; then - export loganl="${COMIN}/${PREFIX}atmanl${SUFFIX}" -else - export loganl="${COMIN}/${PREFIX}sanl" -fi +export loganl="${COMIN}/${PREFIX}atmanl.nc" if [[ "${stime}" = "anl" ]]; then if [[ -f "${loganl}" ]]; then @@ -109,12 +99,11 @@ if [[ "${stime}" = "anl" ]]; then fi [[ -f flxfile ]] && rm flxfile ; [[ -f nemsfile ]] && rm nemsfile - if (( OUTTYP == 4 )) ; then - ln -fs "${COMIN}/${PREFIX}atmanl${SUFFIX}" nemsfile - export NEMSINP=nemsfile - ln -fs "${COMIN}/${PREFIX}sfcanl${SUFFIX}" flxfile - export FLXINP=flxfile - fi + + ln -fs "${COMIN}/${PREFIX}atmanl.nc" nemsfile + export NEMSINP=nemsfile + ln -fs "${COMIN}/${PREFIX}sfcanl.nc" flxfile + export FLXINP=flxfile export PGBOUT=pgbfile export PGIOUT=pgifile export PGBOUT2=pgbfile.grib2 @@ -155,8 +144,8 @@ if [[ "${stime}" = "anl" ]]; then if [[ "${SENDDBN}" = 'YES' ]]; then run="$(echo "${RUN}" | tr '[:lower:]' '[:upper:]')" if [[ "${GRIBVERSION}" = 'grib2' ]]; then - "${DBNROOT}/bin/dbn_alert" MODEL "${run}_MSC_sfcanl" "${job}" "${COMOUT}/${PREFIX}sfc${fhr3}${SUFFIX}" - "${DBNROOT}/bin/dbn_alert" MODEL "${run}_SA" "${job}" "${COMIN}/${PREFIX}atm${fhr3}${SUFFIX}" + "${DBNROOT}/bin/dbn_alert" MODEL "${run}_MSC_sfcanl" "${job}" "${COMOUT}/${PREFIX}sfc${fhr3}.nc" + "${DBNROOT}/bin/dbn_alert" MODEL "${run}_SA" "${job}" "${COMIN}/${PREFIX}atm${fhr3}.nc" "${DBNROOT}/bin/dbn_alert" MODEL "GDAS_PGA_GB2" "${job}" "${COMOUT}/${PREFIX}pgrb2.1p00.${fhr3}" "${DBNROOT}/bin/dbn_alert" MODEL "GDAS_PGA_GB2_WIDX" "${job}" "${COMOUT}/${PREFIX}pgrb2.1p00.${fhr3}.idx" fi @@ -210,12 +199,10 @@ else ## not_anl if_stimes ############################### [[ -f flxfile ]] && rm flxfile [[ -f nemsfile ]] && rm nemsfile - if (( OUTTYP == 4 )) ; then - ln -sf "${COMIN}/${PREFIX}atmf${fhr}${SUFFIX}" nemsfile - export NEMSINP=nemsfile - ln -sf "${COMIN}/${PREFIX}sfcf${fhr}${SUFFIX}" flxfile - export FLXINP=flxfile - fi + ln -sf "${COMIN}/${PREFIX}atmf${fhr}.nc" nemsfile + export NEMSINP=nemsfile + ln -sf "${COMIN}/${PREFIX}sfcf${fhr}.nc" flxfile + export FLXINP=flxfile if (( d_fhr > 0 )); then export IGEN=${IGEN_FCST} @@ -313,8 +300,8 @@ else ## not_anl if_stimes # use post to generate Grib2 flux files if (( OUTTYP == 4 )) ; then - export NEMSINP=${COMIN}/${PREFIX}atmf${fhr}${SUFFIX} - export FLXINP=${COMIN}/${PREFIX}sfcf${fhr}${SUFFIX} + export NEMSINP=${COMIN}/${PREFIX}atmf${fhr}.nc + export FLXINP=${COMIN}/${PREFIX}sfcf${fhr}.nc if (( d_fhr == 0 )); then export PostFlatFile=${PARMpost}/postxconfig-NT-GFS-FLUX-F00.txt export CTLFILE=${PARMpost}/postcntrl_gfs_flux_f00.xml @@ -336,8 +323,8 @@ else ## not_anl if_stimes fi if [[ "${SENDDBN}" = 'YES' ]] && [[ "${RUN}" = 'gdas' ]] && (( d_fhr % 3 == 0 )); then - "${DBNROOT}/bin/dbn_alert" MODEL "${run}_SF" "${job}" "${COMOUT}/${PREFIX}atmf${fhr}${SUFFIX}" - "${DBNROOT}/bin/dbn_alert" MODEL "${run}_BF" "${job}" "${COMOUT}/${PREFIX}sfcf${fhr}${SUFFIX}" + "${DBNROOT}/bin/dbn_alert" MODEL "${run}_SF" "${job}" "${COMOUT}/${PREFIX}atmf${fhr}.nc" + "${DBNROOT}/bin/dbn_alert" MODEL "${run}_BF" "${job}" "${COMOUT}/${PREFIX}sfcf${fhr}.nc" "${DBNROOT}/bin/dbn_alert" MODEL "${run}_SGB_GB2" "${job}" "${COMOUT}/${PREFIX}sfluxgrbf${fhr}.grib2" "${DBNROOT}/bin/dbn_alert" MODEL "${run}_SGB_GB2_WIDX ""${job}" "${COMOUT}/${PREFIX}sfluxgrbf${fhr}.grib2.idx" fi diff --git a/scripts/exgdas_enkf_ecen.sh b/scripts/exgdas_enkf_ecen.sh index 32aed709c5..41467324b2 100755 --- a/scripts/exgdas_enkf_ecen.sh +++ b/scripts/exgdas_enkf_ecen.sh @@ -48,9 +48,7 @@ OPREFIX=${OPREFIX:-""} OSUFFIX=${OSUFFIX:-""} APREFIX=${APREFIX:-""} APREFIX_ENKF=${APREFIX_ENKF:-$APREFIX} -ASUFFIX=${ASUFFIX:-$SUFFIX} GPREFIX=${GPREFIX:-""} -GSUFFIX=${GSUFFIX:-$SUFFIX} # Variables NMEM_ENKF=${NMEM_ENKF:-80} @@ -111,12 +109,12 @@ for FHR in $(seq $FHMIN $FHOUT $FHMAX); do for imem in $(seq 1 $NMEM_ENKF); do memchar="mem"$(printf %03i $imem) - $NLN $COMIN_GES_ENS/$memchar/atmos/${GPREFIX}atmf00${FHR}${ENKF_SUFFIX}$GSUFFIX ./atmges_$memchar + $NLN $COMIN_GES_ENS/$memchar/atmos/${GPREFIX}atmf00${FHR}${ENKF_SUFFIX}.nc ./atmges_$memchar if [ $DO_CALC_INCREMENT = "YES" ]; then if [ $FHR -eq 6 ]; then - $NLN $COMIN_ENS/$memchar/atmos/${APREFIX_ENKF}atmanl$ASUFFIX ./atmanl_$memchar + $NLN $COMIN_ENS/$memchar/atmos/${APREFIX_ENKF}atmanl.nc ./atmanl_$memchar else - $NLN $COMIN_ENS/$memchar/atmos/${APREFIX_ENKF}atma00${FHR}$ASUFFIX ./atmanl_$memchar + $NLN $COMIN_ENS/$memchar/atmos/${APREFIX_ENKF}atma00${FHR}.nc ./atmanl_$memchar fi fi mkdir -p $COMOUT_ENS/$memchar @@ -128,15 +126,15 @@ for imem in $(seq 1 $NMEM_ENKF); do if [[ $RECENTER_ENKF = "YES" ]]; then if [ $DO_CALC_INCREMENT = "YES" ]; then if [ $FHR -eq 6 ]; then - $NLN $COMOUT_ENS/$memchar/atmos/${APREFIX}ratmanl$ASUFFIX ./ratmanl_$memchar + $NLN $COMOUT_ENS/$memchar/atmos/${APREFIX}ratmanl.nc ./ratmanl_$memchar else - $NLN $COMOUT_ENS/$memchar/atmos/${APREFIX}ratma00${FHR}$ASUFFIX ./ratmanl_$memchar + $NLN $COMOUT_ENS/$memchar/atmos/${APREFIX}ratma00${FHR}.nc ./ratmanl_$memchar fi else if [ $FHR -eq 6 ]; then - $NLN $COMOUT_ENS/$memchar/atmos/${APREFIX}ratminc$ASUFFIX ./ratminc_$memchar + $NLN $COMOUT_ENS/$memchar/atmos/${APREFIX}ratminc.nc ./ratminc_$memchar else - $NLN $COMOUT_ENS/$memchar/atmos/${APREFIX}ratmi00${FHR}$ASUFFIX ./ratminc_$memchar + $NLN $COMOUT_ENS/$memchar/atmos/${APREFIX}ratmi00${FHR}.nc ./ratminc_$memchar fi fi fi @@ -145,9 +143,9 @@ done if [ $DO_CALC_INCREMENT = "YES" ]; then # Link ensemble mean analysis if [ $FHR -eq 6 ]; then - $NLN $COMIN_ENS/${APREFIX_ENKF}atmanl.ensmean$ASUFFIX ./atmanl_ensmean + $NLN $COMIN_ENS/${APREFIX_ENKF}atmanl.ensmean.nc ./atmanl_ensmean else - $NLN $COMIN_ENS/${APREFIX_ENKF}atma00${FHR}.ensmean$ASUFFIX ./atmanl_ensmean + $NLN $COMIN_ENS/${APREFIX_ENKF}atma00${FHR}.ensmean.nc ./atmanl_ensmean fi # Compute ensemble mean analysis @@ -165,9 +163,9 @@ if [ $DO_CALC_INCREMENT = "YES" ]; then else # Link ensemble mean increment if [ $FHR -eq 6 ]; then - $NLN $COMIN_ENS/${APREFIX_ENKF}atminc.ensmean$ASUFFIX ./atminc_ensmean + $NLN $COMIN_ENS/${APREFIX_ENKF}atminc.ensmean.nc ./atminc_ensmean else - $NLN $COMIN_ENS/${APREFIX_ENKF}atmi00${FHR}.ensmean$ASUFFIX ./atminc_ensmean + $NLN $COMIN_ENS/${APREFIX_ENKF}atmi00${FHR}.ensmean.nc ./atminc_ensmean fi # Compute ensemble mean increment @@ -184,8 +182,8 @@ else export err=$?; err_chk # If available, link to ensemble mean guess. Otherwise, compute ensemble mean guess - if [ -s $COMIN_GES_ENS/${GPREFIX}atmf00${FHR}.ensmean$GSUFFIX ]; then - $NLN $COMIN_GES_ENS/${GPREFIX}atmf00${FHR}.ensmean$GSUFFIX ./atmges_ensmean + if [ -s $COMIN_GES_ENS/${GPREFIX}atmf00${FHR}.ensmean.nc ]; then + $NLN $COMIN_GES_ENS/${GPREFIX}atmf00${FHR}.ensmean.nc ./atmges_ensmean else DATAPATH="./" ATMGESNAME="atmges" @@ -220,11 +218,11 @@ if [ $RECENTER_ENKF = "YES" ]; then # GSI EnVar analysis if [ $FHR -eq 6 ]; then - ATMANL_GSI=$COMIN/${APREFIX}atmanl$ASUFFIX - ATMANL_GSI_ENSRES=$COMIN/${APREFIX}atmanl.ensres$ASUFFIX + ATMANL_GSI=$COMIN/${APREFIX}atmanl.nc + ATMANL_GSI_ENSRES=$COMIN/${APREFIX}atmanl.ensres.nc else - ATMANL_GSI=$COMIN/${APREFIX}atma00${FHR}$ASUFFIX - ATMANL_GSI_ENSRES=$COMIN/${APREFIX}atma00${FHR}.ensres$ASUFFIX + ATMANL_GSI=$COMIN/${APREFIX}atma00${FHR}.nc + ATMANL_GSI_ENSRES=$COMIN/${APREFIX}atma00${FHR}.ensres.nc fi # if we already have a ensemble resolution GSI analysis then just link to it @@ -237,15 +235,9 @@ if [ $RECENTER_ENKF = "YES" ]; then $NLN $ATMANL_GSI atmanl_gsi $NLN $ATMANL_GSI_ENSRES atmanl_gsi_ensres SIGLEVEL=${SIGLEVEL:-${FIXgsm}/global_hyblev.l${LEVS}.txt} - if [ ${SUFFIX} = ".nc" ]; then - $NLN $CHGRESNC chgres.x - chgresnml=chgres_nc_gauss.nml - nmltitle=chgres - else - $NLN $CHGRESNEMS chgres.x - chgresnml=fort.43 - nmltitle=nam - fi + $NLN $CHGRESNC chgres.x + chgresnml=chgres_nc_gauss.nml + nmltitle=chgres export OMP_NUM_THREADS=$NTHREADS_CHGRES @@ -322,11 +314,7 @@ if [ $DO_CALC_INCREMENT = "YES" ]; then fi export OMP_NUM_THREADS=$NTHREADS_CALCINC - if [ ${SUFFIX} = ".nc" ]; then - CALCINCEXEC=$CALCINCNCEXEC - else - CALCINCEXEC=$CALCINCNEMSEXEC - fi + CALCINCEXEC=$CALCINCNCEXEC export pgm=$CALCINCEXEC . prep_step diff --git a/scripts/exgdas_enkf_fcst.sh b/scripts/exgdas_enkf_fcst.sh index d75678a552..1c11decc26 100755 --- a/scripts/exgdas_enkf_fcst.sh +++ b/scripts/exgdas_enkf_fcst.sh @@ -60,7 +60,6 @@ export PREFIX_ATMINC=${PREFIX_ATMINC:-""} # Ops related stuff SENDECF=${SENDECF:-"NO"} SENDDBN=${SENDDBN:-"NO"} -GSUFFIX=${GSUFFIX:-$SUFFIX} ################################################################################ # Preprocessing @@ -185,7 +184,7 @@ for imem in $(seq $ENSBEG $ENSEND); do while [ $fhr -le $FHMAX ]; do FH3=$(printf %03i $fhr) if [ $(expr $fhr % 3) -eq 0 ]; then - $DBNROOT/bin/dbn_alert MODEL GFS_ENKF $job $COMOUT/$memchar/atmos/${CDUMP}.t${cyc}z.sfcf${FH3}${GSUFFIX} + $DBNROOT/bin/dbn_alert MODEL GFS_ENKF $job $COMOUT/$memchar/atmos/${CDUMP}.t${cyc}z.sfcf${FH3}.nc fi fhr=$((fhr+FHOUT)) done diff --git a/scripts/exgdas_enkf_post.sh b/scripts/exgdas_enkf_post.sh index 64447da841..1338b0ceef 100755 --- a/scripts/exgdas_enkf_post.sh +++ b/scripts/exgdas_enkf_post.sh @@ -42,7 +42,6 @@ GETSFCENSMEANEXEC=${GETSFCENSMEANEXEC:-$HOMEgfs/exec/getsfcensmeanp.x} # Other variables. PREFIX=${PREFIX:-""} -SUFFIX=${SUFFIX:-""} FHMIN=${FHMIN_EPOS:-3} FHMAX=${FHMAX_EPOS:-9} FHOUT=${FHOUT_EPOS:-3} @@ -79,23 +78,23 @@ for imem in $(seq 1 $NMEM_ENKF); do memchar="mem"$(printf %03i $imem) for fhr in $(seq $FHMIN $FHOUT $FHMAX); do fhrchar=$(printf %03i $fhr) - $NLN $COMIN/$memchar/atmos/${PREFIX}sfcf$fhrchar${SUFFIX} sfcf${fhrchar}_$memchar - $NLN $COMIN/$memchar/atmos/${PREFIX}atmf$fhrchar${SUFFIX} atmf${fhrchar}_$memchar + $NLN $COMIN/$memchar/atmos/${PREFIX}sfcf${fhrchar}.nc sfcf${fhrchar}_$memchar + $NLN $COMIN/$memchar/atmos/${PREFIX}atmf${fhrchar}.nc atmf${fhrchar}_$memchar done done # Forecast ensemble mean and smoothed files for fhr in $(seq $FHMIN $FHOUT $FHMAX); do fhrchar=$(printf %03i $fhr) - $NLN $COMOUT/${PREFIX}sfcf${fhrchar}.ensmean${SUFFIX} sfcf${fhrchar}.ensmean - $NLN $COMOUT/${PREFIX}atmf${fhrchar}.ensmean${SUFFIX} atmf${fhrchar}.ensmean + $NLN $COMOUT/${PREFIX}sfcf${fhrchar}.ensmean.nc sfcf${fhrchar}.ensmean + $NLN $COMOUT/${PREFIX}atmf${fhrchar}.ensmean.nc atmf${fhrchar}.ensmean if [ $SMOOTH_ENKF = "YES" ]; then for imem in $(seq 1 $NMEM_ENKF); do memchar="mem"$(printf %03i $imem) - $NLN $COMOUT/$memchar/atmos/${PREFIX}atmf${fhrchar}${ENKF_SUFFIX}${SUFFIX} atmf${fhrchar}${ENKF_SUFFIX}_$memchar + $NLN $COMOUT/$memchar/atmos/${PREFIX}atmf${fhrchar}${ENKF_SUFFIX}.nc atmf${fhrchar}${ENKF_SUFFIX}_$memchar done fi - [[ $ENKF_SPREAD = "YES" ]] && $NLN $COMOUT/${PREFIX}atmf${fhrchar}.ensspread${SUFFIX} atmf${fhrchar}.ensspread + [[ $ENKF_SPREAD = "YES" ]] && $NLN $COMOUT/${PREFIX}atmf${fhrchar}.ensspread.nc atmf${fhrchar}.ensspread done ################################################################################ @@ -150,7 +149,7 @@ if [ $SENDDBN = "YES" ]; then fhrchar=$(printf %03i $fhr) if [ $(expr $fhr % 3) -eq 0 ]; then if [ -s ./sfcf${fhrchar}.ensmean ]; then - $DBNROOT/bin/dbn_alert MODEL GFS_ENKF $job $COMOUT/${PREFIX}sfcf${fhrchar}.ensmean${SUFFIX} + $DBNROOT/bin/dbn_alert MODEL GFS_ENKF $job $COMOUT/${PREFIX}sfcf${fhrchar}.ensmean.nc fi fi done diff --git a/scripts/exgdas_enkf_select_obs.sh b/scripts/exgdas_enkf_select_obs.sh index 92e1fd8c60..7a6eec5535 100755 --- a/scripts/exgdas_enkf_select_obs.sh +++ b/scripts/exgdas_enkf_select_obs.sh @@ -30,7 +30,6 @@ ANALYSISSH=${ANALYSISSH:-$HOMEgfs/scripts/exglobal_atmos_analysis.sh} # Prefix and Suffix Variables. export APREFIX=${APREFIX:-""} -export ASUFFIX=${ASUFFIX:-$SUFFIX} # Select obs export RUN_SELECT=${RUN_SELECT:-"YES"} diff --git a/scripts/exgdas_enkf_sfc.sh b/scripts/exgdas_enkf_sfc.sh index d3c1b96269..3fc99c1890 100755 --- a/scripts/exgdas_enkf_sfc.sh +++ b/scripts/exgdas_enkf_sfc.sh @@ -43,9 +43,7 @@ OPREFIX=${OPREFIX:-""} OSUFFIX=${OSUFFIX:-""} APREFIX=${APREFIX:-""} APREFIX_ENKF=${APREFIX_ENKF:-$APREFIX} -ASUFFIX=${ASUFFIX:-$SUFFIX} GPREFIX=${GPREFIX:-""} -GSUFFIX=${GSUFFIX:-$SUFFIX} # Variables NMEM_ENKF=${NMEM_ENKF:-80} diff --git a/scripts/exgdas_enkf_update.sh b/scripts/exgdas_enkf_update.sh index b22dcbfea8..ff8422548c 100755 --- a/scripts/exgdas_enkf_update.sh +++ b/scripts/exgdas_enkf_update.sh @@ -45,9 +45,7 @@ CDUMP=${CDUMP:-"gdas"} # Filenames. GPREFIX=${GPREFIX:-""} -GSUFFIX=${GSUFFIX:-$SUFFIX} APREFIX=${APREFIX:-""} -ASUFFIX=${ASUFFIX:-$SUFFIX} SMOOTH_ENKF=${SMOOTH_ENKF:-"YES"} @@ -92,7 +90,7 @@ fi INCREMENTS_TO_ZERO=${INCREMENTS_TO_ZERO:-"'NONE'"} ################################################################################ -ATMGES_ENSMEAN=$COMIN_GES_ENS/${GPREFIX}atmf006.ensmean${GSUFFIX} +ATMGES_ENSMEAN=$COMIN_GES_ENS/${GPREFIX}atmf006.ensmean.nc LONB_ENKF=${LONB_ENKF:-$($NCLEN $ATMGES_ENSMEAN grid_xt)} # get LONB_ENKF LATB_ENKF=${LATB_ENKF:-$($NCLEN $ATMGES_ENSMEAN grid_yt)} # get LATB_ENFK LEVS_ENKF=${LEVS_ENKF:-$($NCLEN $ATMGES_ENSMEAN pfull)} # get LEVS_ENFK @@ -195,21 +193,21 @@ for imem in $(seq 1 $NMEM_ENKF); do fi mkdir -p $COMOUT_ANL_ENS/$memchar/atmos for FHR in $nfhrs; do - $NLN $COMIN_GES_ENS/$memchar/atmos/${GPREFIX}atmf00${FHR}${ENKF_SUFFIX}${GSUFFIX} sfg_${CDATE}_fhr0${FHR}_${memchar} + $NLN $COMIN_GES_ENS/$memchar/atmos/${GPREFIX}atmf00${FHR}${ENKF_SUFFIX}.nc sfg_${CDATE}_fhr0${FHR}_${memchar} if [ $cnvw_option = ".true." ]; then - $NLN $COMIN_GES_ENS/$memchar/atmos/${GPREFIX}sfcf00${FHR}${GSUFFIX} sfgsfc_${CDATE}_fhr0${FHR}_${memchar} + $NLN $COMIN_GES_ENS/$memchar/atmos/${GPREFIX}sfcf00${FHR}.nc sfgsfc_${CDATE}_fhr0${FHR}_${memchar} fi if [ $FHR -eq 6 ]; then if [ $DO_CALC_INCREMENT = "YES" ]; then - $NLN $COMOUT_ANL_ENS/$memchar/atmos/${APREFIX}atmanl${ASUFFIX} sanl_${CDATE}_fhr0${FHR}_${memchar} + $NLN $COMOUT_ANL_ENS/$memchar/atmos/${APREFIX}atmanl.nc sanl_${CDATE}_fhr0${FHR}_${memchar} else - $NLN $COMOUT_ANL_ENS/$memchar/atmos/${APREFIX}atminc${ASUFFIX} incr_${CDATE}_fhr0${FHR}_${memchar} + $NLN $COMOUT_ANL_ENS/$memchar/atmos/${APREFIX}atminc.nc incr_${CDATE}_fhr0${FHR}_${memchar} fi else if [ $DO_CALC_INCREMENT = "YES" ]; then - $NLN $COMOUT_ANL_ENS/$memchar/atmos/${APREFIX}atma00${FHR}${ASUFFIX} sanl_${CDATE}_fhr0${FHR}_${memchar} + $NLN $COMOUT_ANL_ENS/$memchar/atmos/${APREFIX}atma00${FHR}.nc sanl_${CDATE}_fhr0${FHR}_${memchar} else - $NLN $COMOUT_ANL_ENS/$memchar/atmos/${APREFIX}atmi00${FHR}${ASUFFIX} incr_${CDATE}_fhr0${FHR}_${memchar} + $NLN $COMOUT_ANL_ENS/$memchar/atmos/${APREFIX}atmi00${FHR}.nc incr_${CDATE}_fhr0${FHR}_${memchar} fi fi done @@ -217,9 +215,9 @@ done # Ensemble mean guess for FHR in $nfhrs; do - $NLN $COMIN_GES_ENS/${GPREFIX}atmf00${FHR}.ensmean${GSUFFIX} sfg_${CDATE}_fhr0${FHR}_ensmean + $NLN $COMIN_GES_ENS/${GPREFIX}atmf00${FHR}.ensmean.nc sfg_${CDATE}_fhr0${FHR}_ensmean if [ $cnvw_option = ".true." ]; then - $NLN $COMIN_GES_ENS/${GPREFIX}sfcf00${FHR}.ensmean${GSUFFIX} sfgsfc_${CDATE}_fhr0${FHR}_ensmean + $NLN $COMIN_GES_ENS/${GPREFIX}sfcf00${FHR}.ensmean.nc sfgsfc_${CDATE}_fhr0${FHR}_ensmean fi done diff --git a/scripts/exgfs_atmos_post.sh b/scripts/exgfs_atmos_post.sh index f8478b2662..aa266c1721 100755 --- a/scripts/exgfs_atmos_post.sh +++ b/scripts/exgfs_atmos_post.sh @@ -65,13 +65,7 @@ export GOESF=${GOESF:-"YES"} export WAFSF=${WAFSF:-"NO"} export PGBF=${PGBF:-"YES"} export TCYC=${TCYC:-".t${cyc}z."} -export OUTPUT_FILE=${OUTPUT_FILE:-"netcdf"} export PREFIX=${PREFIX:-${RUN}${TCYC}} -if (( OUTTYP == 4 )); then - export SUFFIX=".nc" -else - export SUFFIX= -fi export machine=${machine:-WCOSS2} ########################### @@ -90,11 +84,7 @@ export IDRT=${IDRT:-0} # IDRT=0 is setting for outputting grib files on lat/lon # Process analysis when post_times is 00 stime="$(echo "${post_times}" | cut -c1-3)" export stime -if (( OUTTYP == 4 )); then - export loganl="${COMIN}/${PREFIX}atmanl${SUFFIX}" -else - export loganl="${COMIN}/${PREFIX}sanl" -fi +export loganl="${COMIN}/${PREFIX}atmanl.nc" if [[ "${stime}" = "anl" ]]; then if [[ -f "${loganl}" ]]; then @@ -116,12 +106,10 @@ if [[ "${stime}" = "anl" ]]; then fi [[ -f flxfile ]] && rm flxfile ; [[ -f nemsfile ]] && rm nemsfile - if (( OUTTYP == 4 )); then - ln -fs "${COMIN}/${PREFIX}atmanl${SUFFIX}" nemsfile - export NEMSINP=nemsfile - ln -fs "${COMIN}/${PREFIX}sfcanl${SUFFIX}" flxfile - export FLXINP=flxfile - fi + ln -fs "${COMIN}/${PREFIX}atmanl.nc" nemsfile + export NEMSINP=nemsfile + ln -fs "${COMIN}/${PREFIX}sfcanl.nc" flxfile + export FLXINP=flxfile export PGBOUT=pgbfile export PGIOUT=pgifile @@ -155,8 +143,8 @@ if [[ "${stime}" = "anl" ]]; then fi if [[ "${SENDDBN}" = 'YES' ]]; then - "${DBNROOT}/bin/dbn_alert" MODEL GFS_MSC_sfcanl "${job}" "${COMOUT}/${PREFIX}sfcanl${SUFFIX}" - "${DBNROOT}/bin/dbn_alert" MODEL GFS_SA "${job}" "${COMOUT}/${PREFIX}atmanl${SUFFIX}" + "${DBNROOT}/bin/dbn_alert" MODEL GFS_MSC_sfcanl "${job}" "${COMOUT}/${PREFIX}sfcanl.nc" + "${DBNROOT}/bin/dbn_alert" MODEL GFS_SA "${job}" "${COMOUT}/${PREFIX}atmanl.nc" if [[ "${PGBF}" = 'YES' ]]; then "${DBNROOT}/bin/dbn_alert" MODEL GFS_PGB2_0P25 "${job}" "${COMOUT}/${PREFIX}pgrb2.0p25.anl" "${DBNROOT}/bin/dbn_alert" MODEL GFS_PGB2_0P25_WIDX "${job}" "${COMOUT}/${PREFIX}pgrb2.0p25.anl.idx" @@ -262,12 +250,10 @@ else ## not_anl if_stime # for backup to start Model Fcst ############################### [[ -f flxfile ]] && rm flxfile ; [[ -f nemsfile ]] && rm nemsfile - if (( OUTTYP == 4 )); then - ln -fs "${COMIN}/${PREFIX}atmf${fhr}${SUFFIX}" nemsfile - export NEMSINP=nemsfile - ln -fs "${COMIN}/${PREFIX}sfcf${fhr}${SUFFIX}" flxfile - export FLXINP=flxfile - fi + ln -fs "${COMIN}/${PREFIX}atmf${fhr}.nc" nemsfile + export NEMSINP=nemsfile + ln -fs "${COMIN}/${PREFIX}sfcf${fhr}.nc" flxfile + export FLXINP=flxfile if (( fhr > 0 )); then export IGEN=${IGEN_FCST} diff --git a/scripts/exgfs_atmos_postsnd.sh b/scripts/exgfs_atmos_postsnd.sh index fd2ffe895f..c6d07bf9b9 100755 --- a/scripts/exgfs_atmos_postsnd.sh +++ b/scripts/exgfs_atmos_postsnd.sh @@ -35,7 +35,7 @@ export ENDHOUR=${ENDHOUR:-180} export INCREMENT=12 export MAKEBUFR=NO export F00FLAG=YES -export fformat=${OUTPUT_FILE:-netcdf} +export fformat=netcdf export atmfm="nc" export logfm="txt" export NINT1=${FHOUT_HF_GFS:-1} diff --git a/scripts/exglobal_archive.sh b/scripts/exglobal_archive.sh index a3faea9f98..5bc76d896f 100755 --- a/scripts/exglobal_archive.sh +++ b/scripts/exglobal_archive.sh @@ -15,8 +15,6 @@ fi # CURRENT CYCLE APREFIX="${CDUMP}.t${cyc}z." -ASUFFIX=${ASUFFIX:-${SUFFIX}} -format="netcdf" # Realtime parallels run GFS MOS on 1 day delay # If realtime parallel, back up CDATE_MOS one day @@ -95,8 +93,8 @@ if [ "${CDUMP}" = "gfs" ] && [ "${FITSARC}" = "YES" ]; then fhr=0 while [[ ${fhr} -le ${fhmax} ]]; do fhr3=$(printf %03i "${fhr}") - sfcfile=${prefix}.sfcf${fhr3}${ASUFFIX} - sigfile=${prefix}.atmf${fhr3}${ASUFFIX} + sfcfile=${prefix}.sfcf${fhr3}.nc + sigfile=${prefix}.atmf${fhr3}.nc nb_copy "${sfcfile}" "${VFYARC}"/"${CDUMP}"."${PDY}"/"${cyc}"/ nb_copy "${sigfile}" "${VFYARC}"/"${CDUMP}"."${PDY}"/"${cyc}"/ (( fhr = 10#${fhr} + 6 )) @@ -162,9 +160,9 @@ if [ "${CDUMP}" = "gfs" ]; then targrp_list="gfsa gfsb" if [ "${ARCH_GAUSSIAN:-"NO"}" = "YES" ]; then - targrp_list="${targrp_list} gfs_flux gfs_${format}b gfs_pgrb2b" + targrp_list="${targrp_list} gfs_flux gfs_netcdfb gfs_pgrb2b" if [ "${MODE}" = "cycled" ]; then - targrp_list="${targrp_list} gfs_${format}a" + targrp_list="${targrp_list} gfs_netcdfa" fi fi diff --git a/scripts/exglobal_atmos_analysis.sh b/scripts/exglobal_atmos_analysis.sh index 71c4e303bc..7b3fd5c381 100755 --- a/scripts/exglobal_atmos_analysis.sh +++ b/scripts/exglobal_atmos_analysis.sh @@ -156,7 +156,7 @@ HDOB=${HDOB:-${COMIN_OBS}/${OPREFIX}hdob.tm00.bufr_d${OSUFFIX}} # Guess files GPREFIX=${GPREFIX:-""} -GSUFFIX=${GSUFFIX:-${SUFFIX}} +GSUFFIX=${GSUFFIX:-".nc"} SFCG03=${SFCG03:-${COMIN_GES}/${GPREFIX}sfcf003${GSUFFIX}} SFCG04=${SFCG04:-${COMIN_GES}/${GPREFIX}sfcf004${GSUFFIX}} SFCG05=${SFCG05:-${COMIN_GES}/${GPREFIX}sfcf005${GSUFFIX}} @@ -178,10 +178,9 @@ GRADSTAT=${GRADSTAT:-${COMIN_GES}/${GPREFIX}radstat} # Analysis files export APREFIX=${APREFIX:-""} -export ASUFFIX=${ASUFFIX:-${SUFFIX}} -SFCANL=${SFCANL:-${COMOUT}/${APREFIX}sfcanl${ASUFFIX}} +SFCANL=${SFCANL:-${COMOUT}/${APREFIX}sfcanl.nc} DTFANL=${DTFANL:-${COMOUT}/${APREFIX}dtfanl.nc} -ATMANL=${ATMANL:-${COMOUT}/${APREFIX}atmanl${ASUFFIX}} +ATMANL=${ATMANL:-${COMOUT}/${APREFIX}atmanl.nc} ABIAS=${ABIAS:-${COMOUT}/${APREFIX}abias} ABIASPC=${ABIASPC:-${COMOUT}/${APREFIX}abias_pc} ABIASAIR=${ABIASAIR:-${COMOUT}/${APREFIX}abias_air} @@ -244,14 +243,12 @@ JCAP=${JCAP:--9999} # there is no jcap in these files # Get header information from Ensemble Guess files if [ ${DOHYBVAR} = "YES" ]; then - SFCGES_ENSMEAN=${SFCGES_ENSMEAN:-${COMIN_GES_ENS}/${GPREFIX}sfcf006.ensmean${GSUFFIX}} - export ATMGES_ENSMEAN=${ATMGES_ENSMEAN:-${COMIN_GES_ENS}/${GPREFIX}atmf006.ensmean${GSUFFIX}} - if [ ${SUFFIX} = ".nc" ]; then - LONB_ENKF=${LONB_ENKF:-$(${NCLEN} ${ATMGES_ENSMEAN} grid_xt)} # get LONB_ENKF - LATB_ENKF=${LATB_ENKF:-$(${NCLEN} ${ATMGES_ENSMEAN} grid_yt)} # get LATB_ENFK - LEVS_ENKF=${LEVS_ENKF:-$(${NCLEN} ${ATMGES_ENSMEAN} pfull)} # get LATB_ENFK - JCAP_ENKF=${JCAP_ENKF:--9999} # again, no jcap in the netcdf files - fi + SFCGES_ENSMEAN=${SFCGES_ENSMEAN:-${COMIN_GES_ENS}/${GPREFIX}sfcf006.ensmean.nc} + export ATMGES_ENSMEAN=${ATMGES_ENSMEAN:-${COMIN_GES_ENS}/${GPREFIX}atmf006.ensmean.nc} + LONB_ENKF=${LONB_ENKF:-$(${NCLEN} ${ATMGES_ENSMEAN} grid_xt)} # get LONB_ENKF + LATB_ENKF=${LATB_ENKF:-$(${NCLEN} ${ATMGES_ENSMEAN} grid_yt)} # get LATB_ENFK + LEVS_ENKF=${LEVS_ENKF:-$(${NCLEN} ${ATMGES_ENSMEAN} pfull)} # get LATB_ENFK + JCAP_ENKF=${JCAP_ENKF:--9999} # again, no jcap in the netcdf files NLON_ENKF=${NLON_ENKF:-${LONB_ENKF}} NLAT_ENKF=${NLAT_ENKF:-$((${LATB_ENKF}+2))} [ ${JCAP_ENKF} -eq -9999 -a ${LATB_ENKF} -ne -9999 ] && JCAP_ENKF=$((LATB_ENKF-2)) @@ -340,17 +337,17 @@ fi # Set 4D-EnVar specific variables if [ ${DOHYBVAR} = "YES" -a ${l4densvar} = ".true." -a ${lwrite4danl} = ".true." ]; then - ATMA03=${ATMA03:-${COMOUT}/${APREFIX}atma003${ASUFFIX}} + ATMA03=${ATMA03:-${COMOUT}/${APREFIX}atma003.nc} ATMI03=${ATMI03:-${COMOUT}/${APREFIX}atmi003.nc} - ATMA04=${ATMA04:-${COMOUT}/${APREFIX}atma004${ASUFFIX}} + ATMA04=${ATMA04:-${COMOUT}/${APREFIX}atma004.nc} ATMI04=${ATMI04:-${COMOUT}/${APREFIX}atmi004.nc} - ATMA05=${ATMA05:-${COMOUT}/${APREFIX}atma005${ASUFFIX}} + ATMA05=${ATMA05:-${COMOUT}/${APREFIX}atma005.nc} ATMI05=${ATMI05:-${COMOUT}/${APREFIX}atmi005.nc} - ATMA07=${ATMA07:-${COMOUT}/${APREFIX}atma007${ASUFFIX}} + ATMA07=${ATMA07:-${COMOUT}/${APREFIX}atma007.nc} ATMI07=${ATMI07:-${COMOUT}/${APREFIX}atmi007.nc} - ATMA08=${ATMA08:-${COMOUT}/${APREFIX}atma008${ASUFFIX}} + ATMA08=${ATMA08:-${COMOUT}/${APREFIX}atma008.nc} ATMI08=${ATMI08:-${COMOUT}/${APREFIX}atmi008.nc} - ATMA09=${ATMA09:-${COMOUT}/${APREFIX}atma009${ASUFFIX}} + ATMA09=${ATMA09:-${COMOUT}/${APREFIX}atma009.nc} ATMI09=${ATMI09:-${COMOUT}/${APREFIX}atmi009.nc} fi @@ -538,9 +535,9 @@ if [ ${DOHYBVAR} = "YES" ]; then for imem in $(seq 1 ${NMEM_ENKF}); do memchar="mem"$(printf %03i ${imem}) for fhr in ${fhrs}; do - ${NLN} ${COMIN_GES_ENS}/${memchar}/atmos/${GPREFIX}atmf0${fhr}${ENKF_SUFFIX}${GSUFFIX} ./ensemble_data/sigf${fhr}_ens_${memchar} + ${NLN} ${COMIN_GES_ENS}/${memchar}/atmos/${GPREFIX}atmf0${fhr}${ENKF_SUFFIX}.nc ./ensemble_data/sigf${fhr}_ens_${memchar} if [ ${cnvw_option} = ".true." ]; then - ${NLN} ${COMIN_GES_ENS}/${memchar}/atmos/${GPREFIX}sfcf0${fhr}${GSUFFIX} ./ensemble_data/sfcf${fhr}_ens_${memchar} + ${NLN} ${COMIN_GES_ENS}/${memchar}/atmos/${GPREFIX}sfcf0${fhr}.nc ./ensemble_data/sfcf${fhr}_ens_${memchar} fi done done diff --git a/scripts/exglobal_atmos_analysis_calc.sh b/scripts/exglobal_atmos_analysis_calc.sh index 34d2425800..5c005ac892 100755 --- a/scripts/exglobal_atmos_analysis_calc.sh +++ b/scripts/exglobal_atmos_analysis_calc.sh @@ -82,21 +82,19 @@ SENDDBN=${SENDDBN:-"NO"} # Guess files GPREFIX=${GPREFIX:-""} -GSUFFIX=${GSUFFIX:-$SUFFIX} -ATMG03=${ATMG03:-${COMIN_GES}/${GPREFIX}atmf003${GSUFFIX}} -ATMG04=${ATMG04:-${COMIN_GES}/${GPREFIX}atmf004${GSUFFIX}} -ATMG05=${ATMG05:-${COMIN_GES}/${GPREFIX}atmf005${GSUFFIX}} -ATMGES=${ATMGES:-${COMIN_GES}/${GPREFIX}atmf006${GSUFFIX}} -ATMG07=${ATMG07:-${COMIN_GES}/${GPREFIX}atmf007${GSUFFIX}} -ATMG08=${ATMG08:-${COMIN_GES}/${GPREFIX}atmf008${GSUFFIX}} -ATMG09=${ATMG09:-${COMIN_GES}/${GPREFIX}atmf009${GSUFFIX}} +ATMG03=${ATMG03:-${COMIN_GES}/${GPREFIX}atmf003.nc} +ATMG04=${ATMG04:-${COMIN_GES}/${GPREFIX}atmf004.nc} +ATMG05=${ATMG05:-${COMIN_GES}/${GPREFIX}atmf005.nc} +ATMGES=${ATMGES:-${COMIN_GES}/${GPREFIX}atmf006.nc} +ATMG07=${ATMG07:-${COMIN_GES}/${GPREFIX}atmf007.nc} +ATMG08=${ATMG08:-${COMIN_GES}/${GPREFIX}atmf008.nc} +ATMG09=${ATMG09:-${COMIN_GES}/${GPREFIX}atmf009.nc} # Analysis files export APREFIX=${APREFIX:-""} -export ASUFFIX=${ASUFFIX:-$SUFFIX} -SFCANL=${SFCANL:-${COMOUT}/${APREFIX}sfcanl${ASUFFIX}} +SFCANL=${SFCANL:-${COMOUT}/${APREFIX}sfcanl.nc} DTFANL=${DTFANL:-${COMOUT}/${APREFIX}dtfanl.nc} -ATMANL=${ATMANL:-${COMOUT}/${APREFIX}atmanl${ASUFFIX}} +ATMANL=${ATMANL:-${COMOUT}/${APREFIX}atmanl.nc} # Increment files ATMINC=${ATMINC:-${COMOUT}/${APREFIX}atminc.nc} @@ -116,17 +114,17 @@ fi # Set 4D-EnVar specific variables if [ $DOHYBVAR = "YES" -a $l4densvar = ".true." -a $lwrite4danl = ".true." ]; then - ATMA03=${ATMA03:-${COMOUT}/${APREFIX}atma003${ASUFFIX}} + ATMA03=${ATMA03:-${COMOUT}/${APREFIX}atma003.nc} ATMI03=${ATMI03:-${COMOUT}/${APREFIX}atmi003.nc} - ATMA04=${ATMA04:-${COMOUT}/${APREFIX}atma004${ASUFFIX}} + ATMA04=${ATMA04:-${COMOUT}/${APREFIX}atma004.nc} ATMI04=${ATMI04:-${COMOUT}/${APREFIX}atmi004.nc} - ATMA05=${ATMA05:-${COMOUT}/${APREFIX}atma005${ASUFFIX}} + ATMA05=${ATMA05:-${COMOUT}/${APREFIX}atma005.nc} ATMI05=${ATMI05:-${COMOUT}/${APREFIX}atmi005.nc} - ATMA07=${ATMA07:-${COMOUT}/${APREFIX}atma007${ASUFFIX}} + ATMA07=${ATMA07:-${COMOUT}/${APREFIX}atma007.nc} ATMI07=${ATMI07:-${COMOUT}/${APREFIX}atmi007.nc} - ATMA08=${ATMA08:-${COMOUT}/${APREFIX}atma008${ASUFFIX}} + ATMA08=${ATMA08:-${COMOUT}/${APREFIX}atma008.nc} ATMI08=${ATMI08:-${COMOUT}/${APREFIX}atmi008.nc} - ATMA09=${ATMA09:-${COMOUT}/${APREFIX}atma009${ASUFFIX}} + ATMA09=${ATMA09:-${COMOUT}/${APREFIX}atma009.nc} ATMI09=${ATMI09:-${COMOUT}/${APREFIX}atmi009.nc} fi diff --git a/scripts/exglobal_diag.sh b/scripts/exglobal_diag.sh index c913cdd132..3ff07d48f6 100755 --- a/scripts/exglobal_diag.sh +++ b/scripts/exglobal_diag.sh @@ -61,7 +61,6 @@ SENDDBN=${SENDDBN:-"NO"} # Analysis files export APREFIX=${APREFIX:-""} -export ASUFFIX=${ASUFFIX:-$SUFFIX} RADSTAT=${RADSTAT:-${COMOUT}/${APREFIX}radstat} PCPSTAT=${PCPSTAT:-${COMOUT}/${APREFIX}pcpstat} CNVSTAT=${CNVSTAT:-${COMOUT}/${APREFIX}cnvstat} diff --git a/ush/calcanl_gfs.py b/ush/calcanl_gfs.py index 0243366241..fcf272b3ee 100755 --- a/ush/calcanl_gfs.py +++ b/ush/calcanl_gfs.py @@ -14,8 +14,8 @@ # function to calculate analysis from a given increment file and background -def calcanl_gfs(DoIAU, l4DEnsVar, Write4Danl, ComOut, APrefix, ASuffix, - ComIn_Ges, GPrefix, GSuffix, +def calcanl_gfs(DoIAU, l4DEnsVar, Write4Danl, ComOut, APrefix, + ComIn_Ges, GPrefix, FixDir, atmges_ens_mean, RunDir, NThreads, NEMSGet, IAUHrs, ExecCMD, ExecCMDMPI, ExecAnl, ExecChgresInc, Cdump): print('calcanl_gfs beginning at: ', datetime.datetime.utcnow()) @@ -42,8 +42,8 @@ def calcanl_gfs(DoIAU, l4DEnsVar, Write4Danl, ComOut, APrefix, ASuffix, gsi_utils.make_dir(CalcAnlDir) gsi_utils.copy_file(ExecAnl, CalcAnlDir + '/calc_anl.x') gsi_utils.link_file(RunDir + '/siginc.nc', CalcAnlDir + '/siginc.nc.06') - gsi_utils.link_file(ComOut + '/' + APrefix + 'atmanl.ensres' + ASuffix, CalcAnlDir + '/anl.ensres.06') - gsi_utils.link_file(ComIn_Ges + '/' + GPrefix + 'atmf006.ensres' + GSuffix, CalcAnlDir + '/ges.ensres.06') + gsi_utils.link_file(ComOut + '/' + APrefix + 'atmanl.ensres.nc', CalcAnlDir + '/anl.ensres.06') + gsi_utils.link_file(ComIn_Ges + '/' + GPrefix + 'atmf006.ensres.nc', CalcAnlDir + '/ges.ensres.06') gsi_utils.link_file(RunDir + '/sigf06', CalcAnlDir + '/ges.06') else: if os.path.isfile('sigi' + format(fh, '02') + '.nc'): @@ -54,7 +54,7 @@ def calcanl_gfs(DoIAU, l4DEnsVar, Write4Danl, ComOut, APrefix, ASuffix, gsi_utils.make_dir(CalcAnlDir) if not os.path.exists(CalcAnlDir6): gsi_utils.make_dir(CalcAnlDir6) - gsi_utils.link_file(ComOut + '/' + APrefix + 'atma' + format(fh, '03') + ASuffix, + gsi_utils.link_file(ComOut + '/' + APrefix + 'atma' + format(fh, '03') + '.nc', CalcAnlDir6 + '/anl.' + format(fh, '02')) gsi_utils.link_file(RunDir + '/siga' + format(fh, '02'), CalcAnlDir6 + '/anl.' + format(fh, '02')) @@ -74,11 +74,11 @@ def calcanl_gfs(DoIAU, l4DEnsVar, Write4Danl, ComOut, APrefix, ASuffix, gsi_utils.make_dir(CalcAnlDir) if not os.path.exists(CalcAnlDir6): gsi_utils.make_dir(CalcAnlDir6) - gsi_utils.link_file(ComOut + '/' + APrefix + 'atma' + format(fh, '03') + '.ensres' + ASuffix, + gsi_utils.link_file(ComOut + '/' + APrefix + 'atma' + format(fh, '03') + '.ensres.nc', CalcAnlDir6 + '/anl.ensres.' + format(fh, '02')) gsi_utils.link_file(RunDir + '/sigi' + format(fh, '02') + '.nc', CalcAnlDir6 + '/siginc.nc.' + format(fh, '02')) - gsi_utils.link_file(ComIn_Ges + '/' + GPrefix + 'atmf' + format(fh, '03') + '.ensres' + GSuffix, + gsi_utils.link_file(ComIn_Ges + '/' + GPrefix + 'atmf' + format(fh, '03') + '.ensres.nc', CalcAnlDir6 + '/ges.ensres.' + format(fh, '02')) else: @@ -97,15 +97,12 @@ def calcanl_gfs(DoIAU, l4DEnsVar, Write4Danl, ComOut, APrefix, ASuffix, gsi_utils.make_dir(CalcAnlDir) gsi_utils.copy_file(ExecAnl, CalcAnlDir + '/calc_anl.x') gsi_utils.link_file(RunDir + '/siginc.nc', CalcAnlDir + '/siginc.nc.06') - gsi_utils.link_file(ComOut + '/' + APrefix + 'atmanl.ensres' + ASuffix, CalcAnlDir + '/anl.ensres.06') - gsi_utils.link_file(ComIn_Ges + '/' + GPrefix + 'atmf006.ensres' + GSuffix, CalcAnlDir + '/ges.ensres.06') + gsi_utils.link_file(ComOut + '/' + APrefix + 'atmanl.ensres.nc', CalcAnlDir + '/anl.ensres.06') + gsi_utils.link_file(ComIn_Ges + '/' + GPrefix + 'atmf006.ensres.nc', CalcAnlDir + '/ges.ensres.06') # get dimension information from background and increment files AnlDims = gsi_utils.get_ncdims('siginc.nc') - if ASuffix == ".nc": - GesDims = gsi_utils.get_ncdims('sigf06') - else: - GesDims = gsi_utils.get_nemsdims('sigf06', NEMSGet) + GesDims = gsi_utils.get_ncdims('sigf06') levs = AnlDims['lev'] LonA = AnlDims['lon'] @@ -346,10 +343,8 @@ def calcanl_gfs(DoIAU, l4DEnsVar, Write4Danl, ComOut, APrefix, ASuffix, Write4Danl = gsi_utils.isTrue(os.getenv('lwrite4danl', 'NO')) ComIn_Ges = os.getenv('COMIN_GES', './') GPrefix = os.getenv('GPREFIX', './') - GSuffix = os.getenv('GSUFFIX', './') ComOut = os.getenv('COMOUT', './') APrefix = os.getenv('APREFIX', '') - ASuffix = os.getenv('ASUFFIX', '') NThreads = os.getenv('NTHREADS_CHGRES', 1) FixDir = os.getenv('FIXgsm', './') atmges_ens_mean = os.getenv('ATMGES_ENSMEAN', './atmges_ensmean') @@ -363,8 +358,8 @@ def calcanl_gfs(DoIAU, l4DEnsVar, Write4Danl, ComOut, APrefix, ASuffix, Cdump = os.getenv('CDUMP', 'gdas') print(locals()) - calcanl_gfs(DoIAU, l4DEnsVar, Write4Danl, ComOut, APrefix, ASuffix, - ComIn_Ges, GPrefix, GSuffix, + calcanl_gfs(DoIAU, l4DEnsVar, Write4Danl, ComOut, APrefix, + ComIn_Ges, GPrefix, FixDir, atmges_ens_mean, RunDir, NThreads, NEMSGet, IAUHrs, ExecCMD, ExecCMDMPI, ExecAnl, ExecChgresInc, Cdump) diff --git a/ush/drive_makeprepbufr.sh b/ush/drive_makeprepbufr.sh deleted file mode 100755 index 31154c10bb..0000000000 --- a/ush/drive_makeprepbufr.sh +++ /dev/null @@ -1,142 +0,0 @@ -#! /usr/bin/env bash - -############################################################### -# < next few lines under version control, D O N O T E D I T > -# $Date$ -# $Revision$ -# $Author$ -# $Id$ -############################################################### - -############################################################### -## Author: Rahul Mahajan Org: NCEP/EMC Date: April 2017 - -## Abstract: -## Prepare for analysis driver script -## EXPDIR : /full/path/to/config/files -## CDATE : current analysis date (YYYYMMDDHH) -## CDUMP : cycle name (gdas / gfs) -############################################################### - -source "$HOMEgfs/ush/preamble.sh" - -############################################################### -# Source relevant configs -configs="base prep prepbufr" -for config in $configs; do - . $EXPDIR/config.${config} - status=$? - [[ $status -ne 0 ]] && exit $status -done - -############################################################### -# Source machine runtime environment -. $BASE_ENV/${machine}.env prepbufr -status=$? -[[ $status -ne 0 ]] && exit $status - -############################################################### -KEEPDATA=${KEEPDATA:-"NO"} -DO_RELOCATE=${DO_RELOCATE:-"NO"} -DONST=${DONST:-"NO"} - -############################################################### -# Set script and dependency variables -COMPONENT=${COMPONENT:-atmos} - -GDATE=$($NDATE -$assim_freq $CDATE) - -cymd=$(echo $CDATE | cut -c1-8) -chh=$(echo $CDATE | cut -c9-10) -gymd=$(echo $GDATE | cut -c1-8) -ghh=$(echo $GDATE | cut -c9-10) - -OPREFIX="${CDUMP}.t${chh}z." -OSUFFIX=".bufr_d" -GPREFIX="gdas.t${ghh}z." -GSUFFIX=${GSUFFIX:-$SUFFIX} -APREFIX="${CDUMP}.t${chh}z." -ASUFFIX=${ASUFFIX:-$SUFFIX} - -COMIN_OBS=${COMIN_OBS:-"$DMPDIR/${CDUMP}${DUMP_SUFFIX}.${PDY}/${cyc}/${COMPONENT}"} -COMIN_GES=${COMIN_GES:-"$ROTDIR/gdas.$gymd/$ghh/$COMPONENT"} -COMOUT=${COMOUT:-"$ROTDIR/$CDUMP.$cymd/$chh/$COMPONENT"} -[[ ! -d $COMOUT ]] && mkdir -p $COMOUT -export DATA="$RUNDIR/$CDATE/$CDUMP/prepbufr" -[[ -d $DATA ]] && rm -rf $DATA -mkdir -p $DATA -cd $DATA - -############################################################### -# MAKEPREPBUFRSH environment specific variables -export NEMSIO_IN=".true." -export COMSP="$DATA/" -export NET=$CDUMP - -############################################################### -# Link observation files in BUFRLIST -for bufrname in $BUFRLIST; do - $NLN $COMIN_OBS/${OPREFIX}${bufrname}.tm00$OSUFFIX ${bufrname}.tm00$OSUFFIX -done - -# Link first guess files -$NLN $COMIN_GES/${GPREFIX}atmf003${GSUFFIX} ./atmgm3$GSUFFIX -$NLN $COMIN_GES/${GPREFIX}atmf006${GSUFFIX} ./atmges$GSUFFIX -$NLN $COMIN_GES/${GPREFIX}atmf009${GSUFFIX} ./atmgp3$GSUFFIX - -[[ -f $COMIN_GES/${GPREFIX}atmf004${GSUFFIX} ]] && $NLN $COMIN_GES/${GPREFIX}atmf004${GSUFFIX} ./atmgm2$GSUFFIX -[[ -f $COMIN_GES/${GPREFIX}atmf005${GSUFFIX} ]] && $NLN $COMIN_GES/${GPREFIX}atmf005${GSUFFIX} ./atmgm1$GSUFFIX -[[ -f $COMIN_GES/${GPREFIX}atmf007${GSUFFIX} ]] && $NLN $COMIN_GES/${GPREFIX}atmf007${GSUFFIX} ./atmgp1$GSUFFIX -[[ -f $COMIN_GES/${GPREFIX}atmf008${GSUFFIX} ]] && $NLN $COMIN_GES/${GPREFIX}atmf008${GSUFFIX} ./atmgp2$GSUFFIX - -# If relocation is turned off: these files don't exist, touch them -if [ $DO_RELOCATE = "NO" ]; then - touch $DATA/tcvitals.relocate.tm00 - touch $DATA/tropcy_relocation_status.tm00 - echo "RECORDS PROCESSED" >> $DATA/tropcy_relocation_status.tm00 -fi - -############################################################### -# if PREPDATA is YES and -# 1. the aircft bufr file is not found, set PREPACQC to NO -# 2. the ****** bufr file is not found, set ******** to NO -if [ $PREPDATA = "YES" ]; then - [[ ! -s aircft.tm00$OSUFFIX ]] && export PREPACQC="NO" -fi - -############################################################### -# Execute MAKEPREPBUFRSH - -echo $(date) EXECUTING $MAKEPREPBUFRSH $CDATE >&2 -$MAKEPREPBUFRSH $CDATE -status=$? -echo $(date) EXITING $MAKEPREPBUFRSH with return code $status >&2 -[[ $status -ne 0 ]] && exit $status - -############################################################### -# Create nsstbufr file -if [ $DONST = "YES" ]; then - SFCSHPBF=${SFCSHPBF:-$COMIN_OBS/sfcshp.$CDUMP.$CDATE} - TESACBF=${TESACBF:-$COMIN_OBS/tesac.$CDUMP.$CDATE} - BATHYBF=${BATHYBF:-$COMIN_OBS/bathy.$CDUMP.$CDATE} - TRKOBBF=${TRKOBBF:-$COMIN_OBS/trkob.$CDUMP.$CDATE} - NSSTBF=${NSSTBF:-$COMOUT/${APREFIX}nsstbufr} - - cat $SFCSHPBF $TESACBF $BATHYBF $TRKOBBF > $NSSTBF - status=$? - echo $(date) CREATE $NSSTBF with return code $status >&2 - - # NSST bufr file must be restricted since it contains unmasked ship ids - chmod 640 $NSSTBF - $CHGRP_CMD $NSSTBF -fi -############################################################### -# Copy prepbufr and prepbufr.acft_profiles to COMOUT -$NCP $DATA/prepda.t${chh}z $COMOUT/${APREFIX}prepbufr -$NCP $DATA/prepbufr.acft_profiles $COMOUT/${APREFIX}prepbufr.acft_profiles - -############################################################### -# Exit out cleanly -if [ $KEEPDATA = "NO" ] ; then rm -rf $DATA ; fi - -exit 0 diff --git a/ush/forecast_postdet.sh b/ush/forecast_postdet.sh index 4d26146e21..b2de7b1e43 100755 --- a/ush/forecast_postdet.sh +++ b/ush/forecast_postdet.sh @@ -502,19 +502,18 @@ EOF LONB_STP=${LONB_STP:-$LONB_CASE} LATB_STP=${LATB_STP:-$LATB_CASE} cd $DATA - affix="nc" if [ $QUILTING = ".true." -a $OUTPUT_GRID = "gaussian_grid" ]; then fhr=$FHMIN for fhr in $OUTPUT_FH; do FH3=$(printf %03i $fhr) FH2=$(printf %02i $fhr) - atmi=atmf${FH3}.$affix - sfci=sfcf${FH3}.$affix + atmi=atmf${FH3}.nc + sfci=sfcf${FH3}.nc logi=logf${FH3} pgbi=GFSPRS.GrbF${FH2} flxi=GFSFLX.GrbF${FH2} - atmo=$memdir/${CDUMP}.t${cyc}z.atmf${FH3}.$affix - sfco=$memdir/${CDUMP}.t${cyc}z.sfcf${FH3}.$affix + atmo=$memdir/${CDUMP}.t${cyc}z.atmf${FH3}.nc + sfco=$memdir/${CDUMP}.t${cyc}z.sfcf${FH3}.nc logo=$memdir/${CDUMP}.t${cyc}z.logf${FH3}.txt pgbo=$memdir/${CDUMP}.t${cyc}z.master.grb2f${FH3} flxo=$memdir/${CDUMP}.t${cyc}z.sfluxgrbf${FH3}.grib2 diff --git a/ush/forecast_predet.sh b/ush/forecast_predet.sh index 9ce8ebfcc6..00f2137a74 100755 --- a/ush/forecast_predet.sh +++ b/ush/forecast_predet.sh @@ -133,10 +133,8 @@ FV3_GFS_predet(){ QUILTING=${QUILTING:-".true."} OUTPUT_GRID=${OUTPUT_GRID:-"gaussian_grid"} - OUTPUT_FILE=${OUTPUT_FILE:-"netcdf"} WRITE_NEMSIOFLIP=${WRITE_NEMSIOFLIP:-".true."} WRITE_FSYNCFLAG=${WRITE_FSYNCFLAG:-".true."} - affix="nc" rCDUMP=${rCDUMP:-$CDUMP} diff --git a/ush/fv3gfs_nc2nemsio.sh b/ush/fv3gfs_nc2nemsio.sh deleted file mode 100755 index 8bdd4c929a..0000000000 --- a/ush/fv3gfs_nc2nemsio.sh +++ /dev/null @@ -1,72 +0,0 @@ -#! /usr/bin/env bash - -#---------------------------------------------------------------------------- -#--Fanglin Yang, October 2016: convert FV3 NetCDF files to NEMSIO format. -# Note FV3 lat-lon grid is located at the center of each grid box, -# starting from south to north and from east to west. -# For example, for a 0.5-deg uniform grid, nlon=720, nlat=360 -# X(1,1)=[0.25E,89.75S], X(nlon,nlat)=[359.75E,89.75N] -#--------------------------------------------------------------------------- - -source "$HOMEgfs/ush/preamble.sh" - -export CDATE=${CDATE:-"2016100300"} -export GG=${master_grid:-"0p25deg"} # 1deg 0p5deg 0p25deg 0p125deg -export FHZER=${FHZER:-6} # accumulation bucket in hours -export fdiag=${fdiag:-"none"} # specified forecast output hours - -pwd=$(pwd) -export DATA=${DATA:-$pwd} -export HOMEgfs=${HOMEgfs:-$PACKAGEROOT} -export NC2NEMSIOEXE=${NC2NEMSIOEXE:-$HOMEgfs/exec/fv3nc2nemsio.x} - -cycn=$(echo $CDATE | cut -c 9-10) -export TCYC=${TCYC:-".t${cycn}z."} -export CDUMP=${CDUMP:-gfs} - -export PREFIX=${PREFIX:-${CDUMP}${TCYC}} -export SUFFIX=${SUFFIX:-".nemsio"} - -#-------------------------------------------------- -cd $DATA || exit 8 - -input_dir=$DATA -output_dir=$DATA - -in_3d=${PREFIX}nggps3d.${GG}.nc -in_2d=${PREFIX}nggps2d.${GG}.nc -if [ ! -s $in_3d -o ! -s $in_2d ]; then - echo "$in_3d and $in_2d are missing. exit" - exit 1 -fi - -#--check if the output is from non-hydrostatic case -nhrun=$(ncdump -c $in_3d | grep nhpres) -nhcase=$? - -# If no information on the time interval is given, deduce from the netCDF file -[[ $fdiag = "none" ]] && fdiag=$(ncks -H -s "%g " -C -v time $in_3d) - -#--------------------------------------------------- -nt=0 -err=0 -for fhour in $(echo $fdiag | sed "s/,/ /g"); do - nt=$((nt+1)) - ifhour=$(printf "%09d" $fhour) # convert to integer - fhzh=$(( (ifhour/FHZER-1)*FHZER )) # bucket accumulation starting hour - [[ $fhzh -lt 0 ]] && fhzh=0 - - fhr=$(printf "%03d" $fhour) - outfile=${PREFIX}atmf${fhr}${SUFFIX} - - $NC2NEMSIOEXE $CDATE $nt $fhzh $fhour $input_dir $in_2d $in_3d $output_dir $outfile $nhcase - rc=$? - ((err+=rc)) - - [[ ! -f $outfile ]] && ((err+=1)) - -done - -#--------------------------------------------------- - -exit $err diff --git a/ush/fv3gfs_regrid_nemsio.sh b/ush/fv3gfs_regrid_nemsio.sh deleted file mode 100755 index d9bc11de19..0000000000 --- a/ush/fv3gfs_regrid_nemsio.sh +++ /dev/null @@ -1,118 +0,0 @@ -#! /usr/bin/env bash - -################################################################################ -# UNIX Script Documentation Block -# Script name: fv3gfs_regrid_nemsio.sh -# Script description: Remap FV3 forecasts on six tile in NetCDF to global Gaussian -# grid with NEMSIO output -# -# $Id$ -# -# Author: Fanglin Yang Org: NCEP/EMC Date: 2016-12-01 -# Abstract: regrid_nemsio.fd provided by Jeffrey.S.Whitaker OAR/ESRL -# -# Script history log: -# 2016-12-01 Fanglin Yang -# 2017-02-13 Rahul Mahajan -# -# Attributes: -# Language: Portable Operating System Interface (POSIX) Shell -################################################################################ - -source "$HOMEgfs/ush/preamble.sh" - -#------------------------------------------------------- -# Directories and paths -pwd=$(pwd) -DATA=${DATA:-$pwd} -HOMEgfs=${HOMEgfs:-$PACKAGEROOT} -FIX_DIR=${FIX_DIR:-$HOMEgfs/fix} -FIX_AM=${FIX_AM:-$FIX_DIR/am} -FIXfv3=${FIXfv3:-$FIX_DIR/orog} -REGRID_NEMSIO_EXEC=${REGRID_NEMSIO_EXEC:-$HOMEgfs/exec/regrid_nemsio.x} -REGRID_NEMSIO_TBL=${REGRID_NEMSIO_TBL:-$HOMEgfs/parm/parm_fv3diag/variable_table.txt} - -CDATE=${CDATE:-2017011500} -CDUMP=${CDUMP:-"gdas"} -CASE=${CASE:-C768} -LEVS=${LEVS:-65} -GG=${GG:-gaussian} # gaussian or regular lat-lon -res=$(echo $CASE | cut -c2-) -JCAP=${JCAP:-$((res*2-2))} -LATB=${LATB:-$((res*2))} -LONB=${LONB:-$((res*4))} - -NEMSIO_OUT2DNAME=${NEMSIO_OUT2DNAME:-sfc.$CDATE} -NEMSIO_OUT3DNAME=${NEMSIO_OUT3DNAME:-atm.$CDATE} -DEBUG=${REGRID_NEMSIO_DEBUG:-".true."} - -APRUN_REGRID_NEMSIO=${APRUN_REGRID_NEMSIO:-${APRUN:-""}} -NTHREADS_REGRID_NEMSIO=${NTHREADS_REGRID_NEMSIO:-${NTHREADS:-1}} - -NMV=${NMV:-"/bin/mv"} - -#------------------------------------------------------- -# IO specific parameters and error traps -ERRSCRIPT=${ERRSCRIPT:-'eval [[ $err = 0 ]]'} - -#-------------------------------------------------- -# ESMF regrid weights and output variable table -weight_bilinear=${weight_bilinear:-$FIXfv3/$CASE/fv3_SCRIP_${CASE}_GRIDSPEC_lon${LONB}_lat${LATB}.${GG}.bilinear.nc} -weight_neareststod=${weight_neareststod:-$FIXfv3/$CASE/fv3_SCRIP_${CASE}_GRIDSPEC_lon${LONB}_lat${LATB}.${GG}.neareststod.nc} - -#------------------------------------------------------- -# Go to the directory where the history files are -cd $DATA || exit 8 - -#------------------------------------------------------- -# Create namelist -rm -f regrid-nemsio.input - -cat > regrid-nemsio.input << EOF -&share - debug=$DEBUG, - ntrunc=$JCAP, - nlons=$LONB, - nlats=$LATB, - datapathout2d='$NEMSIO_OUT2DNAME', - datapathout3d='$NEMSIO_OUT3DNAME', - analysis_filename='fv3_history.tile1.nc','fv3_history.tile2.nc','fv3_history.tile3.nc','fv3_history.tile4.nc','fv3_history.tile5.nc','fv3_history.tile6.nc', - analysis_filename2d='fv3_history2d.tile1.nc','fv3_history2d.tile2.nc','fv3_history2d.tile3.nc','fv3_history2d.tile4.nc','fv3_history2d.tile5.nc','fv3_history2d.tile6.nc', - forecast_timestamp='${CDATE}', - variable_table='$REGRID_NEMSIO_TBL', - nemsio_opt3d='bin4', - nemsio_opt2d='bin4' -/ - -&interpio - esmf_bilinear_filename='$weight_bilinear', - esmf_neareststod_filename='$weight_neareststod', - gfs_hyblevs_filename='$FIX_AM/global_hyblev.l$LEVS.txt' -/ -EOF - -#------------------------------------------------------------------ -export OMP_NUM_THREADS=$NTHREADS_REGRID_NEMSIO -$APRUN_REGRID_NEMSIO $REGRID_NEMSIO_EXEC - -export ERR=$? -export err=$ERR -$ERRSCRIPT || exit $err - -rm -f regrid-nemsio.input - -#------------------------------------------------------------------ -PDY=$(echo $CDATE | cut -c1-8) -cyc=$(echo $CDATE | cut -c9-10) -PREFIX=${PREFIX:-"${CDUMP}.t${cyc}z."} -SUFFIX=${SUFFIX:-".nemsio"} -for ftype in atm sfc; do - for file in $(ls -1 ${ftype}.${CDATE}.fhr*); do - fhrchar=$(echo $file | cut -d. -f3 | cut -c4-) - $NMV $file ${PREFIX}${ftype}f${fhrchar}${SUFFIX} - done -done - -#------------------------------------------------------------------ - -exit $err diff --git a/ush/gaussian_sfcanl.sh b/ush/gaussian_sfcanl.sh index 48eff0d7c1..e7be2c034f 100755 --- a/ush/gaussian_sfcanl.sh +++ b/ush/gaussian_sfcanl.sh @@ -91,7 +91,7 @@ # # output data: $PGMOUT # $PGMERR -# $COMOUT/${APREFIX}sfcanl${ASUFFIX} +# $COMOUT/${APREFIX}sfcanl.nc # # Remarks: # @@ -121,7 +121,6 @@ LATB_SFC=${LATB_SFC:-$LATB_CASE} DONST=${DONST:-"NO"} LEVS=${LEVS:-64} LEVSP1=$(($LEVS+1)) -OUTPUT_FILE=${OUTPUT_FILE:-"netcdf"} export NETCDF_OUT=".true." # Directories. gfs_ver=${gfs_ver:-v16.3.0} @@ -201,7 +200,7 @@ $NLN $FIXfv3/$CASE/${CASE}_oro_data.tile6.nc ./orog.tile6.nc $NLN $SIGLEVEL ./vcoord.txt # output gaussian global surface analysis files -$NLN $COMOUT/${APREFIX}sfcanl${ASUFFIX} ./sfc.gaussian.analysis.file +$NLN $COMOUT/${APREFIX}sfcanl.nc ./sfc.gaussian.analysis.file # Executable namelist cat < fort.41 diff --git a/ush/gfs_bufr_netcdf.sh b/ush/gfs_bufr_netcdf.sh index d58d383307..b358c6b69a 100755 --- a/ush/gfs_bufr_netcdf.sh +++ b/ush/gfs_bufr_netcdf.sh @@ -48,10 +48,8 @@ else bufrflag=".false." fi -fformat="nc" - - SFCF="sfc" - CLASS="class1fv3" +SFCF="sfc" +CLASS="class1fv3" cat << EOF > gfsparm &NAMMET levs=$LEVS,makebufr=$bufrflag, @@ -82,7 +80,7 @@ do ic=0 while [ $ic -lt 1000 ] do - if [ ! -f $COMIN/${RUN}.${cycle}.logf${hh2}.${fformat} ] + if [ ! -f $COMIN/${RUN}.${cycle}.logf${hh2}.txt ] then sleep 10 ic=$(expr $ic + 1) @@ -96,8 +94,8 @@ do fi done #------------------------------------------------------------------ - ln -sf $COMIN/${RUN}.${cycle}.atmf${hh2}.${fformat} sigf${hh} - ln -sf $COMIN/${RUN}.${cycle}.${SFCF}f${hh2}.${fformat} flxf${hh} + ln -sf $COMIN/${RUN}.${cycle}.atmf${hh2}.nc sigf${hh} + ln -sf $COMIN/${RUN}.${cycle}.${SFCF}f${hh2}.nc flxf${hh} hh=$( expr $hh + $FINT ) if test $hh -lt 10 diff --git a/ush/gfs_post.sh b/ush/gfs_post.sh index 6a0a808802..01161acf52 100755 --- a/ush/gfs_post.sh +++ b/ush/gfs_post.sh @@ -222,7 +222,6 @@ export LOGSCRIPT=${LOGSCRIPT:-} export ENDSCRIPT=${ENDSCRIPT:-} export GFSOUT=${GFSOUT:-gfsout} export CTLFILE=${CTLFILE:-${NWPROD}/parm/gfs_cntrl.parm} -export OUTPUT_FILE=${OUTPUT_FILE:-"netcdf"} export GRIBVERSION=${GRIBVERSION:-'grib1'} # Other variables. export POSTGPVARS=${POSTGPVARS} diff --git a/ush/hpssarch_gen.sh b/ush/hpssarch_gen.sh index 8283cc66b6..f88fc213e2 100755 --- a/ush/hpssarch_gen.sh +++ b/ush/hpssarch_gen.sh @@ -11,12 +11,9 @@ type=${1:-gfs} ##gfs, gdas, enkfgdas or enkfggfs CDATE=${CDATE:-2018010100} PDY=$(echo $CDATE | cut -c 1-8) cyc=$(echo $CDATE | cut -c 9-10) -OUTPUT_FILE=${OUTPUT_FILE:-"netcdf"} ARCH_GAUSSIAN=${ARCH_GAUSSIAN:-"YES"} ARCH_GAUSSIAN_FHMAX=${ARCH_GAUSSIAN_FHMAX:-36} ARCH_GAUSSIAN_FHINC=${ARCH_GAUSSIAN_FHINC:-6} -SUFFIX=${SUFFIX:-".nc"} -format="netcdf" # Set whether to archive downstream products DO_DOWN=${DO_DOWN:-"NO"} @@ -42,15 +39,15 @@ if [ $type = "gfs" ]; then if [ $ARCH_GAUSSIAN = "YES" ]; then rm -f gfs_pgrb2b.txt - rm -f gfs_${format}b.txt + rm -f gfs_netcdfb.txt rm -f gfs_flux.txt touch gfs_pgrb2b.txt - touch gfs_${format}b.txt + touch gfs_netcdfb.txt touch gfs_flux.txt if [ $MODE = "cycled" ]; then - rm -f gfs_${format}a.txt - touch gfs_${format}a.txt + rm -f gfs_netcdfa.txt + touch gfs_netcdfa.txt fi fi @@ -71,18 +68,18 @@ if [ $type = "gfs" ]; then echo "${dirname}${head}pgrb2b.1p00.anl.idx " >>gfs_pgrb2b.txt if [ $MODE = "cycled" ]; then - echo "${dirname}${head}atmanl${SUFFIX} " >>gfs_${format}a.txt - echo "${dirname}${head}sfcanl${SUFFIX} " >>gfs_${format}a.txt - echo "${dirname}${head}atmi*.nc " >>gfs_${format}a.txt - echo "${dirname}${head}dtfanl.nc " >>gfs_${format}a.txt - echo "${dirname}${head}loginc.txt " >>gfs_${format}a.txt + echo "${dirname}${head}atmanl.nc " >>gfs_netcdfa.txt + echo "${dirname}${head}sfcanl.nc " >>gfs_netcdfa.txt + echo "${dirname}${head}atmi*.nc " >>gfs_netcdfa.txt + echo "${dirname}${head}dtfanl.nc " >>gfs_netcdfa.txt + echo "${dirname}${head}loginc.txt " >>gfs_netcdfa.txt fi fh=0 while [ $fh -le $ARCH_GAUSSIAN_FHMAX ]; do fhr=$(printf %03i $fh) - echo "${dirname}${head}atmf${fhr}${SUFFIX} " >>gfs_${format}b.txt - echo "${dirname}${head}sfcf${fhr}${SUFFIX} " >>gfs_${format}b.txt + echo "${dirname}${head}atmf${fhr}.nc " >>gfs_netcdfb.txt + echo "${dirname}${head}sfcf${fhr}.nc " >>gfs_netcdfb.txt fh=$((fh+ARCH_GAUSSIAN_FHINC)) done fi @@ -301,16 +298,16 @@ if [ $type = "gdas" ]; then echo "${dirname}${head}pgrb2.0p25.anl.idx " >>gdas.txt echo "${dirname}${head}pgrb2.1p00.anl " >>gdas.txt echo "${dirname}${head}pgrb2.1p00.anl.idx " >>gdas.txt - echo "${dirname}${head}atmanl${SUFFIX} " >>gdas.txt - echo "${dirname}${head}sfcanl${SUFFIX} " >>gdas.txt - if [ -s $ROTDIR/${dirpath}${head}atmanl.ensres${SUFFIX} ]; then - echo "${dirname}${head}atmanl.ensres${SUFFIX} " >>gdas.txt + echo "${dirname}${head}atmanl.nc " >>gdas.txt + echo "${dirname}${head}sfcanl.nc " >>gdas.txt + if [ -s $ROTDIR/${dirpath}${head}atmanl.ensres.nc ]; then + echo "${dirname}${head}atmanl.ensres.nc " >>gdas.txt fi - if [ -s $ROTDIR/${dirpath}${head}atma003.ensres${SUFFIX} ]; then - echo "${dirname}${head}atma003.ensres${SUFFIX} " >>gdas.txt + if [ -s $ROTDIR/${dirpath}${head}atma003.ensres.nc ]; then + echo "${dirname}${head}atma003.ensres.nc " >>gdas.txt fi - if [ -s $ROTDIR/${dirpath}${head}atma009.ensres${SUFFIX} ]; then - echo "${dirname}${head}atma009.ensres${SUFFIX} " >>gdas.txt + if [ -s $ROTDIR/${dirpath}${head}atma009.ensres.nc ]; then + echo "${dirname}${head}atma009.ensres.nc " >>gdas.txt fi if [ -s $ROTDIR/${dirpath}${head}cnvstat ]; then echo "${dirname}${head}cnvstat " >>gdas.txt @@ -338,8 +335,8 @@ if [ $type = "gdas" ]; then echo "${dirname}${head}pgrb2.1p00.f${fhr} " >>gdas.txt echo "${dirname}${head}pgrb2.1p00.f${fhr}.idx " >>gdas.txt echo "${dirname}${head}logf${fhr}.txt " >>gdas.txt - echo "${dirname}${head}atmf${fhr}${SUFFIX} " >>gdas.txt - echo "${dirname}${head}sfcf${fhr}${SUFFIX} " >>gdas.txt + echo "${dirname}${head}atmf${fhr}.nc " >>gdas.txt + echo "${dirname}${head}sfcf${fhr}.nc " >>gdas.txt fh=$((fh+3)) done flist="001 002 004 005 007 008" @@ -442,18 +439,18 @@ if [ $type = "enkfgdas" -o $type = "enkfgfs" ]; then fi for FHR in $nfhrs; do # loop over analysis times in window if [ $FHR -eq 6 ]; then - if [ -s $ROTDIR/${dirpath}${head}atmanl.ensmean${SUFFIX} ]; then - echo "${dirname}${head}atmanl.ensmean${SUFFIX} " >>enkf${CDUMP}.txt + if [ -s $ROTDIR/${dirpath}${head}atmanl.ensmean.nc ]; then + echo "${dirname}${head}atmanl.ensmean.nc " >>enkf${CDUMP}.txt fi - if [ -s $ROTDIR/${dirpath}${head}atminc.ensmean${SUFFIX} ]; then - echo "${dirname}${head}atminc.ensmean${SUFFIX} " >>enkf${CDUMP}.txt + if [ -s $ROTDIR/${dirpath}${head}atminc.ensmean.nc ]; then + echo "${dirname}${head}atminc.ensmean.nc " >>enkf${CDUMP}.txt fi else - if [ -s $ROTDIR/${dirpath}${head}atma00${FHR}.ensmean${SUFFIX} ]; then - echo "${dirname}${head}atma00${FHR}.ensmean${SUFFIX} " >>enkf${CDUMP}.txt + if [ -s $ROTDIR/${dirpath}${head}atma00${FHR}.ensmean.nc ]; then + echo "${dirname}${head}atma00${FHR}.ensmean.nc " >>enkf${CDUMP}.txt fi - if [ -s $ROTDIR/${dirpath}${head}atmi00${FHR}.ensmean${SUFFIX} ]; then - echo "${dirname}${head}atmi00${FHR}.ensmean${SUFFIX} " >>enkf${CDUMP}.txt + if [ -s $ROTDIR/${dirpath}${head}atmi00${FHR}.ensmean.nc ]; then + echo "${dirname}${head}atmi00${FHR}.ensmean.nc " >>enkf${CDUMP}.txt fi fi done # loop over FHR @@ -474,12 +471,10 @@ if [ $type = "enkfgdas" -o $type = "enkfgfs" ]; then fh=3 while [ $fh -le 9 ]; do fhr=$(printf %03i $fh) - echo "${dirname}${head}atmf${fhr}.ensmean${SUFFIX} " >>enkf${CDUMP}.txt - echo "${dirname}${head}sfcf${fhr}.ensmean${SUFFIX} " >>enkf${CDUMP}.txt - if [ $OUTPUT_FILE = "netcdf" ]; then - if [ -s $ROTDIR/${dirpath}${head}atmf${fhr}.ensspread${SUFFIX} ]; then - echo "${dirname}${head}atmf${fhr}.ensspread${SUFFIX} " >>enkf${CDUMP}.txt - fi + echo "${dirname}${head}atmf${fhr}.ensmean.nc " >>enkf${CDUMP}.txt + echo "${dirname}${head}sfcf${fhr}.ensmean.nc " >>enkf${CDUMP}.txt + if [ -s $ROTDIR/${dirpath}${head}atmf${fhr}.ensspread.nc ]; then + echo "${dirname}${head}atmf${fhr}.ensspread.nc " >>enkf${CDUMP}.txt fi fh=$((fh+3)) done @@ -508,34 +503,34 @@ if [ $type = "enkfgdas" -o $type = "enkfgfs" ]; then for FHR in $nfhrs; do # loop over analysis times in window if [ $FHR -eq 6 ]; then if [ $n -le $NTARS2 ]; then - if [ -s $ROTDIR/${dirpath}${head}atmanl${SUFFIX} ] ; then - echo "${dirname}${head}atmanl${SUFFIX} " >>enkf${CDUMP}_grp${n}.txt + if [ -s $ROTDIR/${dirpath}${head}atmanl.nc ] ; then + echo "${dirname}${head}atmanl.nc " >>enkf${CDUMP}_grp${n}.txt fi - if [ -s $ROTDIR/${dirpath}${head}ratminc${SUFFIX} ] ; then - echo "${dirname}${head}ratminc${SUFFIX} " >>enkf${CDUMP}_grp${n}.txt + if [ -s $ROTDIR/${dirpath}${head}ratminc.nc ] ; then + echo "${dirname}${head}ratminc.nc " >>enkf${CDUMP}_grp${n}.txt fi fi - if [ -s $ROTDIR/${dirpath}${head}ratminc${SUFFIX} ] ; then - echo "${dirname}${head}ratminc${SUFFIX} " >>enkf${CDUMP}_restarta_grp${n}.txt + if [ -s $ROTDIR/${dirpath}${head}ratminc.nc ] ; then + echo "${dirname}${head}ratminc.nc " >>enkf${CDUMP}_restarta_grp${n}.txt fi else if [ $n -le $NTARS2 ]; then - if [ -s $ROTDIR/${dirpath}${head}atma00${FHR}${SUFFIX} ] ; then - echo "${dirname}${head}atma00${FHR}${SUFFIX} " >>enkf${CDUMP}_grp${n}.txt + if [ -s $ROTDIR/${dirpath}${head}atma00${FHR}.nc ] ; then + echo "${dirname}${head}atma00${FHR}.nc " >>enkf${CDUMP}_grp${n}.txt fi - if [ -s $ROTDIR/${dirpath}${head}ratmi00${FHR}${SUFFIX} ] ; then - echo "${dirname}${head}ratmi00${FHR}${SUFFIX} " >>enkf${CDUMP}_grp${n}.txt + if [ -s $ROTDIR/${dirpath}${head}ratmi00${FHR}.nc ] ; then + echo "${dirname}${head}ratmi00${FHR}.nc " >>enkf${CDUMP}_grp${n}.txt fi fi - if [ -s $ROTDIR/${dirpath}${head}ratmi00${FHR}${SUFFIX} ] ; then - echo "${dirname}${head}ratmi00${FHR}${SUFFIX} " >>enkf${CDUMP}_restarta_grp${n}.txt + if [ -s $ROTDIR/${dirpath}${head}ratmi00${FHR}.nc ] ; then + echo "${dirname}${head}ratmi00${FHR}.nc " >>enkf${CDUMP}_restarta_grp${n}.txt fi fi - echo "${dirname}${head}atmf00${FHR}${SUFFIX} " >>enkf${CDUMP}_grp${n}.txt + echo "${dirname}${head}atmf00${FHR}.nc " >>enkf${CDUMP}_grp${n}.txt if [ $FHR -eq 6 ]; then - echo "${dirname}${head}sfcf00${FHR}${SUFFIX} " >>enkf${CDUMP}_grp${n}.txt + echo "${dirname}${head}sfcf00${FHR}.nc " >>enkf${CDUMP}_grp${n}.txt fi done # loop over FHR diff --git a/workflow/rocoto/workflow_tasks.py b/workflow/rocoto/workflow_tasks.py index c31397dd26..f07d26a3a8 100644 --- a/workflow/rocoto/workflow_tasks.py +++ b/workflow/rocoto/workflow_tasks.py @@ -242,7 +242,6 @@ def init(self): def prep(self): - suffix = self._base["SUFFIX"] dump_suffix = self._base["DUMP_SUFFIX"] gfs_cyc = self._base["gfs_cyc"] dmpdir = self._base["DMPDIR"] @@ -251,7 +250,7 @@ def prep(self): deps = [] dep_dict = {'type': 'metatask', 'name': f'{"gdas"}post', 'offset': '-06:00:00'} deps.append(rocoto.add_dependency(dep_dict)) - data = f'&ROTDIR;/gdas.@Y@m@d/@H/atmos/gdas.t@Hz.atmf009{suffix}' + data = f'&ROTDIR;/gdas.@Y@m@d/@H/atmos/gdas.t@Hz.atmf009.nc' dep_dict = {'type': 'data', 'data': data, 'offset': '-06:00:00'} deps.append(rocoto.add_dependency(dep_dict)) data = f'{dmpdir}/{self.cdump}{dump_suffix}.@Y@m@d/@H/atmos/{self.cdump}.t@Hz.updated.status.tm00.bufr_d' @@ -399,7 +398,6 @@ def analdiag(self): def atmanalprep(self): - suffix = self._base["SUFFIX"] dump_suffix = self._base["DUMP_SUFFIX"] gfs_cyc = self._base["gfs_cyc"] dmpdir = self._base["DMPDIR"] @@ -408,7 +406,7 @@ def atmanalprep(self): deps = [] dep_dict = {'type': 'metatask', 'name': 'gdaspost', 'offset': '-06:00:00'} deps.append(rocoto.add_dependency(dep_dict)) - data = f'&ROTDIR;/gdas.@Y@m@d/@H/atmos/gdas.t@Hz.atmf009{suffix}' + data = f'&ROTDIR;/gdas.@Y@m@d/@H/atmos/gdas.t@Hz.atmf009.nc' dep_dict = {'type': 'data', 'data': data, 'offset': '-06:00:00'} deps.append(rocoto.add_dependency(dep_dict)) data = f'{dmpdir}/{self.cdump}{dump_suffix}.@Y@m@d/@H/atmos/{self.cdump}.t@Hz.updated.status.tm00.bufr_d' @@ -456,14 +454,13 @@ def atmanalpost(self): def aeroanlinit(self): - suffix = self._base["SUFFIX"] dump_suffix = self._base["DUMP_SUFFIX"] dmpdir = self._base["DMPDIR"] deps = [] dep_dict = {'type': 'metatask', 'name': 'gdaspost', 'offset': '-06:00:00'} deps.append(rocoto.add_dependency(dep_dict)) - data = f'&ROTDIR;/gdas.@Y@m@d/@H/atmos/gdas.t@Hz.atmf009{suffix}' + data = f'&ROTDIR;/gdas.@Y@m@d/@H/atmos/gdas.t@Hz.atmf009.nc' dep_dict = {'type': 'data', 'data': data, 'offset': '-06:00:00'} deps.append(rocoto.add_dependency(dep_dict)) data = f'{dmpdir}/{self.cdump}{dump_suffix}.@Y@m@d/@H/atmos/{self.cdump}.t@Hz.updated.status.tm00.bufr_d' @@ -501,12 +498,11 @@ def aeroanlfinal(self): def ocnanalprep(self): - suffix = self._base["SUFFIX"] dump_suffix = self._base["DUMP_SUFFIX"] dmpdir = self._base["DMPDIR"] deps = [] - data = f'&ROTDIR;/gdas.@Y@m@d/@H/ocean/gdas.t@Hz.ocnf009{suffix}' + data = f'&ROTDIR;/gdas.@Y@m@d/@H/ocean/gdas.t@Hz.ocnf009.nc' dep_dict = {'type': 'data', 'data': data, 'offset': '-06:00:00'} deps.append(rocoto.add_dependency(dep_dict)) dependencies = rocoto.create_dependency(dep=deps) @@ -1087,7 +1083,6 @@ def eupd(self): def atmensanalprep(self): - suffix = self._base["SUFFIX"] dump_suffix = self._base["DUMP_SUFFIX"] gfs_cyc = self._base["gfs_cyc"] dmpdir = self._base["DMPDIR"] @@ -1096,7 +1091,7 @@ def atmensanalprep(self): deps = [] dep_dict = {'type': 'metatask', 'name': 'gdaspost', 'offset': '-06:00:00'} deps.append(rocoto.add_dependency(dep_dict)) - data = f'&ROTDIR;/gdas.@Y@m@d/@H/atmos/gdas.t@Hz.atmf009{suffix}' + data = f'&ROTDIR;/gdas.@Y@m@d/@H/atmos/gdas.t@Hz.atmf009.nc' dep_dict = {'type': 'data', 'data': data, 'offset': '-06:00:00'} deps.append(rocoto.add_dependency(dep_dict)) data = f'{dmpdir}/{self.cdump}{dump_suffix}.@Y@m@d/@H/atmos/{self.cdump}.t@Hz.updated.status.tm00.bufr_d'