diff --git a/VERSION b/VERSION index 1cac385c6..0eed1a29e 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.11.0 +1.12.0 diff --git a/docs/main.md b/docs/main.md index 9eac5defa..57a5e43a3 100644 --- a/docs/main.md +++ b/docs/main.md @@ -9,6 +9,7 @@ https://github.com/ufs-community/UFS_UTILS. ## Documentation for Previous Versions of UFS_UTILS +* [UFS_UTILS Version 1.12.0](ver-1.12.0/index.html) * [UFS_UTILS Version 1.11.0](ver-1.11.0/index.html) * [UFS_UTILS Version 1.10.0](ver-1.10.0/index.html) * [UFS_UTILS Version 1.9.0](ver-1.9.0/index.html) diff --git a/reg_tests/global_cycle/C192.lndincsoilnoahmp.sh b/reg_tests/global_cycle/C192.lndincsoilnoahmp.sh index b5780eb64..58b25d26f 100755 --- a/reg_tests/global_cycle/C192.lndincsoilnoahmp.sh +++ b/reg_tests/global_cycle/C192.lndincsoilnoahmp.sh @@ -15,9 +15,10 @@ NCCMP=${NCCMP:-$(which nccmp)} export MAX_TASKS_CY=6 export HOMEgfs=$NWPROD -export BASE_GSM=$NWPROD -export CYCLEXEC=$BASE_GSM/exec/global_cycle +export FIXgfs=$HOMEreg/fix + +export CYCLEXEC=$HOMEgfs/exec/global_cycle export CDATE=2019073000 export FHOUR=00 @@ -34,9 +35,6 @@ export JCAP=1534 export LONB=3072 export LATB=1536 -export OROFIX=$HOMEreg/fix/$CASE -export FIXgsm=$BASE_GSM/fix/am - export DONST="NO" export use_ufo=.true. @@ -46,7 +44,7 @@ export DO_LNDINC=".TRUE." export VERBOSE=YES export CYCLVARS=FSNOL=-2.,FSNOS=99999., -$BASE_GSM/ush/global_cycle_driver.sh +$HOMEgfs/ush/global_cycle_driver.sh iret=$? if [ $iret -ne 0 ]; then @@ -77,7 +75,7 @@ if [ $test_failed -ne 0 ]; then echo "<<< C192 LANDINC SOIL-NOAHMP CYCLE TEST FAILED. >>>" echo "**********************************************" if [ "$UPDATE_BASELINE" = "TRUE" ]; then - $BASE_GSM/reg_tests/update_baseline.sh $HOMEreg "c192.lndincsoilnoahmp" $commit_num + $HOMEgfs/reg_tests/update_baseline.sh $HOMEreg "c192.lndincsoilnoahmp" $commit_num fi else echo diff --git a/reg_tests/global_cycle/C48.noahmp.fracgrid.sh b/reg_tests/global_cycle/C48.noahmp.fracgrid.sh index ec6d03d37..07e6e23e6 100755 --- a/reg_tests/global_cycle/C48.noahmp.fracgrid.sh +++ b/reg_tests/global_cycle/C48.noahmp.fracgrid.sh @@ -15,9 +15,8 @@ NCCMP=${NCCMP:-$(which nccmp)} export MAX_TASKS_CY=6 export HOMEgfs=$NWPROD -export BASE_GSM=$NWPROD -export CYCLEXEC=$BASE_GSM/exec/global_cycle +export CYCLEXEC=$HOMEgfs/exec/global_cycle export CDATE=2021032406 export FHOUR=00 @@ -36,11 +35,7 @@ export JCAP=1534 export LONB=3072 export LATB=1536 -export OROFIX=$HOMEreg/fix/$CASE - -export FIXgsm=$BASE_GSM/fix/am - -export FNAISC=$FIXgsm/IMS-NIC.blended.ice.monthly.clim.grb +export FNAISC=$HOMEgfs/fix/am/IMS-NIC.blended.ice.monthly.clim.grb export DONST="YES" export use_ufo=.true. @@ -49,7 +44,7 @@ export FRAC_GRID=.true. export VERBOSE=YES export CYCLVARS=FSNOL=99999.,FSNOS=99999., -$BASE_GSM/ush/global_cycle_driver.sh +$HOMEgfs/ush/global_cycle_driver.sh iret=$? if [ $iret -ne 0 ]; then @@ -80,7 +75,7 @@ if [ $test_failed -ne 0 ]; then echo "<<< C48 NOAHMP FRAC GRID TEST FAILED. >>>" echo "******************************************" if [ "$UPDATE_BASELINE" = "TRUE" ]; then - $BASE_GSM/reg_tests/update_baseline.sh $HOMEreg "c48.noahmp.fracgrid" $commit_num + $HOMEgfs/reg_tests/update_baseline.sh $HOMEreg "c48.noahmp.fracgrid" $commit_num fi else echo diff --git a/reg_tests/global_cycle/C768.fv3gfs.sh b/reg_tests/global_cycle/C768.fv3gfs.sh index 8dd6d303c..9621e791d 100755 --- a/reg_tests/global_cycle/C768.fv3gfs.sh +++ b/reg_tests/global_cycle/C768.fv3gfs.sh @@ -12,9 +12,10 @@ NCCMP=${NCCMP:-$(which nccmp)} export MAX_TASKS_CY=6 export HOMEgfs=$NWPROD -export BASE_GSM=$NWPROD -export CYCLEXEC=$BASE_GSM/exec/global_cycle +export CYCLEXEC=$HOMEgfs/exec/global_cycle + +export FIXgfs=$HOMEreg/fix export CDATE=2019073000 export FHOUR=00 @@ -33,22 +34,25 @@ export JCAP=1534 export LONB=3072 export LATB=1536 -export OROFIX=$HOMEreg/fix/$CASE - -export FIXgsm=$BASE_GSM/fix/am - -export FNALBC2=$FIXgsm/global_albedo4.1x1.grb -export FNALBC=$FIXgsm/global_snowfree_albedo.bosu.t1534.3072.1536.rg.grb -export FNALBC=$FIXgsm/global_snowfree_albedo.bosu.t1534.3072.1536.rg.grb -export FNTG3C=$FIXgsm/global_tg3clim.2.6x1.5.grb -export FNVETC=$FIXgsm/global_vegtype.igbp.t1534.3072.1536.rg.grb -export FNSOTC=$FIXgsm/global_soiltype.statsgo.t1534.3072.1536.rg.grb -export FNVEGC=$FIXgsm/global_vegfrac.0.144.decpercent.grb -export FNVMNC=$FIXgsm/global_shdmin.0.144x0.144.grb -export FNVMXC=$FIXgsm/global_shdmax.0.144x0.144.grb -export FNSLPC=$FIXgsm/global_slope.1x1.grb -export FNABSC=$FIXgsm/global_mxsnoalb.uariz.t1534.3072.1536.rg.grb -export FNAISC=$FIXgsm/CFSR.SEAICE.1982.2012.monthly.clim.grb +export FNALBC2=$HOMEgfs/fix/am/global_albedo4.1x1.grb +export FNALBC=$HOMEgfs/fix/am/global_snowfree_albedo.bosu.t1534.3072.1536.rg.grb +export FNALBC=$HOMEgfs/fix/am/global_snowfree_albedo.bosu.t1534.3072.1536.rg.grb +export FNTG3C=$HOMEgfs/fix/am/global_tg3clim.2.6x1.5.grb +export FNVETC=$HOMEgfs/fix/am/global_vegtype.igbp.t1534.3072.1536.rg.grb +export FNSOTC=$HOMEgfs/fix/am/global_soiltype.statsgo.t1534.3072.1536.rg.grb +export FNVEGC=$HOMEgfs/fix/am/global_vegfrac.0.144.decpercent.grb +export FNVMNC=$HOMEgfs/fix/am/global_shdmin.0.144x0.144.grb +export FNVMXC=$HOMEgfs/fix/am/global_shdmax.0.144x0.144.grb +export FNSLPC=$HOMEgfs/fix/am/global_slope.1x1.grb +export FNABSC=$HOMEgfs/fix/am/global_mxsnoalb.uariz.t1534.3072.1536.rg.grb +export FNAISC=$HOMEgfs/fix/am/CFSR.SEAICE.1982.2012.monthly.clim.grb +export FNMSKH=$HOMEgfs/fix/am/global_slmask.t1534.3072.1536.grb +export FNGLAC=$HOMEgfs/fix/am/global_glacier.2x2.grb +export FNMXIC=$HOMEgfs/fix/am/global_maxice.2x2.grb +export FNTSFC=$HOMEgfs/fix/am/RTGSST.1982.2012.monthly.clim.grb +export FNSALC=$HOMEgfs/fix/am/global_salclm.t1534.3072.1536.nc +export FNSNOC=$HOMEgfs/fix/am/global_snoclim.1.875.grb +export FNSMCC=$HOMEgfs/fix/am/global_soilmgldas.statsgo.t1534.3072.1536.grb export DONST="YES" export use_ufo=.true. @@ -56,7 +60,7 @@ export use_ufo=.true. export VERBOSE=YES export CYCLVARS=FSNOL=-2.,FSNOS=99999., -$BASE_GSM/ush/global_cycle_driver.sh +$HOMEgfs/ush/global_cycle_driver.sh iret=$? if [ $iret -ne 0 ]; then @@ -87,7 +91,7 @@ if [ $test_failed -ne 0 ]; then echo "<<< C768 GLOBAL CYCLE TEST FAILED. >>>" echo "*********************************" if [ "$UPDATE_BASELINE" = "TRUE" ]; then - $BASE_GSM/reg_tests/update_baseline.sh $HOMEreg "c768.fv3gfs" $commit_num + $HOMEgfs/reg_tests/update_baseline.sh $HOMEreg "c768.fv3gfs" $commit_num fi else echo diff --git a/reg_tests/global_cycle/C768.lndincsnow.sh b/reg_tests/global_cycle/C768.lndincsnow.sh index 86a2a7815..b6455ebd7 100755 --- a/reg_tests/global_cycle/C768.lndincsnow.sh +++ b/reg_tests/global_cycle/C768.lndincsnow.sh @@ -13,9 +13,10 @@ NCCMP=${NCCMP:-$(which nccmp)} export MAX_TASKS_CY=6 export HOMEgfs=$NWPROD -export BASE_GSM=$NWPROD -export CYCLEXEC=$BASE_GSM/exec/global_cycle +export FIXgfs=$HOMEreg/fix + +export CYCLEXEC=$HOMEgfs/exec/global_cycle export CDATE=2019073000 export FHOUR=00 @@ -35,9 +36,6 @@ export JCAP=1534 export LONB=3072 export LATB=1536 -export OROFIX=$HOMEreg/fix/$CASE -export FIXgsm=$BASE_GSM/fix/am - export DONST="NO" export use_ufo=.true. @@ -47,7 +45,7 @@ export DO_LNDINC=".TRUE." export VERBOSE=YES export CYCLVARS=FSNOL=99999.,FSNOS=99999., -$BASE_GSM/ush/global_cycle_driver.sh +$HOMEgfs/ush/global_cycle_driver.sh iret=$? if [ $iret -ne 0 ]; then @@ -78,7 +76,7 @@ if [ $test_failed -ne 0 ]; then echo "<<< C768 LANDINC SNOW CYCLE TEST FAILED. >>>" echo "****************************************" if [ "$UPDATE_BASELINE" = "TRUE" ]; then - $BASE_GSM/reg_tests/update_baseline.sh $HOMEreg "c768.lndincsnow" $commit_num + $HOMEgfs/reg_tests/update_baseline.sh $HOMEreg "c768.lndincsnow" $commit_num fi else echo diff --git a/scripts/exemcsfc_global_sfc_prep.sh b/scripts/exemcsfc_global_sfc_prep.sh index bea65decb..d7117955a 100755 --- a/scripts/exemcsfc_global_sfc_prep.sh +++ b/scripts/exemcsfc_global_sfc_prep.sh @@ -63,16 +63,12 @@ then set -x fi -# path names -export envir=${envir:-"prod"} -export NWROOT=${NWROOT:-"/nw${envir}"} - RUN=${RUN:-"gfs"} -export HOMEgfs=${HOMEgfs:-$NWROOT/gfs.${gfs_ver:?}} +export PACKAGEROOT=${PACKAGEROOT:-/lfs/h1/ops/prod/packages} +export HOMEgfs=${HOMEgfs:-${PACKAGEROOT}/gfs.${gfs_ver:?}} export USHgfs=${USHgfs:-$HOMEgfs/ush} export FIXgfs=${FIXgfs:-$HOMEgfs/fix} -FIXgfs_am=${FIXgfs_am:-$HOMEgfs/fix/am} export EXECgfs=${EXECgfs:-$HOMEgfs/exec} # output com directory. @@ -116,7 +112,7 @@ export IMS_FILE=${IMS_FILE:-"ims.grib2"} export FIVE_MIN_ICE_FILE=${FIVE_MIN_ICE_FILE:-"seaice.5min.grib2"} # landmask file for global 5-minute data (grib 2) -export FIVE_MIN_ICE_MASK_FILE=${FIVE_MIN_ICE_MASK_FILE:-${FIXgfs_am}/emcsfc_gland5min.grib2} +export FIVE_MIN_ICE_MASK_FILE=${FIVE_MIN_ICE_MASK_FILE:-${FIXgfs}/am/emcsfc_gland5min.grib2} # the output ice blend data (grib) export BLENDED_ICE_FILE=${BLENDED_ICE_FILE:-seaice.5min.blend} @@ -182,10 +178,10 @@ LATB=${LATB:-"1536"} resolution="${JCAP}.${LONB}.${LATB}" -export MODEL_SLMASK_FILE=${SLMASK:-$FIXgfs_am/global_slmask.t${resolution}.grb} -export MODEL_LATITUDE_FILE=${MDL_LATS:-$FIXgfs_am/global_latitudes.t${resolution}.grb} -export MODEL_LONGITUDE_FILE=${MDL_LONS:-$FIXgfs_am/global_longitudes.t${resolution}.grb} -export GFS_LONSPERLAT_FILE=${LONSPERLAT:-$FIXgfs_am/global_lonsperlat.t${resolution}.txt} +export MODEL_SLMASK_FILE=${SLMASK:-${FIXgfs}/am/global_slmask.t${resolution}.grb} +export MODEL_LATITUDE_FILE=${MDL_LATS:-${FIXgfs}/am/global_latitudes.t${resolution}.grb} +export MODEL_LONGITUDE_FILE=${MDL_LONS:-${FIXgfs}/am/global_longitudes.t${resolution}.grb} +export GFS_LONSPERLAT_FILE=${LONSPERLAT:-${FIXgfs}/am/global_lonsperlat.t${resolution}.txt} export MODEL_SNOW_FILE=${FNSNOAJCAP:-${RUN}.${cycle}.snogrb_t${resolution}} export MODEL_SNOW_FILE_m6hrs=${FNSNOGJCAP:-${COMINgfs_m6hrs}/${RUN}.${cycle_m6hrs}.snogrb_t${resolution}} @@ -240,10 +236,10 @@ LATB_ENKF=${LATB_ENKF:-"576"} resolution="${JCAP_ENKF}.${LONB_ENKF}.${LATB_ENKF}" -export MODEL_SLMASK_FILE=${SLMASK_ENKF:-$FIXgfs_am/global_slmask.t${resolution}.grb} -export MODEL_LATITUDE_FILE=${MDL_LATS_ENKF:-$FIXgfs_am/global_latitudes.t${resolution}.grb} -export MODEL_LONGITUDE_FILE=${MDL_LONS_ENKF:-$FIXgfs_am/global_longitudes.t${resolution}.grb} -export GFS_LONSPERLAT_FILE=${LONSPERLAT_ENKF:-$FIXgfs_am/global_lonsperlat.t${resolution}.txt} +export MODEL_SLMASK_FILE=${SLMASK_ENKF:-${FIXgfs}/am/global_slmask.t${resolution}.grb} +export MODEL_LATITUDE_FILE=${MDL_LATS_ENKF:-${FIXgfs}/am/global_latitudes.t${resolution}.grb} +export MODEL_LONGITUDE_FILE=${MDL_LONS_ENKF:-${FIXgfs}/am/global_longitudes.t${resolution}.grb} +export GFS_LONSPERLAT_FILE=${LONSPERLAT_ENKF:-${FIXgfs}/am/global_lonsperlat.t${resolution}.txt} export MODEL_SNOW_FILE=${FNSNOAJCAP_ENKF:-${RUN}.${cycle}.snogrb_t${resolution}} export MODEL_SNOW_FILE_m6hrs=${FNSNOGJCAP_ENKF:-${COMINgfs_m6hrs}/${RUN}.${cycle_m6hrs}.snogrb_t${resolution}} diff --git a/ush/emcsfc_ice_blend.sh b/ush/emcsfc_ice_blend.sh index f1b9421b1..45fcbc632 100755 --- a/ush/emcsfc_ice_blend.sh +++ b/ush/emcsfc_ice_blend.sh @@ -78,20 +78,18 @@ cd $DATA # copy output ice blend data to com? SENDCOM=${SENDCOM:-"NO"} -envir=${envir:-"prod"} -NWROOT=${NWROOT:-"/nw${envir}"} - -HOMEgfs=${HOMEgfs:-${NWPROD:-$NWROOT/gfs.${gfs_ver:?}}} -FIXam=${FIXam:-$HOMEgfs/fix/am} +PACKAGEROOT=${PACKAGEROOT:-/lfs/h1/ops/prod/packages} +HOMEgfs=${HOMEgfs:-$PACKAGEROOT/gfs.${gfs_ver:?}} EXECgfs=${EXECgfs:-$HOMEgfs/exec} - +FIXgfs=${FIXgfs:-$HOMEgfs/fix} + # output com directory. COMOUT=${COMOUT:-$PWD} # the input data. ims may be grib1 or grib2. five_min files are grib 2. IMS_FILE=${IMS_FILE:-"ims.grib2"} FIVE_MIN_ICE_FILE=${FIVE_MIN_ICE_FILE:-"seaice.5min.grib2"} -FIVE_MIN_ICE_MASK_FILE=${FIVE_MIN_ICE_MASK_FILE:-${FIXam}/emcsfc_gland5min.grib2} +FIVE_MIN_ICE_MASK_FILE=${FIVE_MIN_ICE_MASK_FILE:-${FIXgfs}/am/emcsfc_gland5min.grib2} # the output ice blend data (grib) BLENDED_ICE_FILE=${BLENDED_ICE_FILE:-seaice.5min.blend} diff --git a/ush/emcsfc_snow.sh b/ush/emcsfc_snow.sh index 2db1ebdfb..364dd72bc 100755 --- a/ush/emcsfc_snow.sh +++ b/ush/emcsfc_snow.sh @@ -73,11 +73,10 @@ fi # Path names #------------------------------------------------------------------------ -envir=${envir:-"prod"} -NWROOT=${NWROOT:-"/nw${envir}"} -HOMEgfs=${HOMEgfs:-$NWROOT/gfs.${gfs_ver:?}} +PACKAGEROOT=${PACKAGEROOT:-/lfs/h1/ops/prod/packages} +HOMEgfs=${HOMEgfs:-$PACKAGEROOT/gfs.${gfs_ver:?}} EXECgfs=${EXECgfs:-$HOMEgfs/exec} -FIXam=${FIXam:-$HOMEgfs/fix/am} +FIXgfs=${FIXgfs:-$HOMEgfs/fix} COMOUT=${COMOUT:-$PWD} @@ -114,7 +113,7 @@ IMS_FILE=${IMS_FILE:-"imssnow96.grb.grib2"} # File of snow cover climo used to qc the input snow data #------------------------------------------------------------------------ -CLIMO_QC=${CLIMO_QC:-${FIXam}/emcsfc_snow_cover_climo.grib2} +CLIMO_QC=${CLIMO_QC:-${FIXgfs}/am/emcsfc_snow_cover_climo.grib2} #------------------------------------------------------------------------ # Output snow analysis on model grid diff --git a/ush/global_cycle.sh b/ush/global_cycle.sh index d644c7410..5c69fd0df 100755 --- a/ush/global_cycle.sh +++ b/ush/global_cycle.sh @@ -18,24 +18,18 @@ # # Imported Shell Variables: # CASE Model resolution. Defaults to C768. -# JCAP Spectral truncation of the global fixed climatology files +# JCAP_CASE Spectral truncation of the global fixed climatology files # (such as albedo), which are on the old GFS gaussian grid. # Computed from CASE by default. -# LATB i-dimension of the global climatology files. NOT the +# LATB_CASE i-dimension of the global climatology files. NOT the # i-dimension of the model grid. Computed from CASE by default. -# LONB j-dimension of the global climatology files. NOT the +# LONB_CASE j-dimension of the global climatology files. NOT the # j-dimension of the model grid. Computed from CASE by default. -# BASEDIR Root directory where all scripts and fixed files reside. -# Default is /nwprod2. +# OCNRES Ocean grid resolution. '100' is one degree. # HOMEgfs Directory for gfs. Default is -# $BASEDIR/gfs.v15.0.0. -# FIX_DIR Directory for fixed data. Default is $HOMEgfs/fix. -# FIXam Directory for the global fixed climatology files. -# Defaults to $FIX_DIR/am -# OROFIX Directory for model orography data. Default is -# $FIX_DIR/orog/${CASE} -# FIX_SFC Directory for model surface climatological data. -# Default is $OROFIX/sfc. +# PACKAGEROOT/gfs.v15.0.0. +# PACKAGEROOT Location of gfs package. +# FIXgfs Directory for fixed data. Default is $HOMEgfs/fix. # EXECgfs Directory of the program executable. Defaults to # $HOMEgfs/exec # DATA Working directory @@ -55,46 +49,46 @@ # CYCLEXEC Program executable. # Defaults to ${EXECgfs}/global_cycle$XC # FNGLAC Input glacier climatology GRIB file. -# Defaults to ${FIXam}/global_glacier.2x2.grb +# Defaults to ${FIXgfs}/am/global_glacier.2x2.grb # FNMXIC Input maximum sea ice climatology GRIB file. -# Defaults to ${FIXam}/global_maxice.2x2.grb +# Defaults to ${FIXgfs}/am/global_maxice.2x2.grb # FNTSFC Input SST climatology GRIB file. -# Defaults to ${FIXam}/RTGSST.1982.2012.monthly.clim.grb +# Defaults to ${FIXgfs}/am/RTGSST.1982.2012.monthly.clim.grb # FNSALC Input Salinity climatology netcdf file. -# Defaults to ${FIXam}/global_salclm.t1534.3072.1536.nc +# Defaults to ${FIXgfs}/am/global_salclm.t1534.3072.1536.nc # FNSNOC Input snow climatology GRIB file. -# Defaults to ${FIXam}/global_snoclim.1.875.grb +# Defaults to ${FIXgfs}/am/global_snoclim.1.875.grb # FNZORC Input roughness climatology. # Defaults to igbp vegetation type-based lookup table # FNVETC must be set to igbp file: -# ${FIXam}/global_vegtype.igbp.t$JCAP_CASE.$LONB_CASE.$LATB_CASE.rg.grb +# ${FIXgfs}/am/global_vegtype.igbp.t$JCAP_CASE.$LONB_CASE.$LATB_CASE.rg.grb # FNALBC Input 4-component albedo climatology GRIB file. -# defaults to ${FIXam}/global_snowfree_albedo.bosu.t$JCAP_CASE.$LONB_CASE.$LATB_CASE.rg.grb +# defaults to ${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.snowfree_albedo.tileX.nc # FNALBC2 Input 'facsf' and 'facwf' albedo climatology GRIB file. -# Defaults to ${FIXam}/global_albedo4.1x1.grb +# Defaults to ${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.facsf.tileX.nc # FNAISC Input sea ice climatology GRIB file. -# Defaults to ${FIXam}/IMS-NIC.blended.ice.monthly.clim.grb +# Defaults to ${FIXgfs}/am/IMS-NIC.blended.ice.monthly.clim.grb # FNTG3C Input deep soil temperature climatology GRIB file. -# Defaults to ${FIXam}/global_tg3clim.2.6x1.5.grb +# Defaults to ${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.substrate_temperature.tileX.nc # FNVEGC Input vegetation fraction climatology GRIB file. -# Defaults to ${FIXam}/global_vegfrac.0.144.decpercent.grb +# Defaults to ${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.vegetation_greenness.tileX.nc # FNVETC Input vegetation type climatology GRIB file. -# Defaults to ${FIXam}/global_vegtype.igbp.t$JCAP_CASE.$LONB_CASE.$LATB_CASE.rg.grb +# Defaults to ${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.vegetation_type.tileX.nc # FNSOTC Input soil type climatology GRIB file. -# Defaults to ${FIXam}/global_soiltype.statsgo.t$JCAP_CASE.$LONB_CASE.$LATB_CASE.rg.grb +# Defaults to ${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.soil_type.tileX.nc # FNSMCC Input soil moisture climatology GRIB file. -# Defaults to ${FIXam}/global_soilmgldas.statsgo.t$JCAP_CASE.$LONB_CASE.$LATB_CASE.grb +# Defaults to ${FIXgfs}/am/global_soilmgldas.statsgo.t$JCAP_CASE.$LONB_CASE.$LATB_CASE.grb # FNVMNC Input min veg frac climatology GRIB file. -# Defaults to ${FIXam}/global_shdmin.0.144x0.144.grb +# Defaults to ${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.vegetation_greenness.tileX.nc # FNVMXC Input max veg frac climatology GRIB file. -# Defaults to ${FIXam}/global_shdmax.0.144x0.144.grb +# Defaults to ${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.vegetation_greenness.tileX.nc # FNSLPC Input slope type climatology GRIB file. -# Defaults to ${FIXam}/global_slope.1x1.grb +# Defaults to ${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.slope_type.tileX.nc # FNABSC Input max snow albedo climatology GRIB file. -# Defaults to ${FIXam}/global_mxsnoalb.uariz.t$JCAP_CASE.$LONB_CASE.$LATB_CASE.rg.grb +# Defaults to ${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.maximum_snow_albedo.tileX.nc # FNMSKH Input high resolution land mask GRIB file. Use to set mask for # some of the input climatology fields. This is NOT the model mask. -# Defaults to ${FIXam}/seaice_newland.grb +# Defaults to ${FIXgfs}/am/global_slmask.t1534.3072.1536.grb # NST_FILE GSI file on the gaussian grid containing NST increments. # Defaults to NULL (no file). # FNTSFA Input SST analysis GRIB file. @@ -233,13 +227,10 @@ OCNRES=${OCNRES:-100} # Directories. gfs_ver=${gfs_ver:-v15.0.0} -BASEDIR=${BASEDIR:-${NWROOT:-/nwprod2}} -HOMEgfs=${HOMEgfs:-$BASEDIR/gfs_ver.${gfs_ver}} +PACKAGEROOT=${PACKAGEROOT:-/lfs/h1/ops/prod/packages} +HOMEgfs=${HOMEgfs:-${PACKAGEROOT}/gfs_ver.${gfs_ver}} EXECgfs=${EXECgfs:-$HOMEgfs/exec} -FIX_DIR=${FIX_DIR:-$HOMEgfs/fix} -FIXam=${FIXam:-$FIX_DIR/am} -OROFIX=${OROFIX:-$FIX_DIR/orog/${CASE}} -FIX_SFC=${FIX_SFC:-$OROFIX/sfc} +FIXgfs=${FIXgfs:-$HOMEgfs/fix} DATA=${DATA:-$(pwd)} COMIN=${COMIN:-$(pwd)} COMOUT=${COMOUT:-$(pwd)} @@ -278,25 +269,25 @@ zsea2=${zsea2:-0} MAX_TASKS_CY=${MAX_TASKS_CY:-99999} FRAC_GRID=${FRAC_GRID:-.false.} -FNGLAC=${FNGLAC:-${FIXam}/global_glacier.2x2.grb} -FNMXIC=${FNMXIC:-${FIXam}/global_maxice.2x2.grb} -FNTSFC=${FNTSFC:-${FIXam}/RTGSST.1982.2012.monthly.clim.grb} -FNSALC=${FNSALC:-${FIXam}/global_salclm.t1534.3072.1536.nc} -FNSNOC=${FNSNOC:-${FIXam}/global_snoclim.1.875.grb} +FNGLAC=${FNGLAC:-${FIXgfs}/am/global_glacier.2x2.grb} +FNMXIC=${FNMXIC:-${FIXgfs}/am/global_maxice.2x2.grb} +FNTSFC=${FNTSFC:-${FIXgfs}/am/RTGSST.1982.2012.monthly.clim.grb} +FNSALC=${FNSALC:-${FIXgfs}/am/global_salclm.t1534.3072.1536.nc} +FNSNOC=${FNSNOC:-${FIXgfs}/am/global_snoclim.1.875.grb} FNZORC=${FNZORC:-igbp} -FNAISC=${FNAISC:-${FIXam}/IMS-NIC.blended.ice.monthly.clim.grb} -FNSMCC=${FNSMCC:-${FIXam}/global_soilmgldas.statsgo.t$JCAP_CASE.$LONB_CASE.$LATB_CASE.grb} -FNALBC2=${FNALBC2:-${FIX_SFC}/${CASE}.mx${OCNRES}.facsf.tileX.nc} -FNTG3C=${FNTG3C:-${FIX_SFC}/${CASE}.mx${OCNRES}.substrate_temperature.tileX.nc} -FNVEGC=${FNVEGC:-${FIX_SFC}/${CASE}.mx${OCNRES}.vegetation_greenness.tileX.nc} -FNALBC=${FNALBC:-${FIX_SFC}/${CASE}.mx${OCNRES}.snowfree_albedo.tileX.nc} -FNVETC=${FNVETC:-${FIX_SFC}/${CASE}.mx${OCNRES}.vegetation_type.tileX.nc} -FNSOTC=${FNSOTC:-${FIX_SFC}/${CASE}.mx${OCNRES}.soil_type.tileX.nc} -FNABSC=${FNABSC:-${FIX_SFC}/${CASE}.mx${OCNRES}.maximum_snow_albedo.tileX.nc} -FNVMNC=${FNVMNC:-${FIX_SFC}/${CASE}.mx${OCNRES}.vegetation_greenness.tileX.nc} -FNVMXC=${FNVMXC:-${FIX_SFC}/${CASE}.mx${OCNRES}.vegetation_greenness.tileX.nc} -FNSLPC=${FNSLPC:-${FIX_SFC}/${CASE}.mx${OCNRES}.slope_type.tileX.nc} -FNMSKH=${FNMSKH:-${FIXam}/global_slmask.t1534.3072.1536.grb} +FNAISC=${FNAISC:-${FIXgfs}/am/IMS-NIC.blended.ice.monthly.clim.grb} +FNSMCC=${FNSMCC:-${FIXgfs}/am/global_soilmgldas.statsgo.t$JCAP_CASE.$LONB_CASE.$LATB_CASE.grb} +FNALBC2=${FNALBC2:-${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.facsf.tileX.nc} +FNTG3C=${FNTG3C:-${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.substrate_temperature.tileX.nc} +FNVEGC=${FNVEGC:-${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.vegetation_greenness.tileX.nc} +FNALBC=${FNALBC:-${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.snowfree_albedo.tileX.nc} +FNVETC=${FNVETC:-${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.vegetation_type.tileX.nc} +FNSOTC=${FNSOTC:-${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.soil_type.tileX.nc} +FNABSC=${FNABSC:-${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.maximum_snow_albedo.tileX.nc} +FNVMNC=${FNVMNC:-${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.vegetation_greenness.tileX.nc} +FNVMXC=${FNVMXC:-${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.vegetation_greenness.tileX.nc} +FNSLPC=${FNSLPC:-${FIXgfs}/orog/${CASE}/sfc/${CASE}.mx${OCNRES}.slope_type.tileX.nc} +FNMSKH=${FNMSKH:-${FIXgfs}/am/global_slmask.t1534.3072.1536.grb} NST_FILE=${NST_FILE:-"NULL"} LND_SOI_FILE=${LND_SOI_FILE:-"NULL"} FNTSFA=${FNTSFA:-${COMIN}/${PREINP}sstgrb${SUFINP}} @@ -330,7 +321,7 @@ ln -fs $FNTSFC sstclm ln -fs $FNSALC salclm # If the appropriate resolution fix file is not present, use the highest resolution available (T1534) -[[ ! -f $FNSMCC ]] && FNSMCC="$FIXam/global_soilmgldas.statsgo.t1534.3072.1536.grb" +[[ ! -f $FNSMCC ]] && FNSMCC="$FIXgfs/am/global_soilmgldas.statsgo.t1534.3072.1536.grb" ################################################################################ # Make surface analysis diff --git a/ush/global_cycle_driver.sh b/ush/global_cycle_driver.sh index 84699c306..745f8caf9 100755 --- a/ush/global_cycle_driver.sh +++ b/ush/global_cycle_driver.sh @@ -15,13 +15,11 @@ export CDUMP=${CDUMP:-gfs} # gfs or gdas export COMPONENT=${COMPONENT:-atmos} pwd=$(pwd) -export NWPROD=${NWPROD:-$pwd} -export DMPDIR=${DMPDIR:-$NWPROD} -export HOMEgfs=${HOMEgfs:-$NWPROD/gfs.v15.0.0} -export FIX_DIR=${FIX_DIR:-$HOMEgfs/fix} -export FIXam=${FIXam:-$FIX_DIR/am} -export OROFIX=${OROFIX:-$FIX_DIR/orog/${CASE}} -export FIX_SFC=${FIX_SFC:-$OROFIX/sfc} +export DMPDIR=${DMPDIR:-$pwd} +export PACKAGEROOT=${PACKAGEROOT:-/lfs/h1/ops/prod/packages} +export gfs_ver=${gfs_ver:-v15.0.0} +export HOMEgfs=${HOMEgfs:-${PACKAGEROOT}/gfs.${gfs_ver}} +export FIXgfs=${FIXgfs:-$HOMEgfs/fix} ntiles=${ntiles:-6} DONST=${DONST:-"NO"} @@ -88,11 +86,11 @@ for n in $(seq 1 $ntiles); do chmod 644 $COMOUT/$PDY.${cyc}0000.sfcanl_data.tile${n}.nc ln -fs $COMOUT/$PDY.${cyc}0000.sfcanl_data.tile${n}.nc $DATA/fnbgso.00$n - ln -fs $OROFIX/C${CRES}_grid.tile${n}.nc $DATA/fngrid.00$n + ln -fs $FIXgfs/orog/${CASE}/C${CRES}_grid.tile${n}.nc $DATA/fngrid.00$n if (( OCNRES > 9999 ));then - ln -fs $OROFIX/C${CRES}_oro_data.tile${n}.nc $DATA/fnorog.00$n + ln -fs $FIXgfs/orog/${CASE}/C${CRES}_oro_data.tile${n}.nc $DATA/fnorog.00$n else - ln -fs $OROFIX/C${CRES}.mx${OCNRES}_oro_data.tile${n}.nc $DATA/fnorog.00$n + ln -fs $FIXgfs/orog/${CASE}/C${CRES}.mx${OCNRES}_oro_data.tile${n}.nc $DATA/fnorog.00$n fi if [[ "$DO_SNO_INC" == ".true." ]] ; then