-
Notifications
You must be signed in to change notification settings - Fork 177
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add in initial 3DVar aerosol DA cycling capability (#1106)
This PR adds an initial 3DVar aerosol DA cycling capability to support scientific development and testing towards an operationally viable candidate system for aerosol DA for GFSv17/GEFSv13. This PR includes the following: - Three new j-jobs and ex-scripts for aeroanlinit, aeroanlrun, and aeroanlfinal - modifies the rocoto scripts that call the above j-jobs to actually call them - makes modification to the config.resources and config.aeroanl files - Introduces an object-oriented python structure to initialize/finalize the aerosol analysis with the intention of eventually using the top-level classes for other analysis jobs (soca, atm, land) Closes #982
- Loading branch information
1 parent
cc54b8c
commit 1040216
Showing
24 changed files
with
804 additions
and
28 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
#! /usr/bin/env bash | ||
|
||
source "${HOMEgfs}/ush/preamble.sh" | ||
export WIPE_DATA="NO" | ||
export DATA=${DATA:-${DATAROOT}/${RUN}aeroanl_${cyc}} | ||
source "${HOMEgfs}/ush/jjob_header.sh" -e "aeroanlfinal" -c "base aeroanl aeroanlfinal" | ||
|
||
############################################## | ||
# Set variables used in the script | ||
############################################## | ||
export CDATE=${CDATE:-${PDY}${cyc}} | ||
export CDUMP=${CDUMP:-${RUN:-"gfs"}} | ||
|
||
|
||
############################################## | ||
# Begin JOB SPECIFIC work | ||
############################################## | ||
|
||
GDATE=$(date +%Y%m%d%H -d "${CDATE:0:8} ${CDATE:8:2} - ${assim_freq} hours") | ||
export GDATE | ||
gPDY=${GDATE:0:8} | ||
export gcyc=${GDATE:8:2} | ||
export GDUMP=${GDUMP:-"gdas"} | ||
|
||
export OPREFIX="${CDUMP}.t${cyc}z." | ||
export GPREFIX="${GDUMP}.t${gcyc}z." | ||
export APREFIX="${CDUMP}.t${cyc}z." | ||
|
||
export COMOUT=${COMOUT:-${ROTDIR}/${CDUMP}.${PDY}/${cyc}/chem} | ||
|
||
mkdir -p "${COMOUT}" | ||
|
||
# COMIN_GES and COMIN_GES_ENS are used in script | ||
export COMIN_GES="${ROTDIR}/${GDUMP}.${gPDY}/${gcyc}/chem" | ||
export COMIN_GES_ENS="${ROTDIR}/enkf${GDUMP}.${gPDY}/${gcyc}/chem" | ||
|
||
############################################################### | ||
# Run relevant script | ||
|
||
EXSCRIPT=${GDASAEROFINALPY:-${HOMEgfs}/scripts/exglobal_aero_analysis_finalize.py} | ||
${EXSCRIPT} | ||
status=$? | ||
[[ ${status} -ne 0 ]] && exit "${status}" | ||
|
||
############################################## | ||
# End JOB SPECIFIC work | ||
############################################## | ||
|
||
############################################## | ||
# Final processing | ||
############################################## | ||
if [[ -e "${pgmout}" ]] ; then | ||
cat "${pgmout}" | ||
fi | ||
|
||
########################################## | ||
# Remove the Temporary working directory | ||
########################################## | ||
cd "${DATAROOT}" || exit 1 | ||
[[ ${KEEPDATA} = "NO" ]] && rm -rf "${DATA}" | ||
|
||
exit 0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
#! /usr/bin/env bash | ||
|
||
source "${HOMEgfs}/ush/preamble.sh" | ||
export DATA=${DATA:-${DATAROOT}/${RUN}aeroanl_${cyc}} | ||
source "${HOMEgfs}/ush/jjob_header.sh" -e "aeroanlinit" -c "base aeroanl aeroanlinit" | ||
|
||
############################################## | ||
# Set variables used in the script | ||
############################################## | ||
export CDATE=${CDATE:-${PDY}${cyc}} | ||
export CDUMP=${CDUMP:-${RUN:-"gfs"}} | ||
|
||
|
||
############################################## | ||
# Begin JOB SPECIFIC work | ||
############################################## | ||
|
||
GDATE=$(date +%Y%m%d%H -d "${CDATE:0:8} ${CDATE:8:2} - ${assim_freq} hours") | ||
export GDATE | ||
gPDY=${GDATE:0:8} | ||
export gcyc=${GDATE:8:2} | ||
export GDUMP=${GDUMP:-"gdas"} | ||
|
||
export OPREFIX="${CDUMP}.t${cyc}z." | ||
export GPREFIX="${GDUMP}.t${gcyc}z." | ||
export APREFIX="${CDUMP}.t${cyc}z." | ||
|
||
export COMOUT=${COMOUT:-${ROTDIR}/${CDUMP}.${PDY}/${cyc}/chem} | ||
|
||
mkdir -p "${COMOUT}" | ||
|
||
# COMIN_GES and COMIN_GES_ENS are used in script | ||
export COMIN_GES="${ROTDIR}/${GDUMP}.${gPDY}/${gcyc}/chem" | ||
export COMIN_GES_ENS="${ROTDIR}/enkf${GDUMP}.${gPDY}/${gcyc}/chem" | ||
|
||
############################################################### | ||
# Run relevant script | ||
|
||
EXSCRIPT=${GDASAEROINITPY:-${HOMEgfs}/scripts/exglobal_aero_analysis_initialize.py} | ||
${EXSCRIPT} | ||
status=$? | ||
[[ ${status} -ne 0 ]] && exit "${status}" | ||
|
||
############################################## | ||
# End JOB SPECIFIC work | ||
############################################## | ||
|
||
############################################## | ||
# Final processing | ||
############################################## | ||
if [[ -e "${pgmout}" ]] ; then | ||
cat "${pgmout}" | ||
fi | ||
|
||
exit 0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
#! /usr/bin/env bash | ||
|
||
source "${HOMEgfs}/ush/preamble.sh" | ||
export WIPE_DATA="NO" | ||
export DATA=${DATA:-${DATAROOT}/${RUN}aeroanl_${cyc}} | ||
source "${HOMEgfs}/ush/jjob_header.sh" -e "aeroanlrun" -c "base aeroanl aeroanlrun" | ||
|
||
############################################## | ||
# Set variables used in the script | ||
############################################## | ||
export CDATE=${CDATE:-${PDY}${cyc}} | ||
export CDUMP=${CDUMP:-${RUN:-"gfs"}} | ||
|
||
|
||
############################################## | ||
# Begin JOB SPECIFIC work | ||
############################################## | ||
|
||
GDATE=$(date +%Y%m%d%H -d "${CDATE:0:8} ${CDATE:8:2} - ${assim_freq} hours") | ||
export GDATE | ||
gPDY=${GDATE:0:8} | ||
export gcyc=${GDATE:8:2} | ||
export GDUMP=${GDUMP:-"gdas"} | ||
|
||
export OPREFIX="${CDUMP}.t${cyc}z." | ||
export GPREFIX="${GDUMP}.t${gcyc}z." | ||
export APREFIX="${CDUMP}.t${cyc}z." | ||
|
||
export COMOUT=${COMOUT:-${ROTDIR}/${CDUMP}.${PDY}/${cyc}/chem} | ||
|
||
mkdir -p "${COMOUT}" | ||
|
||
# COMIN_GES and COMIN_GES_ENS are used in script | ||
export COMIN_GES="${ROTDIR}/${GDUMP}.${gPDY}/${gcyc}/chem" | ||
export COMIN_GES_ENS="${ROTDIR}/enkf${GDUMP}.${gPDY}/${gcyc}/chem" | ||
|
||
############################################################### | ||
# Run relevant script | ||
|
||
EXSCRIPT=${GDASAERORUNSH:-${HOMEgfs}/scripts/exglobal_aero_analysis_run.sh} | ||
${EXSCRIPT} | ||
status=$? | ||
[[ ${status} -ne 0 ]] && exit "${status}" | ||
|
||
############################################## | ||
# End JOB SPECIFIC work | ||
############################################## | ||
|
||
############################################## | ||
# Final processing | ||
############################################## | ||
if [[ -e "${pgmout}" ]] ; then | ||
cat "${pgmout}" | ||
fi | ||
|
||
exit 0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,15 +1,23 @@ | ||
#! /usr/bin/env bash | ||
|
||
source "$HOMEgfs/ush/preamble.sh" | ||
source "${HOMEgfs}/ush/preamble.sh" | ||
|
||
############################################################### | ||
# Source FV3GFS workflow modules | ||
. $HOMEgfs/ush/load_fv3gfs_modules.sh | ||
# Source UFSDA workflow modules | ||
. "${HOMEgfs}/ush/load_ufsda_modules.sh" | ||
status=$? | ||
[[ $status -ne 0 ]] && exit $status | ||
[[ ${status} -ne 0 ]] && exit "${status}" | ||
|
||
export job="aeroanlfinal" | ||
export jobid="${job}.$$" | ||
|
||
############################################################### | ||
echo "Do nothing for now" | ||
# setup python path for workflow utilities and tasks | ||
pygwPATH="${HOMEgfs}/ush/python:${HOMEgfs}/ush/python/pygw/src" | ||
PYTHONPATH="${PYTHONPATH:+${PYTHONPATH}:}${pygwPATH}" | ||
export PYTHONPATH | ||
############################################################### | ||
# Execute the JJOB | ||
"${HOMEgfs}/jobs/JGLOBAL_AERO_ANALYSIS_FINALIZE" | ||
status=$? | ||
exit "${status}" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,15 +1,24 @@ | ||
#! /usr/bin/env bash | ||
|
||
source "$HOMEgfs/ush/preamble.sh" | ||
source "${HOMEgfs}/ush/preamble.sh" | ||
|
||
############################################################### | ||
# Source FV3GFS workflow modules | ||
. $HOMEgfs/ush/load_fv3gfs_modules.sh | ||
# Source UFSDA workflow modules | ||
. "${HOMEgfs}/ush/load_ufsda_modules.sh" | ||
status=$? | ||
[[ $status -ne 0 ]] && exit $status | ||
[[ ${status} -ne 0 ]] && exit "${status}" | ||
|
||
export job="aeroanlinit" | ||
export jobid="${job}.$$" | ||
|
||
############################################################### | ||
echo "Do nothing for now" | ||
# setup python path for workflow utilities and tasks | ||
pygwPATH="${HOMEgfs}/ush/python:${HOMEgfs}/ush/python/pygw/src" | ||
PYTHONPATH="${PYTHONPATH:+${PYTHONPATH}:}${pygwPATH}" | ||
export PYTHONPATH | ||
|
||
############################################################### | ||
# Execute the JJOB | ||
"${HOMEgfs}/jobs/JGLOBAL_AERO_ANALYSIS_INITIALIZE" | ||
status=$? | ||
exit "${status}" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,15 +1,18 @@ | ||
#! /usr/bin/env bash | ||
|
||
source "$HOMEgfs/ush/preamble.sh" | ||
source "${HOMEgfs}/ush/preamble.sh" | ||
|
||
############################################################### | ||
# Source FV3GFS workflow modules | ||
. $HOMEgfs/ush/load_fv3gfs_modules.sh | ||
# Source UFSDA workflow modules | ||
. "${HOMEgfs}/ush/load_ufsda_modules.sh" | ||
status=$? | ||
[[ $status -ne 0 ]] && exit $status | ||
[[ ${status} -ne 0 ]] && exit "${status}" | ||
|
||
export job="aeroanlrun" | ||
export jobid="${job}.$$" | ||
|
||
############################################################### | ||
echo "Do nothing for now" | ||
# Execute the JJOB | ||
"${HOMEgfs}/jobs/JGLOBAL_AERO_ANALYSIS_RUN" | ||
status=$? | ||
exit "${status}" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
mkdir: | ||
- !ENV ${DATA}/crtm/ | ||
copy: | ||
- - !ENV ${FV3JEDI_FIX}/crtm/${CRTM_VER}/AerosolCoeff.bin | ||
- !ENV ${DATA}/crtm/AerosolCoeff.bin | ||
- - !ENV ${FV3JEDI_FIX}/crtm/${CRTM_VER}/CloudCoeff.bin | ||
- !ENV ${DATA}/crtm/CloudCoeff.bin | ||
- - !ENV ${FV3JEDI_FIX}/crtm/${CRTM_VER}/v.viirs-m_npp.SpcCoeff.bin | ||
- !ENV ${DATA}/crtm/v.viirs-m_npp.SpcCoeff.bin | ||
- - !ENV ${FV3JEDI_FIX}/crtm/${CRTM_VER}/v.viirs-m_npp.TauCoeff.bin | ||
- !ENV ${DATA}/crtm/v.viirs-m_npp.TauCoeff.bin | ||
- - !ENV ${FV3JEDI_FIX}/crtm/${CRTM_VER}/v.viirs-m_j1.SpcCoeff.bin | ||
- !ENV ${DATA}/crtm/v.viirs-m_j1.SpcCoeff.bin | ||
- - !ENV ${FV3JEDI_FIX}/crtm/${CRTM_VER}/v.viirs-m_j1.TauCoeff.bin | ||
- !ENV ${DATA}/crtm/v.viirs-m_j1.TauCoeff.bin | ||
- - !ENV ${FV3JEDI_FIX}/crtm/${CRTM_VER}/NPOESS.VISice.EmisCoeff.bin | ||
- !ENV ${DATA}/crtm/NPOESS.VISice.EmisCoeff.bin | ||
- - !ENV ${FV3JEDI_FIX}/crtm/${CRTM_VER}/NPOESS.VISland.EmisCoeff.bin | ||
- !ENV ${DATA}/crtm/NPOESS.VISland.EmisCoeff.bin | ||
- - !ENV ${FV3JEDI_FIX}/crtm/${CRTM_VER}/NPOESS.VISsnow.EmisCoeff.bin | ||
- !ENV ${DATA}/crtm/NPOESS.VISsnow.EmisCoeff.bin | ||
- - !ENV ${FV3JEDI_FIX}/crtm/${CRTM_VER}/NPOESS.VISwater.EmisCoeff.bin | ||
- !ENV ${DATA}/crtm/NPOESS.VISwater.EmisCoeff.bin |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
mkdir: | ||
- !ENV ${DATA}/fv3jedi | ||
copy: | ||
- - !ENV ${FV3JEDI_FIX}/fv3jedi/fv3files/akbk$(npz).nc4 | ||
- !ENV ${DATA}/fv3jedi/akbk.nc4 | ||
- - !ENV ${FV3JEDI_FIX}/fv3jedi/fv3files/fmsmpp.nml | ||
- !ENV ${DATA}/fv3jedi/fmsmpp.nml | ||
- - !ENV ${FV3JEDI_FIX}/fv3jedi/fv3files/field_table_gfdl | ||
- !ENV ${DATA}/fv3jedi/field_table | ||
- - !ENV ${FV3JEDI_FIX}/fv3jedi/fieldmetadata/gfs-aerosol.yaml | ||
- !ENV ${DATA}/fv3jedi/gfs-restart.yaml |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
['dust1', 'dust2', 'dust3', 'dust4', 'dust5', 'seas1', 'seas2', 'seas3', 'seas4', 'so4', 'oc1', 'oc2', 'bc1', 'bc2'] |
Oops, something went wrong.