diff --git a/jobs/JGFS_ATMOS_GEMPAK_PGRB2_SPEC b/jobs/JGFS_ATMOS_GEMPAK_PGRB2_SPEC index 183465e82d..47415a39ff 100755 --- a/jobs/JGFS_ATMOS_GEMPAK_PGRB2_SPEC +++ b/jobs/JGFS_ATMOS_GEMPAK_PGRB2_SPEC @@ -1,7 +1,5 @@ #! /usr/bin/env bash -# TODO (#1222) This job is not part of the rocoto suite - ############################################ # GFS_PGRB2_SPEC_GEMPAK PRODUCT GENERATION ############################################ @@ -12,12 +10,12 @@ source "${HOMEgfs}/ush/jjob_header.sh" -e "gempak_spec" -c "base" ################################ # Set up the HOME directory ################################ -export EXECgfs=${EXECgfs:-${HOMEgfs}/exec} -export PARMgfs=${PARMgfs:-${HOMEgfs}/parm} -export EXPDIR=${EXPDIR:-${HOMEgfs}/parm/config} -export FIXgempak=${FIXgempak:-${HOMEgfs}/gempak/fix} -export USHgempak=${USHgempak:-${HOMEgfs}/gempak/ush} -export SRCgfs=${SRCgfs:-${HOMEgfs}/scripts} +export EXECgfs="${EXECgfs:-${HOMEgfs}/exec}" +export PARMgfs="${PARMgfs:-${HOMEgfs}/parm}" +export EXPDIR="${EXPDIR:-${HOMEgfs}/parm/config}" +export FIXgempak="${FIXgempak:-${HOMEgfs}/gempak/fix}" +export USHgempak="${USHgempak:-${HOMEgfs}/gempak/ush}" +export SRCgfs="${SRCgfs:-${HOMEgfs}/scripts}" # For half-degree P Grib files #export DO_HD_PGRB=YES @@ -33,25 +31,20 @@ export EXT="" ############################################## # Define COM directories ############################################## -export COMIN=${COMIN:-$(compath.py ${envir}/${NET}/${gfs_ver})/${RUN}.${PDY}/${cyc}/${COMPONENT}} -export COMOUT=${COMOUT:-$(compath.py -o ${NET}/${gfs_ver}/${NET}.${PDY})/${cyc}/${COMPONENT}/gempak} - -export SENDDBN=${SENDDBN:-NO} -export DBNROOT=${DBNROOT:-${UTILROOT}/fakedbn} - -mkdir -m 775 -p ${COMOUT} - +export COMIN="${COMIN:-$(compath.py "${envir}"/"${NET}"/"${gfs_ver}")/${RUN}.${PDY}/${cyc}/${COMPONENT}}" +export COMOUT="${COMOUT:-$(compath.py -o "${NET}"/"${gfs_ver}"/"${NET}"."${PDY}")/${cyc}/${COMPONENT}/gempak}" -# TODO - Assess what is going on with overwriting $DATA here (#1224) +export SENDDBN="${SENDDBN:-NO}" +export DBNROOT="${DBNROOT:-${UTILROOT}/fakedbn}" -export DATA_HOLD=${DATA} +mkdir -m 775 -p "${COMOUT}" ################################################################# # Execute the script for the regular grib ################################################################# -export DATA=${DATA_HOLD}/SPECIAL -mkdir -p ${DATA} -cd ${DATA} +export DATA_SPECIAL="${DATA}/SPECIAL" +mkdir -p "${DATA_SPECIAL}" +cd "${DATA_SPECIAL}" || exit 1 export DBN_ALERT_TYPE=GFS_GOESSIM_GEMPAK export RUN2=gfs_goessim @@ -65,14 +58,14 @@ echo "RUNS the Program" ######################################################## # Execute the script. -${SRCgfs}/exgfs_atmos_goes_nawips.sh +"${SRCgfs}/exgfs_atmos_goes_nawips.sh" ################################################################# # Execute the script for the 221 grib -export DATA=${DATA_HOLD}/SPECIAL221 -mkdir -p ${DATA} -cd ${DATA} +export DATA_SPECIAL221="${DATA}/SPECIAL221" +mkdir -p "${DATA_SPECIAL221}" +cd "${DATA_SPECIAL221}" || exit 1 export DBN_ALERT_TYPE=GFS_GOESSIM221_GEMPAK export RUN2=gfs_goessim221 @@ -86,12 +79,12 @@ echo "RUNS the Program" ######################################################## # Execute the script. -${SRCgfs}/exgfs_atmos_goes_nawips.sh +"${SRCgfs}/exgfs_atmos_goes_nawips.sh" export err=$?; err_chk ######################################################## echo "end of program" -cd ${DATA_HOLD} +cd "${DATA}" || exit 1 echo "######################################" echo " SPECIAL.OUT " echo "######################################" @@ -99,14 +92,14 @@ echo "######################################" ############################################ # print exec I/O output ############################################ -if [ -e "${pgmout}" ] ; then - cat ${pgmout} +if [[ -e "${pgmout}" ]] ; then + cat "${pgmout}" fi ################################### # Remove temp directories ################################### -if [ "${KEEPDATA}" != "YES" ] ; then +if [[ "${KEEPDATA}" != "YES" ]] ; then rm -rf "${DATA}" fi diff --git a/jobs/JGFS_ATMOS_PGRB2_SPEC_NPOESS b/jobs/JGFS_ATMOS_PGRB2_SPEC_NPOESS index 1cb29be58b..a98835ada2 100755 --- a/jobs/JGFS_ATMOS_PGRB2_SPEC_NPOESS +++ b/jobs/JGFS_ATMOS_PGRB2_SPEC_NPOESS @@ -10,7 +10,6 @@ source "${HOMEgfs}/ush/jjob_header.sh" -e "npoess" -c "base" export OMP_NUM_THREADS=${OMP_NUM_THREADS:-1} - ################################ # Set up the HOME directory ################################ @@ -38,47 +37,6 @@ GRID="0p50" YMD=${PDY} HH=${cyc} generate_com -rx COM_ATMOS_GRIB_0p50:COM_ATMOS_ mkdir -m 775 -p "${COM_ATMOS_GOES}" -# TODO - This should be in the ex-script (#1226) - -#################################### -# Specify Forecast Hour Range -#################################### -export SHOUR=000 -export FHOUR=180 -export FHINC=003 - -#################################### -# Specify Timeout Behavior of Post -# -# SLEEP_TIME - Amount of time to wait for -# a restart file before exiting -# SLEEP_INT - Amount of time to wait between -# checking for restart files -#################################### -export SLEEP_TIME=900 -export SLEEP_INT=5 - -#################################### -# Check if this is a restart -#################################### -if [[ -f "${COM_ATMOS_GOES}/${RUN}.t${cyc}z.control.goessimpgrb2" ]]; then - modelrecvy=$(cat < "${COM_ATMOS_GOES}/${RUN}.t${cyc}z.control.goessimpgrb") - recvy_cyc="${modelrecvy:8:2}" - recvy_shour="${modelrecvy:10:13}" - - if [[ ${RERUN} == "NO" ]]; then - NEW_SHOUR=$(( recvy_shour + FHINC )) - if (( NEW_SHOUR >= SHOUR )); then - export SHOUR=${NEW_SHOUR} - fi - if (( recvy_shour >= FHOUR )); then - echo "Forecast Pgrb Generation Already Completed to ${FHOUR}" - else - echo "Starting: PDY=${PDY} cycle=t${recvy_cyc}z SHOUR=${SHOUR}" - fi - fi -fi - ############################################################# # Execute the script "${HOMEgfs}/scripts/exgfs_atmos_grib2_special_npoess.sh" diff --git a/jobs/JGLOBAL_WAVE_INIT b/jobs/JGLOBAL_WAVE_INIT index 59df553dc1..7ad742f25a 100755 --- a/jobs/JGLOBAL_WAVE_INIT +++ b/jobs/JGLOBAL_WAVE_INIT @@ -10,7 +10,7 @@ export errchk=${errchk:-err_chk} export MP_PULSE=0 # Path to HOME Directory -export FIXwave=${FIXwave:-${HOMEgfs}/fix/fix_wave_${NET}} +export FIXwave=${FIXwave:-${HOMEgfs}/fix/wave} export PARMwave=${PARMwave:-${HOMEgfs}/parm/wave} export USHwave=${USHwave:-${HOMEgfs}/ush} export EXECwave=${EXECwave:-${HOMEgfs}/exec} diff --git a/jobs/JGLOBAL_WAVE_POST_BNDPNT b/jobs/JGLOBAL_WAVE_POST_BNDPNT index 9016d624d7..9d404077fd 100755 --- a/jobs/JGLOBAL_WAVE_POST_BNDPNT +++ b/jobs/JGLOBAL_WAVE_POST_BNDPNT @@ -9,7 +9,7 @@ export errchk=${errchk:-err_chk} export MP_PULSE=0 # Path to HOME Directory -export FIXwave=${FIXwave:-${HOMEgfs}/fix/fix_wave_${NET}} +export FIXwave=${FIXwave:-${HOMEgfs}/fix/wave} export PARMwave=${PARMwave:-${HOMEgfs}/parm/wave} export USHwave=${USHwave:-${HOMEgfs}/ush} export EXECwave=${EXECwave:-${HOMEgfs}/exec} diff --git a/jobs/JGLOBAL_WAVE_POST_BNDPNTBLL b/jobs/JGLOBAL_WAVE_POST_BNDPNTBLL index c193a28cf7..3de49fcc3b 100755 --- a/jobs/JGLOBAL_WAVE_POST_BNDPNTBLL +++ b/jobs/JGLOBAL_WAVE_POST_BNDPNTBLL @@ -13,7 +13,7 @@ export CDATE=${PDY}${cyc} export MP_PULSE=0 # Path to HOME Directory -export FIXwave=${FIXwave:-${HOMEgfs}/fix/fix_wave_${NET}} +export FIXwave=${FIXwave:-${HOMEgfs}/fix/wave} export PARMwave=${PARMwave:-${HOMEgfs}/parm/wave} export USHwave=${USHwave:-${HOMEgfs}/ush} export EXECwave=${EXECwave:-${HOMEgfs}/exec} diff --git a/jobs/JGLOBAL_WAVE_POST_PNT b/jobs/JGLOBAL_WAVE_POST_PNT index 3ee1d56eef..1b573435a3 100755 --- a/jobs/JGLOBAL_WAVE_POST_PNT +++ b/jobs/JGLOBAL_WAVE_POST_PNT @@ -9,7 +9,7 @@ export errchk=${errchk:-err_chk} export MP_PULSE=0 # Path to HOME Directory -export FIXwave=${FIXwave:-${HOMEgfs}/fix/fix_wave_${NET}} +export FIXwave=${FIXwave:-${HOMEgfs}/fix/wave} export PARMwave=${PARMwave:-${HOMEgfs}/parm/wave} export USHwave=${USHwave:-${HOMEgfs}/ush} export EXECwave=${EXECwave:-${HOMEgfs}/exec} diff --git a/jobs/JGLOBAL_WAVE_POST_SBS b/jobs/JGLOBAL_WAVE_POST_SBS index 47e7063db4..231b793de7 100755 --- a/jobs/JGLOBAL_WAVE_POST_SBS +++ b/jobs/JGLOBAL_WAVE_POST_SBS @@ -9,7 +9,7 @@ export errchk=${errchk:-err_chk} export MP_PULSE=0 # Path to HOME Directory -export FIXwave=${FIXwave:-${HOMEgfs}/fix/fix_wave_${NET}} +export FIXwave=${FIXwave:-${HOMEgfs}/fix/wave} export PARMwave=${PARMwave:-${HOMEgfs}/parm/wave} export USHwave=${USHwave:-${HOMEgfs}/ush} export EXECwave=${EXECwave:-${HOMEgfs}/exec} diff --git a/jobs/JGLOBAL_WAVE_PREP b/jobs/JGLOBAL_WAVE_PREP index 5ff48d886c..f246045f53 100755 --- a/jobs/JGLOBAL_WAVE_PREP +++ b/jobs/JGLOBAL_WAVE_PREP @@ -17,7 +17,7 @@ export MP_PULSE=0 export CDO=${CDO_ROOT}/bin/cdo # Path to HOME Directory -export FIXwave=${FIXwave:-${HOMEgfs}/fix/fix_wave_${NET}} +export FIXwave=${FIXwave:-${HOMEgfs}/fix/wave} export PARMwave=${PARMwave:-${HOMEgfs}/parm/wave} export USHwave=${USHwave:-${HOMEgfs}/ush} export EXECwave=${EXECwave:-${HOMEgfs}/exec} diff --git a/parm/config/gefs/config.base.emc.dyn b/parm/config/gefs/config.base.emc.dyn index 238eb16991..64a38f669f 100644 --- a/parm/config/gefs/config.base.emc.dyn +++ b/parm/config/gefs/config.base.emc.dyn @@ -30,9 +30,15 @@ export UTILgfs=${HOMEgfs}/util export EXECgfs=${HOMEgfs}/exec export SCRgfs=${HOMEgfs}/scripts -export FIXcice=${HOMEgfs}/fix/cice -export FIXmom=${HOMEgfs}/fix/mom6 -export FIXreg2grb2=${HOMEgfs}/fix/reg2grb2 +export FIXam="${FIXgfs}/am" +export FIXaer="${FIXgfs}/aer" +export FIXcpl="${FIXgfs}/cpl" +export FIXlut="${FIXgfs}/lut" +export FIXorog="${FIXgfs}/orog" +export FIXcice="${FIXgfs}/cice" +export FIXmom="${FIXgfs}/mom6" +export FIXreg2grb2="${FIXgfs}/reg2grb2" +export FIXugwd="${FIXgfs}/ugwd" ######################################################################## diff --git a/parm/config/gfs/config.aeroanl b/parm/config/gfs/config.aeroanl index 4100690635..32ba43b7ba 100644 --- a/parm/config/gfs/config.aeroanl +++ b/parm/config/gfs/config.aeroanl @@ -10,8 +10,8 @@ export OBS_YAML_DIR=${HOMEgfs}/sorc/gdas.cd/parm/aero/obs/config/ export OBS_LIST=${HOMEgfs}/sorc/gdas.cd/parm/aero/obs/lists/gdas_aero_prototype.yaml export STATICB_TYPE='identity' export BERROR_YAML=${HOMEgfs}/sorc/gdas.cd/parm/aero/berror/staticb_${STATICB_TYPE}.yaml -export FV3JEDI_FIX=${HOMEgfs}/fix/gdas -export BERROR_DATA_DIR=${FV3JEDI_FIX}/bump/aero/${CASE_ANL}/ +export FIXgdas=${HOMEgfs}/fix/gdas +export BERROR_DATA_DIR=${FIXgdas}/bump/aero/${CASE_ANL}/ export BERROR_DATE="20160630.000000" export io_layout_x=@IO_LAYOUT_X@ diff --git a/parm/config/gfs/config.base.emc.dyn b/parm/config/gfs/config.base.emc.dyn index ca26a69ec0..08925c397e 100644 --- a/parm/config/gfs/config.base.emc.dyn +++ b/parm/config/gfs/config.base.emc.dyn @@ -23,16 +23,22 @@ export HPSS_PROJECT="@HPSS_PROJECT@" # Directories relative to installation areas: export HOMEgfs=@HOMEgfs@ -export PARMgfs=${HOMEgfs}/parm -export FIXgfs=${HOMEgfs}/fix -export USHgfs=${HOMEgfs}/ush -export UTILgfs=${HOMEgfs}/util -export EXECgfs=${HOMEgfs}/exec -export SCRgfs=${HOMEgfs}/scripts - -export FIXcice=${HOMEgfs}/fix/cice -export FIXmom=${HOMEgfs}/fix/mom6 -export FIXreg2grb2=${HOMEgfs}/fix/reg2grb2 +export PARMgfs="${HOMEgfs}/parm" +export FIXgfs="${HOMEgfs}/fix" +export USHgfs="${HOMEgfs}/ush" +export UTILgfs="${HOMEgfs}/util" +export EXECgfs="${HOMEgfs}/exec" +export SCRgfs="${HOMEgfs}/scripts" + +export FIXam="${FIXgfs}/am" +export FIXaer="${FIXgfs}/aer" +export FIXcpl="${FIXgfs}/cpl" +export FIXlut="${FIXgfs}/lut" +export FIXorog="${FIXgfs}/orog" +export FIXcice="${FIXgfs}/cice" +export FIXmom="${FIXgfs}/mom6" +export FIXreg2grb2="${FIXgfs}/reg2grb2" +export FIXugwd="${FIXgfs}/ugwd" ######################################################################## diff --git a/parm/gdas/aero_jedi_fix.yaml b/parm/gdas/aero_jedi_fix.yaml index e3c0109407..85a00c3c30 100644 --- a/parm/gdas/aero_jedi_fix.yaml +++ b/parm/gdas/aero_jedi_fix.yaml @@ -1,11 +1,11 @@ mkdir: - !ENV ${DATA}/fv3jedi copy: -- - !ENV ${FV3JEDI_FIX}/fv3jedi/fv3files/akbk$(npz).nc4 +- - !ENV ${FIXgdas}/fv3jedi/fv3files/akbk$(npz).nc4 - !ENV ${DATA}/fv3jedi/akbk.nc4 -- - !ENV ${FV3JEDI_FIX}/fv3jedi/fv3files/fmsmpp.nml +- - !ENV ${FIXgdas}/fv3jedi/fv3files/fmsmpp.nml - !ENV ${DATA}/fv3jedi/fmsmpp.nml -- - !ENV ${FV3JEDI_FIX}/fv3jedi/fv3files/field_table_gfdl +- - !ENV ${FIXgdas}/fv3jedi/fv3files/field_table_gfdl - !ENV ${DATA}/fv3jedi/field_table - - !ENV $(HOMEgfs)/sorc/gdas.cd/parm/io/fv3jedi_fieldmetadata_restart.yaml - !ENV ${DATA}/fv3jedi/fv3jedi_fieldmetadata_restart.yaml diff --git a/parm/ufs/fix/gfs/atmos.fixed_files.yaml b/parm/ufs/fix/gfs/atmos.fixed_files.yaml index a4e9958e45..7d901fe17b 100644 --- a/parm/ufs/fix/gfs/atmos.fixed_files.yaml +++ b/parm/ufs/fix/gfs/atmos.fixed_files.yaml @@ -1,85 +1,85 @@ copy: # Atmosphere mosaic file linked as the grid_spec file (atm only) - - [$(FIX_orog)/$(atm_res)/$(atm_res)_mosaic.nc, $(DATA)/INPUT/grid_spec.nc] + - [$(FIXorog)/$(CASE)/$(CASE)_mosaic.nc, $(DATA)/INPUT/grid_spec.nc] # Atmosphere grid tile files - - [$(FIX_orog)/$(atm_res)/$(atm_res)_grid.tile1.nc, $(DATA)/INPUT/] - - [$(FIX_orog)/$(atm_res)/$(atm_res)_grid.tile2.nc, $(DATA)/INPUT/] - - [$(FIX_orog)/$(atm_res)/$(atm_res)_grid.tile3.nc, $(DATA)/INPUT/] - - [$(FIX_orog)/$(atm_res)/$(atm_res)_grid.tile4.nc, $(DATA)/INPUT/] - - [$(FIX_orog)/$(atm_res)/$(atm_res)_grid.tile5.nc, $(DATA)/INPUT/] - - [$(FIX_orog)/$(atm_res)/$(atm_res)_grid.tile6.nc, $(DATA)/INPUT/] + - [$(FIXorog)/$(CASE)/$(CASE)_grid.tile1.nc, $(DATA)/INPUT/] + - [$(FIXorog)/$(CASE)/$(CASE)_grid.tile2.nc, $(DATA)/INPUT/] + - [$(FIXorog)/$(CASE)/$(CASE)_grid.tile3.nc, $(DATA)/INPUT/] + - [$(FIXorog)/$(CASE)/$(CASE)_grid.tile4.nc, $(DATA)/INPUT/] + - [$(FIXorog)/$(CASE)/$(CASE)_grid.tile5.nc, $(DATA)/INPUT/] + - [$(FIXorog)/$(CASE)/$(CASE)_grid.tile6.nc, $(DATA)/INPUT/] - # oro_data_ls and oro_data_ss files from FIX_ugwd - - [$(FIX_ugwd)/$(atm_res)/$(atm_res)_oro_data_ls.tile1.nc, $(DATA)/INPUT/oro_data_ls.tile1.nc] - - [$(FIX_ugwd)/$(atm_res)/$(atm_res)_oro_data_ls.tile2.nc, $(DATA)/INPUT/oro_data_ls.tile2.nc] - - [$(FIX_ugwd)/$(atm_res)/$(atm_res)_oro_data_ls.tile3.nc, $(DATA)/INPUT/oro_data_ls.tile3.nc] - - [$(FIX_ugwd)/$(atm_res)/$(atm_res)_oro_data_ls.tile4.nc, $(DATA)/INPUT/oro_data_ls.tile4.nc] - - [$(FIX_ugwd)/$(atm_res)/$(atm_res)_oro_data_ls.tile5.nc, $(DATA)/INPUT/oro_data_ls.tile5.nc] - - [$(FIX_ugwd)/$(atm_res)/$(atm_res)_oro_data_ls.tile6.nc, $(DATA)/INPUT/oro_data_ls.tile6.nc] - - [$(FIX_ugwd)/$(atm_res)/$(atm_res)_oro_data_ss.tile1.nc, $(DATA)/INPUT/oro_data_ss.tile1.nc] - - [$(FIX_ugwd)/$(atm_res)/$(atm_res)_oro_data_ss.tile2.nc, $(DATA)/INPUT/oro_data_ss.tile2.nc] - - [$(FIX_ugwd)/$(atm_res)/$(atm_res)_oro_data_ss.tile3.nc, $(DATA)/INPUT/oro_data_ss.tile3.nc] - - [$(FIX_ugwd)/$(atm_res)/$(atm_res)_oro_data_ss.tile4.nc, $(DATA)/INPUT/oro_data_ss.tile4.nc] - - [$(FIX_ugwd)/$(atm_res)/$(atm_res)_oro_data_ss.tile5.nc, $(DATA)/INPUT/oro_data_ss.tile5.nc] - - [$(FIX_ugwd)/$(atm_res)/$(atm_res)_oro_data_ss.tile6.nc, $(DATA)/INPUT/oro_data_ss.tile6.nc] + # oro_data_ls and oro_data_ss files from FIXugwd + - [$(FIXugwd)/$(CASE)/$(CASE)_oro_data_ls.tile1.nc, $(DATA)/INPUT/oro_data_ls.tile1.nc] + - [$(FIXugwd)/$(CASE)/$(CASE)_oro_data_ls.tile2.nc, $(DATA)/INPUT/oro_data_ls.tile2.nc] + - [$(FIXugwd)/$(CASE)/$(CASE)_oro_data_ls.tile3.nc, $(DATA)/INPUT/oro_data_ls.tile3.nc] + - [$(FIXugwd)/$(CASE)/$(CASE)_oro_data_ls.tile4.nc, $(DATA)/INPUT/oro_data_ls.tile4.nc] + - [$(FIXugwd)/$(CASE)/$(CASE)_oro_data_ls.tile5.nc, $(DATA)/INPUT/oro_data_ls.tile5.nc] + - [$(FIXugwd)/$(CASE)/$(CASE)_oro_data_ls.tile6.nc, $(DATA)/INPUT/oro_data_ls.tile6.nc] + - [$(FIXugwd)/$(CASE)/$(CASE)_oro_data_ss.tile1.nc, $(DATA)/INPUT/oro_data_ss.tile1.nc] + - [$(FIXugwd)/$(CASE)/$(CASE)_oro_data_ss.tile2.nc, $(DATA)/INPUT/oro_data_ss.tile2.nc] + - [$(FIXugwd)/$(CASE)/$(CASE)_oro_data_ss.tile3.nc, $(DATA)/INPUT/oro_data_ss.tile3.nc] + - [$(FIXugwd)/$(CASE)/$(CASE)_oro_data_ss.tile4.nc, $(DATA)/INPUT/oro_data_ss.tile4.nc] + - [$(FIXugwd)/$(CASE)/$(CASE)_oro_data_ss.tile5.nc, $(DATA)/INPUT/oro_data_ss.tile5.nc] + - [$(FIXugwd)/$(CASE)/$(CASE)_oro_data_ss.tile6.nc, $(DATA)/INPUT/oro_data_ss.tile6.nc] # GWD?? - - [$(FIX_ugwd)/ugwp_limb_tau.nc, $(DATA)/ugwp_limb_tau.nc] + - [$(FIXugwd)/ugwp_limb_tau.nc, $(DATA)/ugwp_limb_tau.nc] # CO2 climatology - - [$(FIX_am)/co2monthlycyc.txt, $(DATA)/co2monthlycyc.txt] - - [$(FIX_am)/global_co2historicaldata_glob.txt, $(DATA)/co2historicaldata_glob.txt] - - [$(FIX_am)/fix_co2_proj/global_co2historicaldata_2009.txt, $(DATA)/co2historicaldata_2009.txt] - - [$(FIX_am)/fix_co2_proj/global_co2historicaldata_2010.txt, $(DATA)/co2historicaldata_2010.txt] - - [$(FIX_am)/fix_co2_proj/global_co2historicaldata_2011.txt, $(DATA)/co2historicaldata_2011.txt] - - [$(FIX_am)/fix_co2_proj/global_co2historicaldata_2012.txt, $(DATA)/co2historicaldata_2012.txt] - - [$(FIX_am)/fix_co2_proj/global_co2historicaldata_2013.txt, $(DATA)/co2historicaldata_2013.txt] - - [$(FIX_am)/fix_co2_proj/global_co2historicaldata_2014.txt, $(DATA)/co2historicaldata_2014.txt] - - [$(FIX_am)/fix_co2_proj/global_co2historicaldata_2015.txt, $(DATA)/co2historicaldata_2015.txt] - - [$(FIX_am)/fix_co2_proj/global_co2historicaldata_2016.txt, $(DATA)/co2historicaldata_2016.txt] - - [$(FIX_am)/fix_co2_proj/global_co2historicaldata_2017.txt, $(DATA)/co2historicaldata_2017.txt] - - [$(FIX_am)/fix_co2_proj/global_co2historicaldata_2018.txt, $(DATA)/co2historicaldata_2018.txt] - - [$(FIX_am)/fix_co2_proj/global_co2historicaldata_2019.txt, $(DATA)/co2historicaldata_2019.txt] - - [$(FIX_am)/fix_co2_proj/global_co2historicaldata_2020.txt, $(DATA)/co2historicaldata_2020.txt] - - [$(FIX_am)/fix_co2_proj/global_co2historicaldata_2021.txt, $(DATA)/co2historicaldata_2021.txt] - - [$(FIX_am)/fix_co2_proj/global_co2historicaldata_2022.txt, $(DATA)/co2historicaldata_2022.txt] - - [$(FIX_am)/fix_co2_proj/global_co2historicaldata_2023.txt, $(DATA)/co2historicaldata_2023.txt] + - [$(FIXam)/co2monthlycyc.txt, $(DATA)/co2monthlycyc.txt] + - [$(FIXam)/global_co2historicaldata_glob.txt, $(DATA)/co2historicaldata_glob.txt] + - [$(FIXam)/fix_co2_proj/global_co2historicaldata_2009.txt, $(DATA)/co2historicaldata_2009.txt] + - [$(FIXam)/fix_co2_proj/global_co2historicaldata_2010.txt, $(DATA)/co2historicaldata_2010.txt] + - [$(FIXam)/fix_co2_proj/global_co2historicaldata_2011.txt, $(DATA)/co2historicaldata_2011.txt] + - [$(FIXam)/fix_co2_proj/global_co2historicaldata_2012.txt, $(DATA)/co2historicaldata_2012.txt] + - [$(FIXam)/fix_co2_proj/global_co2historicaldata_2013.txt, $(DATA)/co2historicaldata_2013.txt] + - [$(FIXam)/fix_co2_proj/global_co2historicaldata_2014.txt, $(DATA)/co2historicaldata_2014.txt] + - [$(FIXam)/fix_co2_proj/global_co2historicaldata_2015.txt, $(DATA)/co2historicaldata_2015.txt] + - [$(FIXam)/fix_co2_proj/global_co2historicaldata_2016.txt, $(DATA)/co2historicaldata_2016.txt] + - [$(FIXam)/fix_co2_proj/global_co2historicaldata_2017.txt, $(DATA)/co2historicaldata_2017.txt] + - [$(FIXam)/fix_co2_proj/global_co2historicaldata_2018.txt, $(DATA)/co2historicaldata_2018.txt] + - [$(FIXam)/fix_co2_proj/global_co2historicaldata_2019.txt, $(DATA)/co2historicaldata_2019.txt] + - [$(FIXam)/fix_co2_proj/global_co2historicaldata_2020.txt, $(DATA)/co2historicaldata_2020.txt] + - [$(FIXam)/fix_co2_proj/global_co2historicaldata_2021.txt, $(DATA)/co2historicaldata_2021.txt] + - [$(FIXam)/fix_co2_proj/global_co2historicaldata_2022.txt, $(DATA)/co2historicaldata_2022.txt] + - [$(FIXam)/fix_co2_proj/global_co2historicaldata_2023.txt, $(DATA)/co2historicaldata_2023.txt] - # FIX_am files - - [$(FIX_am)/global_climaeropac_global.txt, $(DATA)/aerosol.dat] - - [$(FIX_am)/ozprdlos_2015_new_sbuvO3_tclm15_nuchem.f77, $(DATA)/global_o3prdlos.f77] - - [$(FIX_am)/global_h2o_pltc.f77, $(DATA)/global_h2oprdlos.f77] - - [$(FIX_am)/global_glacier.2x2.grb, $(DATA)/global_glacier.2x2.grb] - - [$(FIX_am)/global_maxice.2x2.grb, $(DATA)/global_maxice.2x2.grb] - - [$(FIX_am)/global_snoclim.1.875.grb, $(DATA)/global_snoclim.1.875.grb] - - [$(FIX_am)/global_slmask.t1534.3072.1536.grb, $(DATA)/global_slmask.t1534.3072.1536.grb] - - [$(FIX_am)/global_soilmgldas.statsgo.t1534.3072.1536.grb, $(DATA)/global_soilmgldas.statsgo.t1534.3072.1536.grb] - - [$(FIX_am)/global_solarconstant_noaa_an.txt, $(DATA)/solarconstant_noaa_an.txt] - - [$(FIX_am)/global_sfc_emissivity_idx.txt, $(DATA)/sfc_emissivity_idx.txt] - - [$(FIX_am)/RTGSST.1982.2012.monthly.clim.grb, $(DATA)/RTGSST.1982.2012.monthly.clim.grb] - - [$(FIX_am)/IMS-NIC.blended.ice.monthly.clim.grb, $(DATA)/IMS-NIC.blended.ice.monthly.clim.grb] + # FIXam files + - [$(FIXam)/global_climaeropac_global.txt, $(DATA)/aerosol.dat] + - [$(FIXam)/ozprdlos_2015_new_sbuvO3_tclm15_nuchem.f77, $(DATA)/global_o3prdlos.f77] + - [$(FIXam)/global_h2o_pltc.f77, $(DATA)/global_h2oprdlos.f77] + - [$(FIXam)/global_glacier.2x2.grb, $(DATA)/global_glacier.2x2.grb] + - [$(FIXam)/global_maxice.2x2.grb, $(DATA)/global_maxice.2x2.grb] + - [$(FIXam)/global_snoclim.1.875.grb, $(DATA)/global_snoclim.1.875.grb] + - [$(FIXam)/global_slmask.t1534.3072.1536.grb, $(DATA)/global_slmask.t1534.3072.1536.grb] + - [$(FIXam)/global_soilmgldas.statsgo.t1534.3072.1536.grb, $(DATA)/global_soilmgldas.statsgo.t1534.3072.1536.grb] + - [$(FIXam)/global_solarconstant_noaa_an.txt, $(DATA)/solarconstant_noaa_an.txt] + - [$(FIXam)/global_sfc_emissivity_idx.txt, $(DATA)/sfc_emissivity_idx.txt] + - [$(FIXam)/RTGSST.1982.2012.monthly.clim.grb, $(DATA)/RTGSST.1982.2012.monthly.clim.grb] + - [$(FIXam)/IMS-NIC.blended.ice.monthly.clim.grb, $(DATA)/IMS-NIC.blended.ice.monthly.clim.grb] # MERRA2 Aerosol Climatology - - [$(FIX_aer)/merra2.aerclim.2003-2014.m01.nc, $(DATA)/aeroclim.m01.nc] - - [$(FIX_aer)/merra2.aerclim.2003-2014.m02.nc, $(DATA)/aeroclim.m02.nc] - - [$(FIX_aer)/merra2.aerclim.2003-2014.m03.nc, $(DATA)/aeroclim.m03.nc] - - [$(FIX_aer)/merra2.aerclim.2003-2014.m04.nc, $(DATA)/aeroclim.m04.nc] - - [$(FIX_aer)/merra2.aerclim.2003-2014.m05.nc, $(DATA)/aeroclim.m05.nc] - - [$(FIX_aer)/merra2.aerclim.2003-2014.m06.nc, $(DATA)/aeroclim.m06.nc] - - [$(FIX_aer)/merra2.aerclim.2003-2014.m07.nc, $(DATA)/aeroclim.m07.nc] - - [$(FIX_aer)/merra2.aerclim.2003-2014.m08.nc, $(DATA)/aeroclim.m08.nc] - - [$(FIX_aer)/merra2.aerclim.2003-2014.m09.nc, $(DATA)/aeroclim.m09.nc] - - [$(FIX_aer)/merra2.aerclim.2003-2014.m10.nc, $(DATA)/aeroclim.m10.nc] - - [$(FIX_aer)/merra2.aerclim.2003-2014.m11.nc, $(DATA)/aeroclim.m11.nc] - - [$(FIX_aer)/merra2.aerclim.2003-2014.m12.nc, $(DATA)/aeroclim.m12.nc] + - [$(FIXaer)/merra2.aerclim.2003-2014.m01.nc, $(DATA)/aeroclim.m01.nc] + - [$(FIXaer)/merra2.aerclim.2003-2014.m02.nc, $(DATA)/aeroclim.m02.nc] + - [$(FIXaer)/merra2.aerclim.2003-2014.m03.nc, $(DATA)/aeroclim.m03.nc] + - [$(FIXaer)/merra2.aerclim.2003-2014.m04.nc, $(DATA)/aeroclim.m04.nc] + - [$(FIXaer)/merra2.aerclim.2003-2014.m05.nc, $(DATA)/aeroclim.m05.nc] + - [$(FIXaer)/merra2.aerclim.2003-2014.m06.nc, $(DATA)/aeroclim.m06.nc] + - [$(FIXaer)/merra2.aerclim.2003-2014.m07.nc, $(DATA)/aeroclim.m07.nc] + - [$(FIXaer)/merra2.aerclim.2003-2014.m08.nc, $(DATA)/aeroclim.m08.nc] + - [$(FIXaer)/merra2.aerclim.2003-2014.m09.nc, $(DATA)/aeroclim.m09.nc] + - [$(FIXaer)/merra2.aerclim.2003-2014.m10.nc, $(DATA)/aeroclim.m10.nc] + - [$(FIXaer)/merra2.aerclim.2003-2014.m11.nc, $(DATA)/aeroclim.m11.nc] + - [$(FIXaer)/merra2.aerclim.2003-2014.m12.nc, $(DATA)/aeroclim.m12.nc] # Optical depth - - [$(FIX_lut)/optics_BC.v1_3.dat, $(DATA)/optics_BC.dat] - - [$(FIX_lut)/optics_DU.v15_3.dat, $(DATA)/optics_DU.dat] - - [$(FIX_lut)/optics_OC.v1_3.dat, $(DATA)/optics_OC.dat] - - [$(FIX_lut)/optics_SS.v3_3.dat, $(DATA)/optics_SS.dat] - - [$(FIX_lut)/optics_SU.v1_3.dat, $(DATA)/optics_SU.dat] + - [$(FIXlut)/optics_BC.v1_3.dat, $(DATA)/optics_BC.dat] + - [$(FIXlut)/optics_DU.v15_3.dat, $(DATA)/optics_DU.dat] + - [$(FIXlut)/optics_OC.v1_3.dat, $(DATA)/optics_OC.dat] + - [$(FIXlut)/optics_SS.v3_3.dat, $(DATA)/optics_SS.dat] + - [$(FIXlut)/optics_SU.v1_3.dat, $(DATA)/optics_SU.dat] # fd_ufs.yaml file - [$(HOMEgfs)/sorc/ufs_model.fd/tests/parm/fd_ufs.yaml, $(DATA)/] diff --git a/parm/ufs/fix/gfs/land.fixed_files.yaml b/parm/ufs/fix/gfs/land.fixed_files.yaml index d98d66df45..bb2d060963 100644 --- a/parm/ufs/fix/gfs/land.fixed_files.yaml +++ b/parm/ufs/fix/gfs/land.fixed_files.yaml @@ -1,58 +1,58 @@ copy: - # Files from FIX_orog/C??.mx??_frac/sfc - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).facsf.tile1.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).facsf.tile2.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).facsf.tile3.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).facsf.tile4.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).facsf.tile5.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).facsf.tile6.nc, $(DATA)/] + # Files from FIXorog/C??/sfc + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).facsf.tile1.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).facsf.tile2.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).facsf.tile3.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).facsf.tile4.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).facsf.tile5.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).facsf.tile6.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).maximum_snow_albedo.tile1.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).maximum_snow_albedo.tile2.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).maximum_snow_albedo.tile3.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).maximum_snow_albedo.tile4.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).maximum_snow_albedo.tile5.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).maximum_snow_albedo.tile6.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).maximum_snow_albedo.tile1.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).maximum_snow_albedo.tile2.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).maximum_snow_albedo.tile3.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).maximum_snow_albedo.tile4.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).maximum_snow_albedo.tile5.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).maximum_snow_albedo.tile6.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).slope_type.tile1.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).slope_type.tile2.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).slope_type.tile3.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).slope_type.tile4.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).slope_type.tile5.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).slope_type.tile6.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).slope_type.tile1.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).slope_type.tile2.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).slope_type.tile3.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).slope_type.tile4.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).slope_type.tile5.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).slope_type.tile6.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).snowfree_albedo.tile1.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).snowfree_albedo.tile2.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).snowfree_albedo.tile3.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).snowfree_albedo.tile4.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).snowfree_albedo.tile5.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).snowfree_albedo.tile6.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).snowfree_albedo.tile1.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).snowfree_albedo.tile2.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).snowfree_albedo.tile3.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).snowfree_albedo.tile4.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).snowfree_albedo.tile5.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).snowfree_albedo.tile6.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).soil_type.tile1.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).soil_type.tile2.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).soil_type.tile3.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).soil_type.tile4.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).soil_type.tile5.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).soil_type.tile6.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).soil_type.tile1.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).soil_type.tile2.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).soil_type.tile3.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).soil_type.tile4.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).soil_type.tile5.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).soil_type.tile6.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).substrate_temperature.tile1.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).substrate_temperature.tile2.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).substrate_temperature.tile3.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).substrate_temperature.tile4.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).substrate_temperature.tile5.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).substrate_temperature.tile6.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).substrate_temperature.tile1.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).substrate_temperature.tile2.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).substrate_temperature.tile3.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).substrate_temperature.tile4.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).substrate_temperature.tile5.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).substrate_temperature.tile6.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).vegetation_greenness.tile1.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).vegetation_greenness.tile2.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).vegetation_greenness.tile3.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).vegetation_greenness.tile4.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).vegetation_greenness.tile5.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).vegetation_greenness.tile6.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).vegetation_greenness.tile1.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).vegetation_greenness.tile2.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).vegetation_greenness.tile3.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).vegetation_greenness.tile4.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).vegetation_greenness.tile5.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).vegetation_greenness.tile6.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).vegetation_type.tile1.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).vegetation_type.tile2.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).vegetation_type.tile3.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).vegetation_type.tile4.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).vegetation_type.tile5.nc, $(DATA)/] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/sfc/$(atm_res).mx$(ocn_res).vegetation_type.tile6.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).vegetation_type.tile1.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).vegetation_type.tile2.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).vegetation_type.tile3.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).vegetation_type.tile4.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).vegetation_type.tile5.nc, $(DATA)/] + - [$(FIXorog)/$(CASE)/sfc/$(CASE).mx$(OCNRES).vegetation_type.tile6.nc, $(DATA)/] diff --git a/parm/ufs/fix/gfs/ocean.fixed_files.yaml b/parm/ufs/fix/gfs/ocean.fixed_files.yaml index 801f070c49..1ca8ce7a68 100644 --- a/parm/ufs/fix/gfs/ocean.fixed_files.yaml +++ b/parm/ufs/fix/gfs/ocean.fixed_files.yaml @@ -1,10 +1,9 @@ copy: # Orography data tile files - # The following are for "frac_grid = .true." - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/oro_$(atm_res).mx$(ocn_res).tile1.nc, $(DATA)/INPUT/oro_data.tile1.nc] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/oro_$(atm_res).mx$(ocn_res).tile2.nc, $(DATA)/INPUT/oro_data.tile2.nc] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/oro_$(atm_res).mx$(ocn_res).tile3.nc, $(DATA)/INPUT/oro_data.tile3.nc] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/oro_$(atm_res).mx$(ocn_res).tile4.nc, $(DATA)/INPUT/oro_data.tile4.nc] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/oro_$(atm_res).mx$(ocn_res).tile5.nc, $(DATA)/INPUT/oro_data.tile5.nc] - - [$(FIX_orog)/$(atm_res).mx$(ocn_res)_frac/oro_$(atm_res).mx$(ocn_res).tile6.nc, $(DATA)/INPUT/oro_data.tile6.nc] + - [$(FIXorog)/$(CASE)/$(CASE).mx$(OCNRES)_oro_data.tile1.nc, $(DATA)/INPUT/oro_data.tile1.nc] + - [$(FIXorog)/$(CASE)/$(CASE).mx$(OCNRES)_oro_data.tile2.nc, $(DATA)/INPUT/oro_data.tile2.nc] + - [$(FIXorog)/$(CASE)/$(CASE).mx$(OCNRES)_oro_data.tile3.nc, $(DATA)/INPUT/oro_data.tile3.nc] + - [$(FIXorog)/$(CASE)/$(CASE).mx$(OCNRES)_oro_data.tile4.nc, $(DATA)/INPUT/oro_data.tile4.nc] + - [$(FIXorog)/$(CASE)/$(CASE).mx$(OCNRES)_oro_data.tile5.nc, $(DATA)/INPUT/oro_data.tile5.nc] + - [$(FIXorog)/$(CASE)/$(CASE).mx$(OCNRES)_oro_data.tile6.nc, $(DATA)/INPUT/oro_data.tile6.nc] diff --git a/scripts/exgdas_atmos_chgres_forenkf.sh b/scripts/exgdas_atmos_chgres_forenkf.sh index 25d034ef47..d48d58947e 100755 --- a/scripts/exgdas_atmos_chgres_forenkf.sh +++ b/scripts/exgdas_atmos_chgres_forenkf.sh @@ -21,7 +21,7 @@ source "$HOMEgfs/ush/preamble.sh" # Directories. pwd=$(pwd) -export FIXgsm=${FIXgsm:-$HOMEgfs/fix/am} +export FIXam=${FIXam:-$HOMEgfs/fix/am} # Base variables CDATE=${CDATE:-"2001010100"} @@ -59,7 +59,7 @@ SENDECF=${SENDECF:-"NO"} SENDDBN=${SENDDBN:-"NO"} # level info file -SIGLEVEL=${SIGLEVEL:-${FIXgsm}/global_hyblev.l${LEVS}.txt} +SIGLEVEL=${SIGLEVEL:-${FIXam}/global_hyblev.l${LEVS}.txt} # forecast files APREFIX=${APREFIX:-""} @@ -129,7 +129,7 @@ if [ $DO_CALC_ANALYSIS == "YES" ]; then $NLN $ATMF09ENS fcst.ensres.09 fi export OMP_NUM_THREADS=$NTHREADS_CHGRES - SIGLEVEL=${SIGLEVEL:-${FIXgsm}/global_hyblev.l${LEVS_ENKF}.txt} + SIGLEVEL=${SIGLEVEL:-${FIXam}/global_hyblev.l${LEVS_ENKF}.txt} if [ $USE_CFP = "YES" ]; then [[ -f $DATA/mp_chgres.sh ]] && rm $DATA/mp_chgres.sh diff --git a/scripts/exgdas_enkf_ecen.sh b/scripts/exgdas_enkf_ecen.sh index 30edb947a9..c20d1dec78 100755 --- a/scripts/exgdas_enkf_ecen.sh +++ b/scripts/exgdas_enkf_ecen.sh @@ -76,8 +76,8 @@ CYCLESH=${CYCLESH:-$HOMEgfs/ush/global_cycle.sh} export CYCLEXEC=${CYCLEXEC:-$HOMEgfs/exec/global_cycle} APRUN_CYCLE=${APRUN_CYCLE:-${APRUN:-""}} NTHREADS_CYCLE=${NTHREADS_CYCLE:-${NTHREADS:-1}} -export FIXfv3=${FIXfv3:-$HOMEgfs/fix/orog} -export FIXgsm=${FIXgsm:-$HOMEgfs/fix/am} +export FIXorog=${FIXorog:-$HOMEgfs/fix/orog} +export FIXam=${FIXam:-$HOMEgfs/fix/am} export CYCLVARS=${CYCLVARS:-"FSNOL=-2.,FSNOS=99999.,"} export FHOUR=${FHOUR:-0} export DELTSFC=${DELTSFC:-6} @@ -241,7 +241,7 @@ 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} + SIGLEVEL=${SIGLEVEL:-${FIXam}/global_hyblev.l${LEVS}.txt} $NLN $CHGRESNC chgres.x chgresnml=chgres_nc_gauss.nml nmltitle=chgres diff --git a/scripts/exgdas_enkf_sfc.sh b/scripts/exgdas_enkf_sfc.sh index 5bbe7a460f..81d68fb9fe 100755 --- a/scripts/exgdas_enkf_sfc.sh +++ b/scripts/exgdas_enkf_sfc.sh @@ -54,8 +54,8 @@ CYCLESH=${CYCLESH:-$HOMEgfs/ush/global_cycle.sh} export CYCLEXEC=${CYCLEXEC:-$HOMEgfs/exec/global_cycle} APRUN_CYCLE=${APRUN_CYCLE:-${APRUN:-""}} NTHREADS_CYCLE=${NTHREADS_CYCLE:-${NTHREADS:-1}} -export FIXfv3=${FIXfv3:-$HOMEgfs/fix/orog} -export FIXgsm=${FIXgsm:-$HOMEgfs/fix/am} +export FIXorog=${FIXorog:-$HOMEgfs/fix/orog} +export FIXam=${FIXam:-$HOMEgfs/fix/am} export CYCLVARS=${CYCLVARS:-"FSNOL=-2.,FSNOS=99999.,"} export FHOUR=${FHOUR:-0} export DELTSFC=${DELTSFC:-6} @@ -152,8 +152,8 @@ if [ $DOIAU = "YES" ]; then "${DATA}/fnbgsi.${cmem}" ${NLN} "${COM_ATMOS_RESTART_MEM}/${bPDY}.${bcyc}0000.sfcanl_data.tile${n}.nc" \ "${DATA}/fnbgso.${cmem}" - ${NLN} "${FIXfv3}/${CASE}/${CASE}_grid.tile${n}.nc" "${DATA}/fngrid.${cmem}" - ${NLN} "${FIXfv3}/${CASE}/${CASE}_oro_data.tile${n}.nc" "${DATA}/fnorog.${cmem}" + ${NLN} "${FIXorog}/${CASE}/${CASE}_grid.tile${n}.nc" "${DATA}/fngrid.${cmem}" + ${NLN} "${FIXorog}/${CASE}/${CASE}.mx${OCNRES}_oro_data.tile${n}.nc" "${DATA}/fnorog.${cmem}" done @@ -188,8 +188,8 @@ if [ $DOSFCANL_ENKF = "YES" ]; then "${DATA}/fnbgsi.${cmem}" ${NLN} "${COM_ATMOS_RESTART_MEM}/${PDY}.${cyc}0000.sfcanl_data.tile${n}.nc" \ "${DATA}/fnbgso.${cmem}" - ${NLN} "${FIXfv3}/${CASE}/${CASE}_grid.tile${n}.nc" "${DATA}/fngrid.${cmem}" - ${NLN} "${FIXfv3}/${CASE}/${CASE}_oro_data.tile${n}.nc" "${DATA}/fnorog.${cmem}" + ${NLN} "${FIXorog}/${CASE}/${CASE}_grid.tile${n}.nc" "${DATA}/fngrid.${cmem}" + ${NLN} "${FIXorog}/${CASE}/${CASE}.mx${OCNRES}_oro_data.tile${n}.nc" "${DATA}/fnorog.${cmem}" done diff --git a/scripts/exgfs_atmos_grib2_special_npoess.sh b/scripts/exgfs_atmos_grib2_special_npoess.sh index 23161c2714..a43c279ae6 100755 --- a/scripts/exgfs_atmos_grib2_special_npoess.sh +++ b/scripts/exgfs_atmos_grib2_special_npoess.sh @@ -40,13 +40,52 @@ export opt26=' -set_grib_max_bits 25 -fi -if ' export opt27=":(APCP|ACPCP|PRATE|CPRAT|DZDT):" export opt28=' -new_grid_interpolation budget -fi ' -SLEEP_LOOP_MAX=$(expr $SLEEP_TIME / $SLEEP_INT) +#################################### +# Specify Timeout Behavior of Post +# +# SLEEP_TIME - Amount of time to wait for +# a restart file before exiting +# SLEEP_INT - Amount of time to wait between +# checking for restart files +#################################### +export SLEEP_TIME=${SLEEP_TIME:-900} +export SLEEP_INT=${SLEEP_TIME:-5} + +SLEEP_LOOP_MAX=$(( SLEEP_TIME / SLEEP_INT )) + +# TODO: Does this section do anything? I retained if for clarity of +# changes/updates, but it does not appear to do anything. + +#################################### +# Check if this is a restart +#################################### +if [[ -f "${COM_ATMOS_GOES}/${RUN}.t${cyc}z.control.goessimpgrb2" ]]; then + modelrecvy=$(cat < "${COM_ATMOS_GOES}/${RUN}.t${cyc}z.control.goessimpgrb") + recvy_cyc="${modelrecvy:8:2}" + recvy_shour="${modelrecvy:10:13}" + + if [[ ${RERUN} == "NO" ]]; then + NEW_SHOUR=$(( recvy_shour + FHINC )) + if (( NEW_SHOUR >= SHOUR )); then + export SHOUR="${NEW_SHOUR}" + fi + if (( recvy_shour >= FHOUR )); then + echo "Forecast Pgrb Generation Already Completed to ${FHOUR}" + else + echo "Starting: PDY=${PDY} cycle=t${recvy_cyc}z SHOUR=${SHOUR}" + fi + fi +fi ############################################################################## # Specify Forecast Hour Range F000 - F024 for GFS_NPOESS_PGRB2_0P5DEG ############################################################################## export SHOUR=000 export FHOUR=024 +export FHINC=003 +if [[ "${FHOUR}" -gt "${FHMAX_GFS}" ]]; then + export FHOUR="${FHMAX_GFS}" +fi ############################################################ # Loop Through the Post Forecast Files @@ -109,6 +148,10 @@ done ################################################################ export SHOUR=000 export FHOUR=180 +export FHINC=003 +if [[ "${FHOUR}" -gt "${FHMAX_GFS}" ]]; then + export FHOUR="${FHMAX_GFS}" +fi ################################# # Process GFS PGRB2_SPECIAL_POST diff --git a/scripts/exgfs_wave_nawips.sh b/scripts/exgfs_wave_nawips.sh index e574ffeabb..63690ff1b0 100755 --- a/scripts/exgfs_wave_nawips.sh +++ b/scripts/exgfs_wave_nawips.sh @@ -11,7 +11,7 @@ # March-2020 Roberto.Padilla@noaa.gov ##################################################################### -source "$HOMEgfs/ush/preamble.sh" +source "${HOMEgfs}/ush/preamble.sh" #export grids=${grids:-'glo_30m at_10m ep_10m wc_10m ao_9km'} #Interpolated grids export grids=${grids:-'glo_30m'} #Native grids @@ -23,15 +23,15 @@ export FHOUT_WAV=${FHOUT_WAV:-6} export FHOUT_HF_WAV=${FHOUT_HF_WAV:-3} export maxtries=${maxtries:-720} export cycle=${cycle:-t${cyc}z} -export GEMwave=${GEMwave:-$HOMEgfs/gempak} -export FIXwave=${FIXwave:-HOMEgfs/fix} +export GEMwave=${GEMwave:-${HOMEgfs}/gempak} +export FIXwave=${FIXwave:-${HOMEgfs}/fix/wave} export DATA=${DATA:-${DATAROOT:?}/${jobid}} -if [ ! -d $DATA ];then - mkdir -p $DATA +if [ ! -d ${DATA} ];then + mkdir -p ${DATA} fi -cd $DATA -cp $GEMwave/fix/g2varswmo2.tbl . +cd ${DATA} +cp ${GEMwave}/fix/g2varswmo2.tbl . cpyfil=gds garea=dset @@ -46,11 +46,11 @@ g2tbls=g2varswmo2.tbl NAGRIB=nagrib2 maxtries=15 -fhcnt=$fstart -while [ $fhcnt -le $FHMAX_WAV ]; do - fhr=$(printf "%03d" $fhcnt) - for grid in $grids;do - case $grid in +fhcnt=${fstart} +while [ ${fhcnt} -le ${FHMAX_WAV} ]; do + fhr=$(printf "%03d" ${fhcnt}) + for grid in ${grids};do + case ${grid} in ao_9km) grdIDin='arctic.9km' #grdIDout='gfswaveao9km' ;; grdIDout='gfswavearc' ;; @@ -72,36 +72,36 @@ while [ $fhcnt -le $FHMAX_WAV ]; do grdIDout= ;; esac GRIBIN="${COM_WAVE_GRID}/${RUNwave}.${cycle}.${grdIDin}.f${fhr}.grib2" - GRIBIN_chk=$GRIBIN.idx + GRIBIN_chk=${GRIBIN}.idx icnt=1 - while [ $icnt -lt 1000 ]; do - if [ -r $GRIBIN_chk ] ; then + while [ ${icnt} -lt 1000 ]; do + if [ -r ${GRIBIN_chk} ] ; then break else let "icnt=icnt+1" sleep 20 fi - if [ $icnt -ge $maxtries ]; then - msg="ABORTING after 5 minutes of waiting for $GRIBIN." + if [ ${icnt} -ge ${maxtries} ]; then + msg="ABORTING after 5 minutes of waiting for ${GRIBIN}." echo ' ' echo '**************************** ' echo '*** ERROR : NO GRIB FILE *** ' echo '**************************** ' echo ' ' - echo $msg + echo ${msg} set_trace - echo "$RUNwave $grdID ${fhr} prdgen $date $cycle : GRIB file missing." >> $wavelog + echo "${RUNwave} ${grdID} ${fhr} prdgen ${date} ${cycle} : GRIB file missing." >> ${wavelog} err=1;export err;${errchk} || exit ${err} fi done #if [ "$grdIDin" = "global.0p25" && "$grid" = "glo_30m" ]; then - if [ "$grdIDin" = "global.0p25" ]; then - $WGRIB2 -lola 0:720:0.5 -90:361:0.5 gribfile.$grdIDout.f${fhr} grib \ - $GRIBIN 1> out 2>&1 + if [ "${grdIDin}" = "global.0p25" ]; then + ${WGRIB2} -lola 0:720:0.5 -90:361:0.5 gribfile.${grdIDout}.f${fhr} grib \ + ${GRIBIN} 1> out 2>&1 OK=$? - if [ "$OK" != '0' ]; then + if [ "${OK}" != '0' ]; then msg="ABNORMAL EXIT: ERROR IN interpolation the global grid" #set +x echo ' ' @@ -109,66 +109,66 @@ while [ $fhcnt -le $FHMAX_WAV ]; do echo '*** FATAL ERROR : ERROR IN making gribfile.$grdID.f${fhr}*** ' echo '************************************************************* ' echo ' ' - echo $msg + echo ${msg} #set_trace - echo "$RUNwave $grdID prdgen $date $cycle : error in grbindex." >> $wavelog + echo "${RUNwave} ${grdID} prdgen ${date} ${cycle} : error in grbindex." >> ${wavelog} err=2;export err;err_chk else #cp $GRIBIN gribfile.$grdID.f${fhr} - GRIBIN=gribfile.$grdIDout.f${fhr} + GRIBIN=gribfile.${grdIDout}.f${fhr} fi fi - echo $GRIBIN + echo ${GRIBIN} GEMGRD=${grdIDout}_${PDY}${cyc}f${fhr} - cp $GRIBIN grib_$grid + cp ${GRIBIN} grib_${grid} startmsg - $NAGRIB <<-EOF - GBFILE = grib_$grid + ${NAGRIB} <<-EOF + GBFILE = grib_${grid} INDXFL = - GDOUTF = $GEMGRD - PROJ = $proj - GRDAREA = $grdarea - KXKY = $kxky - MAXGRD = $maxgrd - CPYFIL = $cpyfil - GAREA = $garea - OUTPUT = $output - GBTBLS = $gbtbls - G2TBLS = $g2tbls + GDOUTF = ${GEMGRD} + PROJ = ${proj} + GRDAREA = ${grdarea} + KXKY = ${kxky} + MAXGRD = ${maxgrd} + CPYFIL = ${cpyfil} + GAREA = ${garea} + OUTPUT = ${output} + GBTBLS = ${gbtbls} + G2TBLS = ${g2tbls} GBDIAG = - PDSEXT = $pdsext + PDSEXT = ${pdsext} l r EOF - export err=$?;pgm=$NAGRIB;err_chk + export err=$?;pgm=${NAGRIB};err_chk ##################################################### # GEMPAK DOES NOT ALWAYS HAVE A NON ZERO RETURN CODE # WHEN IT CAN NOT PRODUCE THE DESIRED GRID. CHECK # FOR THIS CASE HERE. ##################################################### - ls -l $GEMGRD + ls -l ${GEMGRD} export err=$?;export pgm="GEMPAK CHECK FILE";err_chk - if [ "$NAGRIB" = "nagrib2" ] ; then + if [ "${NAGRIB}" = "nagrib2" ] ; then gpend fi cpfs "${GEMGRD}" "${COM_WAVE_GEMPAK}/${GEMGRD}" - if [ $SENDDBN = "YES" ] ; then + if [ ${SENDDBN} = "YES" ] ; then "${DBNROOT}/bin/dbn_alert" MODEL "${DBN_ALERT_TYPE}" "${job}" "${COM_WAVE_GEMPAK}/${GEMGRD}" else echo "##### DBN_ALERT is: MODEL ${DBN_ALERT_TYPE} ${job} ${COM_WAVE_GEMPAK}/${GEMGRD}#####" fi - rm grib_$grid + rm grib_${grid} done - if [ $fhcnt -ge $FHMAX_HF_WAV ]; then - inc=$FHOUT_WAV + if [ ${fhcnt} -ge ${FHMAX_HF_WAV} ]; then + inc=${FHOUT_WAV} else - inc=$FHOUT_HF_WAV + inc=${FHOUT_HF_WAV} fi let fhcnt=fhcnt+inc done diff --git a/scripts/exgfs_wave_prdgen_gridded.sh b/scripts/exgfs_wave_prdgen_gridded.sh index 095856e1e2..b0cbc124ce 100755 --- a/scripts/exgfs_wave_prdgen_gridded.sh +++ b/scripts/exgfs_wave_prdgen_gridded.sh @@ -31,7 +31,7 @@ source "$HOMEgfs/ush/preamble.sh" export FHOUT_WAV=${FHOUT_WAV:-6} #from 72 to 180 inc=6 export FHOUT_HF_WAV=${FHOUT_HF_WAV:-3} export maxtries=720 - export FIXwave=${FIXwave:-$HOMEgfs/fix} + export FIXwave=${FIXwave:-$HOMEgfs/fix/wave} export PARMwave=${PARMwave:-$HOMEgfs/parm/parm_wave} export USHwave=${USHwave:-$HOMEgfs/ush} export cyc=${cyc:-00} diff --git a/scripts/exglobal_atmos_analysis.sh b/scripts/exglobal_atmos_analysis.sh index 5954802d59..cb3c6467a1 100755 --- a/scripts/exglobal_atmos_analysis.sh +++ b/scripts/exglobal_atmos_analysis.sh @@ -289,7 +289,6 @@ else fi # GSI Fix files -RTMFIX=${CRTM_FIX} BERROR=${BERROR:-${FIXgsi}/Big_Endian/global_berror.l${LEVS}y${NLAT_A}.f77} SATANGL=${SATANGL:-${FIXgsi}/global_satangbias.txt} SATINFO=${SATINFO:-${FIXgsi}/global_satinfo.txt} @@ -408,22 +407,22 @@ fi # CRTM Spectral and Transmittance coefficients mkdir -p crtm_coeffs for file in $(awk '{if($1!~"!"){print $1}}' satinfo | sort | uniq); do - ${NLN} ${RTMFIX}/${file}.SpcCoeff.bin ./crtm_coeffs/${file}.SpcCoeff.bin - ${NLN} ${RTMFIX}/${file}.TauCoeff.bin ./crtm_coeffs/${file}.TauCoeff.bin + ${NLN} ${CRTM_FIX}/${file}.SpcCoeff.bin ./crtm_coeffs/${file}.SpcCoeff.bin + ${NLN} ${CRTM_FIX}/${file}.TauCoeff.bin ./crtm_coeffs/${file}.TauCoeff.bin done -${NLN} ${RTMFIX}/amsua_metop-a_v2.SpcCoeff.bin ./crtm_coeffs/amsua_metop-a_v2.SpcCoeff.bin - -${NLN} ${RTMFIX}/Nalli.IRwater.EmisCoeff.bin ./crtm_coeffs/Nalli.IRwater.EmisCoeff.bin -${NLN} ${RTMFIX}/NPOESS.IRice.EmisCoeff.bin ./crtm_coeffs/NPOESS.IRice.EmisCoeff.bin -${NLN} ${RTMFIX}/NPOESS.IRland.EmisCoeff.bin ./crtm_coeffs/NPOESS.IRland.EmisCoeff.bin -${NLN} ${RTMFIX}/NPOESS.IRsnow.EmisCoeff.bin ./crtm_coeffs/NPOESS.IRsnow.EmisCoeff.bin -${NLN} ${RTMFIX}/NPOESS.VISice.EmisCoeff.bin ./crtm_coeffs/NPOESS.VISice.EmisCoeff.bin -${NLN} ${RTMFIX}/NPOESS.VISland.EmisCoeff.bin ./crtm_coeffs/NPOESS.VISland.EmisCoeff.bin -${NLN} ${RTMFIX}/NPOESS.VISsnow.EmisCoeff.bin ./crtm_coeffs/NPOESS.VISsnow.EmisCoeff.bin -${NLN} ${RTMFIX}/NPOESS.VISwater.EmisCoeff.bin ./crtm_coeffs/NPOESS.VISwater.EmisCoeff.bin -${NLN} ${RTMFIX}/FASTEM6.MWwater.EmisCoeff.bin ./crtm_coeffs/FASTEM6.MWwater.EmisCoeff.bin -${NLN} ${RTMFIX}/AerosolCoeff.bin ./crtm_coeffs/AerosolCoeff.bin -${NLN} ${RTMFIX}/CloudCoeff.GFDLFV3.-109z-1.bin ./crtm_coeffs/CloudCoeff.bin +${NLN} ${CRTM_FIX}/amsua_metop-a_v2.SpcCoeff.bin ./crtm_coeffs/amsua_metop-a_v2.SpcCoeff.bin + +${NLN} ${CRTM_FIX}/Nalli.IRwater.EmisCoeff.bin ./crtm_coeffs/Nalli.IRwater.EmisCoeff.bin +${NLN} ${CRTM_FIX}/NPOESS.IRice.EmisCoeff.bin ./crtm_coeffs/NPOESS.IRice.EmisCoeff.bin +${NLN} ${CRTM_FIX}/NPOESS.IRland.EmisCoeff.bin ./crtm_coeffs/NPOESS.IRland.EmisCoeff.bin +${NLN} ${CRTM_FIX}/NPOESS.IRsnow.EmisCoeff.bin ./crtm_coeffs/NPOESS.IRsnow.EmisCoeff.bin +${NLN} ${CRTM_FIX}/NPOESS.VISice.EmisCoeff.bin ./crtm_coeffs/NPOESS.VISice.EmisCoeff.bin +${NLN} ${CRTM_FIX}/NPOESS.VISland.EmisCoeff.bin ./crtm_coeffs/NPOESS.VISland.EmisCoeff.bin +${NLN} ${CRTM_FIX}/NPOESS.VISsnow.EmisCoeff.bin ./crtm_coeffs/NPOESS.VISsnow.EmisCoeff.bin +${NLN} ${CRTM_FIX}/NPOESS.VISwater.EmisCoeff.bin ./crtm_coeffs/NPOESS.VISwater.EmisCoeff.bin +${NLN} ${CRTM_FIX}/FASTEM6.MWwater.EmisCoeff.bin ./crtm_coeffs/FASTEM6.MWwater.EmisCoeff.bin +${NLN} ${CRTM_FIX}/AerosolCoeff.bin ./crtm_coeffs/AerosolCoeff.bin +${NLN} ${CRTM_FIX}/CloudCoeff.GFDLFV3.-109z-1.bin ./crtm_coeffs/CloudCoeff.bin ############################################################## # Observational data @@ -434,18 +433,13 @@ ${NLN} ${OSCATBF} oscatbufr ${NLN} ${RAPIDSCATBF} rapidscatbufr ${NLN} ${GSNDBF} gsndrbufr ${NLN} ${GSNDBF1} gsnd1bufr -${NLN} ${B1HRS2} hirs2bufr ${NLN} ${B1MSU} msubufr -${NLN} ${B1HRS3} hirs3bufr -${NLN} ${B1HRS4} hirs4bufr ${NLN} ${B1AMUA} amsuabufr ${NLN} ${B1AMUB} amsubbufr ${NLN} ${B1MHS} mhsbufr -${NLN} ${ESHRS3} hirs3bufrears ${NLN} ${ESAMUA} amsuabufrears ${NLN} ${ESAMUB} amsubbufrears #$NLN $ESMHS mhsbufrears -${NLN} ${HRS3DB} hirs3bufr_db ${NLN} ${AMUADB} amsuabufr_db ${NLN} ${AMUBDB} amsubbufr_db #$NLN $MHSDB mhsbufr_db @@ -781,8 +775,6 @@ OBS_INPUT:: sbuvbufr sbuv2 n16 sbuv8_n16 0.0 0 0 sbuvbufr sbuv2 n17 sbuv8_n17 0.0 0 0 sbuvbufr sbuv2 n18 sbuv8_n18 0.0 0 0 - hirs3bufr hirs3 n17 hirs3_n17 0.0 1 0 - hirs4bufr hirs4 metop-a hirs4_metop-a 0.0 1 1 gimgrbufr goes_img g11 imgr_g11 0.0 1 0 gimgrbufr goes_img g12 imgr_g12 0.0 1 0 airsbufr airs aqua airs_aqua 0.0 1 1 @@ -816,7 +808,6 @@ OBS_INPUT:: gomebufr gome metop-a gome_metop-a 0.0 2 0 omibufr omi aura omi_aura 0.0 2 0 sbuvbufr sbuv2 n19 sbuv8_n19 0.0 0 0 - hirs4bufr hirs4 n19 hirs4_n19 0.0 1 1 amsuabufr amsua n19 amsua_n19 0.0 1 1 mhsbufr mhs n19 mhs_n19 0.0 1 1 tcvitl tcp null tcp 0.0 0 0 @@ -824,7 +815,6 @@ OBS_INPUT:: seviribufr seviri m09 seviri_m09 0.0 1 0 seviribufr seviri m10 seviri_m10 0.0 1 0 seviribufr seviri m11 seviri_m11 0.0 1 0 - hirs4bufr hirs4 metop-b hirs4_metop-b 0.0 1 1 amsuabufr amsua metop-b amsua_metop-b 0.0 1 1 mhsbufr mhs metop-b mhs_metop-b 0.0 1 1 iasibufr iasi metop-b iasi_metop-b 0.0 1 1 diff --git a/scripts/exglobal_atmos_analysis_calc.sh b/scripts/exglobal_atmos_analysis_calc.sh index b353d3c52b..a2086aa927 100755 --- a/scripts/exglobal_atmos_analysis_calc.sh +++ b/scripts/exglobal_atmos_analysis_calc.sh @@ -23,7 +23,7 @@ source "$HOMEgfs/ush/preamble.sh" # Directories. pwd=$(pwd) -export FIXgsm=${FIXgsm:-$HOMEgfs/fix/am} +export FIXam=${FIXam:-$HOMEgfs/fix/am} # Base variables CDUMP=${CDUMP:-"gdas"} diff --git a/scripts/exglobal_atmos_sfcanl.sh b/scripts/exglobal_atmos_sfcanl.sh index f173886a07..2997ac0d25 100755 --- a/scripts/exglobal_atmos_sfcanl.sh +++ b/scripts/exglobal_atmos_sfcanl.sh @@ -55,8 +55,8 @@ export SNOW_NUDGE_COEFF=${SNOW_NUDGE_COEFF:-'-2.'} export CYCLVARS=${CYCLVARS:-""} export FHOUR=${FHOUR:-0} export DELTSFC=${DELTSFC:-6} -export FIXgsm=${FIXgsm:-${HOMEgfs}/fix/am} -export FIXfv3=${FIXfv3:-${HOMEgfs}/fix/orog} +export FIXam=${FIXam:-${HOMEgfs}/fix/am} +export FIXorog=${FIXorog:-${HOMEgfs}/fix/orog} # FV3 specific info (required for global_cycle) export CASE=${CASE:-"C384"} @@ -176,8 +176,8 @@ if [[ ${DOIAU} = "YES" ]]; then "${COM_ATMOS_RESTART}/${bPDY}.${bcyc}0000.sfcanl_data.tile${n}.nc" ${NLN} "${COM_ATMOS_RESTART_PREV}/${bPDY}.${bcyc}0000.sfc_data.tile${n}.nc" "${DATA}/fnbgsi.00${n}" ${NLN} "${COM_ATMOS_RESTART}/${bPDY}.${bcyc}0000.sfcanl_data.tile${n}.nc" "${DATA}/fnbgso.00${n}" - ${NLN} "${FIXfv3}/${CASE}/${CASE}_grid.tile${n}.nc" "${DATA}/fngrid.00${n}" - ${NLN} "${FIXfv3}/${CASE}/${CASE}_oro_data.tile${n}.nc" "${DATA}/fnorog.00${n}" + ${NLN} "${FIXorog}/${CASE}/${CASE}_grid.tile${n}.nc" "${DATA}/fngrid.00${n}" + ${NLN} "${FIXorog}/${CASE}/${CASE}.mx${OCNRES}_oro_data.tile${n}.nc" "${DATA}/fnorog.00${n}" done export APRUNCY=${APRUN_CYCLE} @@ -199,8 +199,8 @@ for n in $(seq 1 ${ntiles}); do fi ${NLN} "${COM_ATMOS_RESTART_PREV}/${PDY}.${cyc}0000.sfc_data.tile${n}.nc" "${DATA}/fnbgsi.00${n}" ${NLN} "${COM_ATMOS_RESTART}/${PDY}.${cyc}0000.sfcanl_data.tile${n}.nc" "${DATA}/fnbgso.00${n}" - ${NLN} "${FIXfv3}/${CASE}/${CASE}_grid.tile${n}.nc" "${DATA}/fngrid.00${n}" - ${NLN} "${FIXfv3}/${CASE}/${CASE}_oro_data.tile${n}.nc" "${DATA}/fnorog.00${n}" + ${NLN} "${FIXorog}/${CASE}/${CASE}_grid.tile${n}.nc" "${DATA}/fngrid.00${n}" + ${NLN} "${FIXorog}/${CASE}/${CASE}.mx${OCNRES}_oro_data.tile${n}.nc" "${DATA}/fnorog.00${n}" done export APRUNCY=${APRUN_CYCLE} diff --git a/scripts/exglobal_diag.sh b/scripts/exglobal_diag.sh index 38f0cda2ad..c973a8c72f 100755 --- a/scripts/exglobal_diag.sh +++ b/scripts/exglobal_diag.sh @@ -103,7 +103,7 @@ if [[ "${GENDIAG}" = "YES" ]] ; then diagtype[0]="conv conv_gps conv_ps conv_pw conv_q conv_sst conv_t conv_tcp conv_uv conv_spd" diagtype[1]="pcp_ssmi_dmsp pcp_tmi_trmm" diagtype[2]="sbuv2_n16 sbuv2_n17 sbuv2_n18 sbuv2_n19 gome_metop-a gome_metop-b omi_aura mls30_aura ompsnp_npp ompstc8_npp ompstc8_n20 ompsnp_n20 ompstc8_n21 ompsnp_n21 ompslp_npp gome_metop-c" - diagtype[3]="hirs2_n14 msu_n14 sndr_g08 sndr_g11 sndr_g12 sndr_g13 sndr_g08_prep sndr_g11_prep sndr_g12_prep sndr_g13_prep sndrd1_g11 sndrd2_g11 sndrd3_g11 sndrd4_g11 sndrd1_g12 sndrd2_g12 sndrd3_g12 sndrd4_g12 sndrd1_g13 sndrd2_g13 sndrd3_g13 sndrd4_g13 sndrd1_g14 sndrd2_g14 sndrd3_g14 sndrd4_g14 sndrd1_g15 sndrd2_g15 sndrd3_g15 sndrd4_g15 hirs3_n15 hirs3_n16 hirs3_n17 amsua_n15 amsua_n16 amsua_n17 amsub_n15 amsub_n16 amsub_n17 hsb_aqua airs_aqua amsua_aqua imgr_g08 imgr_g11 imgr_g12 imgr_g14 imgr_g15 ssmi_f13 ssmi_f15 hirs4_n18 hirs4_metop-a amsua_n18 amsua_metop-a mhs_n18 mhs_metop-a amsre_low_aqua amsre_mid_aqua amsre_hig_aqua ssmis_f16 ssmis_f17 ssmis_f18 ssmis_f19 ssmis_f20 iasi_metop-a hirs4_n19 amsua_n19 mhs_n19 seviri_m08 seviri_m09 seviri_m10 seviri_m11 cris_npp cris-fsr_npp cris-fsr_n20 atms_npp atms_n20 hirs4_metop-b amsua_metop-b mhs_metop-b iasi_metop-b avhrr_metop-b avhrr_n18 avhrr_n19 avhrr_metop-a amsr2_gcom-w1 gmi_gpm saphir_meghat ahi_himawari8 abi_g16 abi_g17 amsua_metop-c mhs_metop-c iasi_metop-c avhrr_metop-c viirs-m_npp viirs-m_j1 abi_g18 ahi_himawari9 viirs-m_j2 cris-fsr_n21 atms_n21" + diagtype[3]="msu_n14 sndr_g08 sndr_g11 sndr_g12 sndr_g13 sndr_g08_prep sndr_g11_prep sndr_g12_prep sndr_g13_prep sndrd1_g11 sndrd2_g11 sndrd3_g11 sndrd4_g11 sndrd1_g12 sndrd2_g12 sndrd3_g12 sndrd4_g12 sndrd1_g13 sndrd2_g13 sndrd3_g13 sndrd4_g13 sndrd1_g14 sndrd2_g14 sndrd3_g14 sndrd4_g14 sndrd1_g15 sndrd2_g15 sndrd3_g15 sndrd4_g15 amsua_n15 amsua_n16 amsua_n17 amsub_n15 amsub_n16 amsub_n17 hsb_aqua airs_aqua amsua_aqua imgr_g08 imgr_g11 imgr_g12 imgr_g14 imgr_g15 ssmi_f13 ssmi_f15 amsua_n18 amsua_metop-a mhs_n18 mhs_metop-a amsre_low_aqua amsre_mid_aqua amsre_hig_aqua ssmis_f16 ssmis_f17 ssmis_f18 ssmis_f19 ssmis_f20 iasi_metop-a amsua_n19 mhs_n19 seviri_m08 seviri_m09 seviri_m10 seviri_m11 cris_npp cris-fsr_npp cris-fsr_n20 atms_npp atms_n20 amsua_metop-b mhs_metop-b iasi_metop-b avhrr_metop-b avhrr_n18 avhrr_n19 avhrr_metop-a amsr2_gcom-w1 gmi_gpm saphir_meghat ahi_himawari8 abi_g16 abi_g17 amsua_metop-c mhs_metop-c iasi_metop-c avhrr_metop-c viirs-m_npp viirs-m_j1 abi_g18 ahi_himawari9 viirs-m_j2 cris-fsr_n21 atms_n21" diaglist[0]=listcnv diaglist[1]=listpcp diff --git a/scripts/exglobal_forecast.sh b/scripts/exglobal_forecast.sh index 49dbaf12cf..c629173879 100755 --- a/scripts/exglobal_forecast.sh +++ b/scripts/exglobal_forecast.sh @@ -38,19 +38,19 @@ ## Restart files: ## ## Fix files: -## 1. computing grid, $FIXfv3/$CASE/${CASE}_grid.tile${n}.nc -## 2. orography data, $FIXfv3/$CASE/${CASE}_oro_data.tile${n}.nc -## 3. mosaic data, $FIXfv3/$CASE/${CASE}_mosaic.nc -## 4. Global O3 data, $FIX_AM/${O3FORC} -## 5. Global H2O data, $FIX_AM/${H2OFORC} -## 6. Global solar constant data, $FIX_AM/global_solarconstant_noaa_an.txt -## 7. Global surface emissivity, $FIX_AM/global_sfc_emissivity_idx.txt -## 8. Global CO2 historical data, $FIX_AM/global_co2historicaldata_glob.txt -## 8. Global CO2 monthly data, $FIX_AM/co2monthlycyc.txt -## 10. Additional global CO2 data, $FIX_AM/fix_co2_proj/global_co2historicaldata +## 1. computing grid, $FIXorog/$CASE/${CASE}_grid.tile${n}.nc +## 2. orography data, $FIXorog/$CASE/${CASE}.mx${OCNRES}_oro_data.tile${n}.nc +## 3. mosaic data, $FIXorog/$CASE/${CASE}_mosaic.nc +## 4. Global O3 data, $FIXam/${O3FORC} +## 5. Global H2O data, $FIXam/${H2OFORC} +## 6. Global solar constant data, $FIXam/global_solarconstant_noaa_an.txt +## 7. Global surface emissivity, $FIXam/global_sfc_emissivity_idx.txt +## 8. Global CO2 historical data, $FIXam/global_co2historicaldata_glob.txt +## 8. Global CO2 monthly data, $FIXam/co2monthlycyc.txt +## 10. Additional global CO2 data, $FIXam/fix_co2_proj/global_co2historicaldata ## 11. Climatological aerosol global distribution -## $FIX_AM/global_climaeropac_global.txt -## 12. Monthly volcanic forcing $FIX_AM/global_volcanic_aerosols_YYYY-YYYY.txt +## $FIXam/global_climaeropac_global.txt +## 12. Monthly volcanic forcing $FIXam/global_volcanic_aerosols_YYYY-YYYY.txt ## ## Data output (location, name) ## If quilting=true and output grid is gaussian grid: diff --git a/sorc/ufs_utils.fd b/sorc/ufs_utils.fd index 892b693ba4..ce385cedfa 160000 --- a/sorc/ufs_utils.fd +++ b/sorc/ufs_utils.fd @@ -1 +1 @@ -Subproject commit 892b693ba49b37c23f08cc8e18550ba72e108762 +Subproject commit ce385cedfa9abd46b0905e8d6486b0339a9e4267 diff --git a/ush/calcanl_gfs.py b/ush/calcanl_gfs.py index a325ec35b3..cf2dc8dc89 100755 --- a/ush/calcanl_gfs.py +++ b/ush/calcanl_gfs.py @@ -346,7 +346,7 @@ def calcanl_gfs(DoIAU, l4DEnsVar, Write4Danl, ComOut, APrefix, ComOut = os.getenv('COM_ATMOS_ANALYSIS', './') APrefix = os.getenv('APREFIX', '') NThreads = os.getenv('NTHREADS_CHGRES', 1) - FixDir = os.getenv('FIXgsm', './') + FixDir = os.getenv('FIXam', './') atmges_ens_mean = os.getenv('ATMGES_ENSMEAN', './atmges_ensmean') RunDir = os.getenv('DATA', './') ExecCMD = os.getenv('APRUN_CALCANL', '') diff --git a/ush/forecast_postdet.sh b/ush/forecast_postdet.sh index 7b94b2167e..f47755f854 100755 --- a/ush/forecast_postdet.sh +++ b/ush/forecast_postdet.sh @@ -133,17 +133,17 @@ EOF #-------------------------------------------------------------------------- # Grid and orography data + FIXsfc=${FIXsfc:-"${FIXorog}/${CASE}/sfc"} + if [[ ${cplflx} = ".false." ]] ; then - ${NLN} "${FIX_DIR}/orog/${CASE}/${CASE}_mosaic.nc" "${DATA}/INPUT/grid_spec.nc" + ${NLN} "${FIXorog}/${CASE}/${CASE}_mosaic.nc" "${DATA}/INPUT/grid_spec.nc" else - ${NLN} "${FIX_DIR}/orog/${CASE}/${CASE}_mosaic.nc" "${DATA}/INPUT/${CASE}_mosaic.nc" + ${NLN} "${FIXorog}/${CASE}/${CASE}_mosaic.nc" "${DATA}/INPUT/${CASE}_mosaic.nc" fi - OROFIX=${OROFIX:-"${FIX_DIR}/orog/${CASE}.mx${OCNRES}_frac"} - FIX_SFC=${FIX_SFC:-"${OROFIX}/sfc"} for n in $(seq 1 "${ntiles}"); do - ${NLN} "${OROFIX}/oro_${CASE}.mx${OCNRES}.tile${n}.nc" "${DATA}/INPUT/oro_data.tile${n}.nc" - ${NLN} "${OROFIX}/${CASE}_grid.tile${n}.nc" "${DATA}/INPUT/${CASE}_grid.tile${n}.nc" + ${NLN} "${FIXorog}/${CASE}/${CASE}.mx${OCNRES}_oro_data.tile${n}.nc" "${DATA}/INPUT/oro_data.tile${n}.nc" + ${NLN} "${FIXorog}/${CASE}/${CASE}_grid.tile${n}.nc" "${DATA}/INPUT/${CASE}_grid.tile${n}.nc" done _suite_file="${HOMEgfs}/sorc/ufs_model.fd/FV3/ccpp/suites/suite_${CCPP_SUITE}.xml" @@ -201,11 +201,10 @@ EOF fi # Files for GWD - OROFIX_ugwd=${OROFIX_ugwd:-"${FIX_DIR}/ugwd"} - ${NLN} "${OROFIX_ugwd}/ugwp_limb_tau.nc" "${DATA}/ugwp_limb_tau.nc" + ${NLN} "${FIXugwd}/ugwp_limb_tau.nc" "${DATA}/ugwp_limb_tau.nc" for n in $(seq 1 "${ntiles}"); do - ${NLN} "${OROFIX_ugwd}/${CASE}/${CASE}_oro_data_ls.tile${n}.nc" "${DATA}/INPUT/oro_data_ls.tile${n}.nc" - ${NLN} "${OROFIX_ugwd}/${CASE}/${CASE}_oro_data_ss.tile${n}.nc" "${DATA}/INPUT/oro_data_ss.tile${n}.nc" + ${NLN} "${FIXugwd}/${CASE}/${CASE}_oro_data_ls.tile${n}.nc" "${DATA}/INPUT/oro_data_ls.tile${n}.nc" + ${NLN} "${FIXugwd}/${CASE}/${CASE}_oro_data_ss.tile${n}.nc" "${DATA}/INPUT/oro_data_ss.tile${n}.nc" done # GFS standard input data @@ -226,41 +225,41 @@ EOF # imp_physics should be 8: #### if [[ ${imp_physics} -eq 8 ]]; then - ${NLN} "${FIX_DIR}/am/CCN_ACTIVATE.BIN" "${DATA}/CCN_ACTIVATE.BIN" - ${NLN} "${FIX_DIR}/am/freezeH2O.dat" "${DATA}/freezeH2O.dat" - ${NLN} "${FIX_DIR}/am/qr_acr_qgV2.dat" "${DATA}/qr_acr_qgV2.dat" - ${NLN} "${FIX_DIR}/am/qr_acr_qsV2.dat" "${DATA}/qr_acr_qsV2.dat" + ${NLN} "${FIXam}/CCN_ACTIVATE.BIN" "${DATA}/CCN_ACTIVATE.BIN" + ${NLN} "${FIXam}/freezeH2O.dat" "${DATA}/freezeH2O.dat" + ${NLN} "${FIXam}/qr_acr_qgV2.dat" "${DATA}/qr_acr_qgV2.dat" + ${NLN} "${FIXam}/qr_acr_qsV2.dat" "${DATA}/qr_acr_qsV2.dat" fi - ${NLN} "${FIX_DIR}/am/${O3FORC}" "${DATA}/global_o3prdlos.f77" - ${NLN} "${FIX_DIR}/am/${H2OFORC}" "${DATA}/global_h2oprdlos.f77" - ${NLN} "${FIX_DIR}/am/global_solarconstant_noaa_an.txt" "${DATA}/solarconstant_noaa_an.txt" - ${NLN} "${FIX_DIR}/am/global_sfc_emissivity_idx.txt" "${DATA}/sfc_emissivity_idx.txt" + ${NLN} "${FIXam}/${O3FORC}" "${DATA}/global_o3prdlos.f77" + ${NLN} "${FIXam}/${H2OFORC}" "${DATA}/global_h2oprdlos.f77" + ${NLN} "${FIXam}/global_solarconstant_noaa_an.txt" "${DATA}/solarconstant_noaa_an.txt" + ${NLN} "${FIXam}/global_sfc_emissivity_idx.txt" "${DATA}/sfc_emissivity_idx.txt" ## merra2 aerosol climo if [[ ${IAER} -eq "1011" ]]; then for month in $(seq 1 12); do MM=$(printf %02d "${month}") - ${NLN} "${FIX_DIR}/aer/merra2.aerclim.2003-2014.m${MM}.nc" "aeroclim.m${MM}.nc" + ${NLN} "${FIXaer}/merra2.aerclim.2003-2014.m${MM}.nc" "aeroclim.m${MM}.nc" done - ${NLN} "${FIX_DIR}/lut/optics_BC.v1_3.dat" "${DATA}/optics_BC.dat" - ${NLN} "${FIX_DIR}/lut/optics_OC.v1_3.dat" "${DATA}/optics_OC.dat" - ${NLN} "${FIX_DIR}/lut/optics_DU.v15_3.dat" "${DATA}/optics_DU.dat" - ${NLN} "${FIX_DIR}/lut/optics_SS.v3_3.dat" "${DATA}/optics_SS.dat" - ${NLN} "${FIX_DIR}/lut/optics_SU.v1_3.dat" "${DATA}/optics_SU.dat" + ${NLN} "${FIXlut}/optics_BC.v1_3.dat" "${DATA}/optics_BC.dat" + ${NLN} "${FIXlut}/optics_OC.v1_3.dat" "${DATA}/optics_OC.dat" + ${NLN} "${FIXlut}/optics_DU.v15_3.dat" "${DATA}/optics_DU.dat" + ${NLN} "${FIXlut}/optics_SS.v3_3.dat" "${DATA}/optics_SS.dat" + ${NLN} "${FIXlut}/optics_SU.v1_3.dat" "${DATA}/optics_SU.dat" fi - ${NLN} "${FIX_DIR}/am/global_co2historicaldata_glob.txt" "${DATA}/co2historicaldata_glob.txt" - ${NLN} "${FIX_DIR}/am/co2monthlycyc.txt" "${DATA}/co2monthlycyc.txt" + ${NLN} "${FIXam}/global_co2historicaldata_glob.txt" "${DATA}/co2historicaldata_glob.txt" + ${NLN} "${FIXam}/co2monthlycyc.txt" "${DATA}/co2monthlycyc.txt" if [[ ${ICO2} -gt 0 ]]; then - for file in $(ls "${FIX_DIR}/am/fix_co2_proj/global_co2historicaldata"*) ; do + for file in $(ls "${FIXam}/fix_co2_proj/global_co2historicaldata"*) ; do ${NLN} "${file}" "${DATA}/$(basename "${file//global_}")" done fi - ${NLN} "${FIX_DIR}/am/global_climaeropac_global.txt" "${DATA}/aerosol.dat" + ${NLN} "${FIXam}/global_climaeropac_global.txt" "${DATA}/aerosol.dat" if [[ ${IAER} -gt 0 ]] ; then - for file in $(ls "${FIX_DIR}/am/global_volcanic_aerosols"*) ; do + for file in $(ls "${FIXam}/global_volcanic_aerosols"*) ; do ${NLN} "${file}" "${DATA}/$(basename "${file//global_}")" done fi @@ -297,28 +296,28 @@ EOF LATB_JMO=${LATB_JMO:-${LATB_CASE}} # Fix files - FNGLAC=${FNGLAC:-"${FIX_DIR}/am/global_glacier.2x2.grb"} - FNMXIC=${FNMXIC:-"${FIX_DIR}/am/global_maxice.2x2.grb"} - FNTSFC=${FNTSFC:-"${FIX_DIR}/am/RTGSST.1982.2012.monthly.clim.grb"} - FNSNOC=${FNSNOC:-"${FIX_DIR}/am/global_snoclim.1.875.grb"} + FNGLAC=${FNGLAC:-"${FIXam}/global_glacier.2x2.grb"} + FNMXIC=${FNMXIC:-"${FIXam}/global_maxice.2x2.grb"} + FNTSFC=${FNTSFC:-"${FIXam}/RTGSST.1982.2012.monthly.clim.grb"} + FNSNOC=${FNSNOC:-"${FIXam}/global_snoclim.1.875.grb"} FNZORC=${FNZORC:-"igbp"} - FNAISC=${FNAISC:-"${FIX_DIR}/am/IMS-NIC.blended.ice.monthly.clim.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"} - FNMSKH=${FNMSKH:-"${FIX_DIR}/am/global_slmask.t1534.3072.1536.grb"} - 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"} - 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"} - FNSOCC=${FNSOCC:-"${FIX_SFC}/${CASE}.mx${OCNRES}.soil_color.tileX.nc"} - FNABSC=${FNABSC:-"${FIX_SFC}/${CASE}.mx${OCNRES}.maximum_snow_albedo.tileX.nc"} - FNSMCC=${FNSMCC:-"${FIX_DIR}/am/global_soilmgldas.statsgo.t${JCAP}.${LONB}.${LATB}.grb"} + FNAISC=${FNAISC:-"${FIXam}/IMS-NIC.blended.ice.monthly.clim.grb"} + FNALBC2=${FNALBC2:-"${FIXsfc}/${CASE}.mx${OCNRES}.facsf.tileX.nc"} + FNTG3C=${FNTG3C:-"${FIXsfc}/${CASE}.mx${OCNRES}.substrate_temperature.tileX.nc"} + FNVEGC=${FNVEGC:-"${FIXsfc}/${CASE}.mx${OCNRES}.vegetation_greenness.tileX.nc"} + FNMSKH=${FNMSKH:-"${FIXam}/global_slmask.t1534.3072.1536.grb"} + FNVMNC=${FNVMNC:-"${FIXsfc}/${CASE}.mx${OCNRES}.vegetation_greenness.tileX.nc"} + FNVMXC=${FNVMXC:-"${FIXsfc}/${CASE}.mx${OCNRES}.vegetation_greenness.tileX.nc"} + FNSLPC=${FNSLPC:-"${FIXsfc}/${CASE}.mx${OCNRES}.slope_type.tileX.nc"} + FNALBC=${FNALBC:-"${FIXsfc}/${CASE}.mx${OCNRES}.snowfree_albedo.tileX.nc"} + FNVETC=${FNVETC:-"${FIXsfc}/${CASE}.mx${OCNRES}.vegetation_type.tileX.nc"} + FNSOTC=${FNSOTC:-"${FIXsfc}/${CASE}.mx${OCNRES}.soil_type.tileX.nc"} + FNSOCC=${FNSOCC:-"${FIXsfc}/${CASE}.mx${OCNRES}.soil_color.tileX.nc"} + FNABSC=${FNABSC:-"${FIXsfc}/${CASE}.mx${OCNRES}.maximum_snow_albedo.tileX.nc"} + FNSMCC=${FNSMCC:-"${FIXam}/global_soilmgldas.statsgo.t${JCAP}.${LONB}.${LATB}.grb"} # If the appropriate resolution fix file is not present, use the highest resolution available (T1534) - [[ ! -f ${FNSMCC} ]] && FNSMCC="${FIX_DIR}/am/global_soilmgldas.statsgo.t1534.3072.1536.grb" + [[ ! -f ${FNSMCC} ]] && FNSMCC="${FIXam}/global_soilmgldas.statsgo.t1534.3072.1536.grb" # NSST Options # nstf_name contains the NSST related parameters @@ -705,7 +704,7 @@ MOM6_postdet() { ${NCP} "${FIXmom}/${OCNRES}/"* "${DATA}/INPUT/" # Copy coupled grid_spec - spec_file="${FIX_DIR}/cpl/a${CASE}o${OCNRES}/grid_spec.nc" + spec_file="${FIXcpl}/a${CASE}o${OCNRES}/grid_spec.nc" if [[ -s ${spec_file} ]]; then ${NCP} "${spec_file}" "${DATA}/INPUT/" else diff --git a/ush/forecast_predet.sh b/ush/forecast_predet.sh index 84d377019a..9bb565919a 100755 --- a/ush/forecast_predet.sh +++ b/ush/forecast_predet.sh @@ -58,7 +58,7 @@ common_predet(){ FCSTEXEC=${FCSTEXEC:-ufs_model.x} # Directories. - FIX_DIR=${FIX_DIR:-${HOMEgfs}/fix} + FIXgfs=${FIXgfs:-${HOMEgfs}/fix} # Model specific stuff PARM_POST=${PARM_POST:-${HOMEgfs}/parm/post} diff --git a/ush/fv3gfs_remap.sh b/ush/fv3gfs_remap.sh index 430e96c868..7986add331 100755 --- a/ush/fv3gfs_remap.sh +++ b/ush/fv3gfs_remap.sh @@ -14,8 +14,8 @@ export GG=${master_grid:-"0p25deg"} # 1deg 0p5deg 0p25deg 0p125deg pwd=$(pwd) export DATA=${DATA:-$pwd} export HOMEgfs=${HOMEgfs:-$PACKAGEROOT} -export FIX_DIR=${FIX_DIR:-$HOMEgfs/fix} -export FIXfv3=${FIXfv3:-$FIX_DIR/orog} +export FIXgfs=${FIXgfs:-$HOMEgfs/fix} +export FIXorog=${FIXorog:-$FIXgfs/orog} export REMAPEXE=${REMAPEXE:-$HOMEgfs/exec/fregrid_parallel} export IPD4=${IPD4:-"YES"} @@ -25,8 +25,8 @@ export CDUMP=${CDUMP:-gfs} export PREFIX=${PREFIX:-${CDUMP}${TCYC}} #-------------------------------------------------- -export grid_loc=$FIXfv3/$CASE/${CASE}_mosaic.nc -export weight_file=$FIXfv3/$CASE/remap_weights_${CASE}_${GG}.nc +export grid_loc=${FIXorog}/${CASE}/${CASE}_mosaic.nc +export weight_file=${FIXorog}/${CASE}/remap_weights_${CASE}_${GG}.nc export APRUN_REMAP=${APRUN_REMAP:-${APRUN:-""}} export NTHREADS_REMAP=${NTHREADS_REMAP:-${NTHREADS:-1}} diff --git a/ush/gaussian_sfcanl.sh b/ush/gaussian_sfcanl.sh index 1e68ca0186..1a0441a06f 100755 --- a/ush/gaussian_sfcanl.sh +++ b/ush/gaussian_sfcanl.sh @@ -29,7 +29,7 @@ # $BASEDIR/gfs_ver.v15.0.0} # FIXam Directory for the global fixed climatology files. # Defaults to $HOMEgfs/fix/am -# FIXfv3 Directory for the model grid and orography netcdf +# FIXorog Directory for the model grid and orography netcdf # files. Defaults to $HOMEgfs/fix/orog # FIXWGTS Weight file to use for interpolation # EXECgfs Directory of the program executable. Defaults to @@ -83,9 +83,9 @@ # # programs : $GAUSFCANLEXE # -# fixed data : $FIXfv3/${CASE}/${CASE}_oro_data.tile*.nc -# $FIXWGTS -# $FIXam/global_hyblev.l65.txt +# fixed data : ${FIXorog}/${CASE}/${CASE}.mx${OCNRES}_oro_data.tile*.nc +# ${FIXWGTS} +# ${FIXam}/global_hyblev.l65.txt # # input data : ${COM_ATMOS_RESTART}/${PDY}.${cyc}0000.sfcanl_data.tile*.nc # @@ -126,9 +126,9 @@ gfs_ver=${gfs_ver:-v16.3.0} BASEDIR=${BASEDIR:-${PACKAGEROOT:-/lfs/h1/ops/prod/packages}} HOMEgfs=${HOMEgfs:-$BASEDIR/gfs.${gfs_ver}} EXECgfs=${EXECgfs:-$HOMEgfs/exec} -FIXfv3=${FIXfv3:-$HOMEgfs/fix/orog} +FIXorog=${FIXorog:-$HOMEgfs/fix/orog} FIXam=${FIXam:-$HOMEgfs/fix/am} -FIXWGTS=${FIXWGTS:-$FIXfv3/$CASE/fv3_SCRIP_${CASE}_GRIDSPEC_lon${LONB_SFC}_lat${LATB_SFC}.gaussian.neareststod.nc} +FIXWGTS=${FIXWGTS:-$FIXorog/$CASE/fv3_SCRIP_${CASE}_GRIDSPEC_lon${LONB_SFC}_lat${LATB_SFC}.gaussian.neareststod.nc} DATA=${DATA:-$(pwd)} # Filenames. @@ -176,7 +176,7 @@ ih=${cyc} export OMP_NUM_THREADS=${OMP_NUM_THREADS_SFC:-1} # input interpolation weights -$NLN $FIXWGTS ./weights.nc +${NLN} "${FIXWGTS}" "./weights.nc" # input analysis tiles (with nst records) ${NLN} "${COM_ATMOS_RESTART}/${PDY}.${cyc}0000.sfcanl_data.tile1.nc" "./anal.tile1.nc" @@ -187,14 +187,14 @@ ${NLN} "${COM_ATMOS_RESTART}/${PDY}.${cyc}0000.sfcanl_data.tile5.nc" "./anal.til ${NLN} "${COM_ATMOS_RESTART}/${PDY}.${cyc}0000.sfcanl_data.tile6.nc" "./anal.tile6.nc" # input orography tiles -$NLN $FIXfv3/$CASE/${CASE}_oro_data.tile1.nc ./orog.tile1.nc -$NLN $FIXfv3/$CASE/${CASE}_oro_data.tile2.nc ./orog.tile2.nc -$NLN $FIXfv3/$CASE/${CASE}_oro_data.tile3.nc ./orog.tile3.nc -$NLN $FIXfv3/$CASE/${CASE}_oro_data.tile4.nc ./orog.tile4.nc -$NLN $FIXfv3/$CASE/${CASE}_oro_data.tile5.nc ./orog.tile5.nc -$NLN $FIXfv3/$CASE/${CASE}_oro_data.tile6.nc ./orog.tile6.nc - -$NLN $SIGLEVEL ./vcoord.txt +${NLN} "${FIXorog}/${CASE}/${CASE}.mx${OCNRES}_oro_data.tile1.nc" "./orog.tile1.nc" +${NLN} "${FIXorog}/${CASE}/${CASE}.mx${OCNRES}_oro_data.tile2.nc" "./orog.tile2.nc" +${NLN} "${FIXorog}/${CASE}/${CASE}.mx${OCNRES}_oro_data.tile3.nc" "./orog.tile3.nc" +${NLN} "${FIXorog}/${CASE}/${CASE}.mx${OCNRES}_oro_data.tile4.nc" "./orog.tile4.nc" +${NLN} "${FIXorog}/${CASE}/${CASE}.mx${OCNRES}_oro_data.tile5.nc" "./orog.tile5.nc" +${NLN} "${FIXorog}/${CASE}/${CASE}.mx${OCNRES}_oro_data.tile6.nc" "./orog.tile6.nc" + +${NLN} "${SIGLEVEL}" "./vcoord.txt" # output gaussian global surface analysis files ${NLN} "${COM_ATMOS_ANALYSIS}/${APREFIX}sfcanl.nc" "./sfc.gaussian.analysis.file" diff --git a/ush/link_crtm_fix.sh b/ush/link_crtm_fix.sh index 0d4d8dc55b..61ac3f7870 100755 --- a/ush/link_crtm_fix.sh +++ b/ush/link_crtm_fix.sh @@ -4,16 +4,16 @@ source "$HOMEgfs/ush/preamble.sh" # Get CRTM fix directory from (in this order): # 1. First argument to script, or -# 2. $FIXCRTM environment variable, or +# 2. $CRTM_FIX environment variable, or # 3. Nowhere. Give up. Whine. -FIXCRTM="${1:-${FIXCRTM:-MISSING}}" +CRTM_FIX="${1:-${CRTM_FIX:-MISSING}}" -if [[ "$FIXCRTM" == "MISSING" ]] ; then +if [[ "${CRTM_FIX}" == "MISSING" ]] ; then echo "Please specify CRTM fix location. Giving up." 1>&2 exit 19 fi -if [[ ! -d "$FIXCRTM" ]] ; then - echo "$FIXCRTM: \$FIXCRTM is not a directory. Giving up." 1>&2 +if [[ ! -d "${CRTM_FIX}" ]] ; then + echo "${CRTM_FIX}: \${CRTM_FIX} is not a directory. Giving up." 1>&2 exit 38 fi @@ -22,16 +22,16 @@ for what in "amsre_aqua" "imgr_g11" "imgr_g12" "imgr_g13" \ "ssmi_f13" "ssmi_f14" "ssmi_f15" "ssmis_f16" \ "ssmis_f17" "ssmis_f18" "ssmis_f19" "ssmis_f20" \ "tmi_trmm" "v.seviri_m10" "imgr_insat3d" "abi_gr" "ahi_himawari8" ; do - ln -s "$FIXCRTM/$what.TauCoeff.bin" . - ln -s "$FIXCRTM/$what.SpcCoeff.bin" . + ln -s "${CRTM_FIX}/${what}.TauCoeff.bin" . + ln -s "${CRTM_FIX}/${what}.SpcCoeff.bin" . done for what in 'Aerosol' 'Cloud' ; do - ln -s "$FIXCRTM/${what}Coeff.bin" . + ln -s "${CRTM_FIX}/${what}Coeff.bin" . done -for what in $FIXCRTM/*Emis* ; do - ln -s $what . +for what in ${CRTM_FIX}/*Emis* ; do + ln -s ${what} . done exit 0 diff --git a/ush/python/pygfs/task/land_analysis.py b/ush/python/pygfs/task/land_analysis.py index 4bec65be5f..307e875183 100644 --- a/ush/python/pygfs/task/land_analysis.py +++ b/ush/python/pygfs/task/land_analysis.py @@ -153,7 +153,7 @@ def prepare_IMS(self) -> None: # create a temporary dict of all keys needed in this method localconf = AttrDict() keys = ['DATA', 'current_cycle', 'COM_OBS', 'COM_ATMOS_RESTART_PREV', - 'OPREFIX', 'CASE', 'ntiles'] + 'OPREFIX', 'CASE', 'OCNRES', 'ntiles'] for key in keys: localconf[key] = self.task_config[key] @@ -198,7 +198,7 @@ def prepare_IMS(self) -> None: raise WorkflowException(f"An error occured during execution of {exe}") # Ensure the snow depth IMS file is produced by the above executable - input_file = f"IMSscf.{to_YMD(localconf.current_cycle)}.{localconf.CASE}_oro_data.nc" + input_file = f"IMSscf.{to_YMD(localconf.current_cycle)}.{localconf.CASE}.mx{localconf.OCNRES}_oro_data.nc" if not os.path.isfile(f"{os.path.join(localconf.DATA, input_file)}"): logger.exception(f"{self.task_config.CALCFIMSEXE} failed to produce {input_file}") raise FileNotFoundError(f"{os.path.join(localconf.DATA, input_file)}") diff --git a/ush/syndat_qctropcy.sh b/ush/syndat_qctropcy.sh index aa98911820..cda9030577 100755 --- a/ush/syndat_qctropcy.sh +++ b/ush/syndat_qctropcy.sh @@ -46,7 +46,7 @@ # subsequent program SYNDAT_SYNDATA) # PARMSYND - path to syndat parm field directory # EXECSYND - path to syndat executable directory -# FIXSYND - path to syndat fix field directory +# FIXam - path to syndat fix field directory # USHSYND - path to syndat ush directory # Imported variables that can be passed in: @@ -59,7 +59,7 @@ # data base # (Default: /dcom/us007003) # slmask - path to t126 32-bit gaussian land/sea mask file -# (Default: $FIXSYND/syndat_slmask.t126.gaussian) +# (Default: $FIXam/syndat_slmask.t126.gaussian) # copy_back - switch to copy updated files back to archive directory and # to tcvitals directory # (Default: YES) @@ -74,12 +74,12 @@ HOMENHCp1=${HOMENHCp1:-/gpfs/?p1/nhc/save/guidance/storm-data/ncep} HOMENHC=${HOMENHC:-/gpfs/dell2/nhc/save/guidance/storm-data/ncep} TANK_TROPCY=${TANK_TROPCY:-${DCOMROOT}/us007003} -FIXSYND=${FIXSYND:-$HOMEgfs/fix/am} +FIXam=${FIXam:-$HOMEgfs/fix/am} USHSYND=${USHSYND:-$HOMEgfs/ush} EXECSYND=${EXECSYND:-$HOMEgfs/exec} PARMSYND=${PARMSYND:-$HOMEgfs/parm/relo} -slmask=${slmask:-$FIXSYND/syndat_slmask.t126.gaussian} +slmask=${slmask:-$FIXam/syndat_slmask.t126.gaussian} copy_back=${copy_back:-YES} files_override=${files_override:-""} @@ -190,10 +190,10 @@ fi echo " &INPUT RUNID = '${net}_${tmmark}_${cyc}', FILES = $files " > vitchk.inp cat $PARMSYND/syndat_qctropcy.${RUN}.parm >> vitchk.inp -# Copy the fixed fields from FIXSYND +# Copy the fixed fields from FIXam -cp $FIXSYND/syndat_fildef.vit fildef.vit -cp $FIXSYND/syndat_stmnames stmnames +cp $FIXam/syndat_fildef.vit fildef.vit +cp $FIXam/syndat_stmnames stmnames rm -f nhc fnoc lthistry diff --git a/versions/fix.ver b/versions/fix.ver index eb64f7b76f..a01e9d4151 100644 --- a/versions/fix.ver +++ b/versions/fix.ver @@ -14,7 +14,7 @@ export glwu_ver=20220805 export gsi_ver=20230911 export lut_ver=20220805 export mom6_ver=20220805 -export orog_ver=20230615 +export orog_ver=20231027 export reg2grb2_ver=20220805 export sfc_climo_ver=20220805 export ugwd_ver=20220805