Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cycling on native grid and create JEDI-based analysis calc job #2949

Closed
wants to merge 94 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
94 commits
Select commit Hold shift + click to select a range
36d9e2a
Initial commit
DavidNew-NOAA Sep 8, 2024
3ac6a0e
Update gdas hash
DavidNew-NOAA Sep 8, 2024
e56126d
Update GDAS hash
DavidNew-NOAA Sep 8, 2024
5436a6b
Fix typo
DavidNew-NOAA Sep 9, 2024
b5e231a
Saving progress
DavidNew-NOAA Sep 9, 2024
777641a
Update
DavidNew-NOAA Sep 11, 2024
86b6ad4
Merge
DavidNew-NOAA Sep 11, 2024
42122d3
Initial commit
DavidNew-NOAA Sep 11, 2024
26d365b
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Sep 11, 2024
653453f
Update gdas hash
DavidNew-NOAA Sep 11, 2024
8333e32
Update GDAS hash and namelist to read increment on native grid
DavidNew-NOAA Sep 11, 2024
292b55a
Saving progress
DavidNew-NOAA Sep 11, 2024
bfc06c2
Update GDAS hash
DavidNew-NOAA Sep 11, 2024
dc59de4
Update GDAS hash
DavidNew-NOAA Sep 11, 2024
13e35d0
Update GDAS hash
DavidNew-NOAA Sep 11, 2024
ac8d31d
Update GDAS hash
DavidNew-NOAA Sep 11, 2024
84723c8
Update GDAS hash and update finalize jobs in atmanl and atmensanl
DavidNew-NOAA Sep 12, 2024
09bf586
Merge branch 'develop' into feature/cubeinc
DavidNew-NOAA Sep 12, 2024
61d201a
pynorms
DavidNew-NOAA Sep 12, 2024
1de0c62
Update GDAS hash
DavidNew-NOAA Sep 12, 2024
19e6f1c
Update GDAS hash
DavidNew-NOAA Sep 12, 2024
1a21af0
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Sep 12, 2024
89e8dd4
pynorms
DavidNew-NOAA Sep 12, 2024
f123d9a
Stage multifile (FMS) increments and update GDAS hash
DavidNew-NOAA Sep 13, 2024
0430bef
Update GDAS hash
DavidNew-NOAA Sep 13, 2024
ad27e15
Update GDAS hash
DavidNew-NOAA Sep 11, 2024
07d1fff
Update GDAS hash and update finalize jobs in atmanl and atmensanl
DavidNew-NOAA Sep 12, 2024
01166d7
Add new UPP links to .gitignore (#2904)
DavidHuber-NOAA Sep 12, 2024
3805262
pynorms
DavidNew-NOAA Sep 12, 2024
c9f40d3
Stage multifile (FMS) increments and update GDAS hash
DavidNew-NOAA Sep 13, 2024
dc4cf6e
Update GDAS hash
DavidNew-NOAA Sep 13, 2024
fa71bf4
Merge branch 'feature/cubeinc' of https://github.com/DavidNew-NOAA/gl…
DavidNew-NOAA Sep 13, 2024
7f2327b
Fix bug and update GDAS hash
DavidNew-NOAA Sep 13, 2024
2d9b9b6
Update gdas hash and update calcanl.py
DavidNew-NOAA Sep 13, 2024
e832805
Merge branch 'feature/cubeinc' into feature/calcanl
DavidNew-NOAA Sep 13, 2024
509742d
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Sep 13, 2024
9a95e54
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Sep 16, 2024
93076f5
Update UFS hash
DavidNew-NOAA Sep 16, 2024
eaaf1fd
Update
DavidNew-NOAA Sep 17, 2024
e99729e
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Sep 17, 2024
0f419a0
Update GDAS hash and save progress on calcanl.py
DavidNew-NOAA Sep 17, 2024
31cea06
Update
DavidNew-NOAA Sep 18, 2024
8af11f2
Update GDASApp hash
DavidNew-NOAA Sep 19, 2024
bd6afc2
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Sep 19, 2024
f3d3449
Update
DavidNew-NOAA Sep 23, 2024
4001249
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Sep 23, 2024
21b10da
pynorms
DavidNew-NOAA Sep 23, 2024
02b27b9
Add comment blocks to calcanl.py methods
DavidNew-NOAA Sep 23, 2024
dd6c182
pynorms
DavidNew-NOAA Sep 23, 2024
1b12887
Fix indentation error and allocate more appropriate resources for job
DavidNew-NOAA Sep 23, 2024
2932cc2
Shell norms
DavidNew-NOAA Sep 23, 2024
0eaa63d
Rename some stuff
DavidNew-NOAA Sep 23, 2024
693e6d1
Rename some stuff per comment from Rahul
DavidNew-NOAA Sep 23, 2024
dff1e59
Missed renaming of some things
DavidNew-NOAA Sep 23, 2024
24f5029
Update GDASApp hash
DavidNew-NOAA Sep 23, 2024
6aa3b96
Update analcalc name in two more corners of the GW
DavidNew-NOAA Sep 23, 2024
65f66f4
Shell norms and update UFS hash
DavidNew-NOAA Sep 23, 2024
dd84949
Fix job dependencies bug
DavidNew-NOAA Sep 24, 2024
1973c7d
Merge branch 'develop' into feature/calcanl
aerorahul Sep 25, 2024
76558a1
Update GDAS hash
DavidNew-NOAA Sep 25, 2024
ca82795
Have ensemble write native grid AND Gaussian grid increments temporar…
DavidNew-NOAA Sep 25, 2024
a0fc4b9
Fix bug from last commit
DavidNew-NOAA Sep 25, 2024
947f735
Hopefully final bug fix
DavidNew-NOAA Sep 26, 2024
b28ad28
Revert some stuff
DavidNew-NOAA Sep 26, 2024
0086604
Minor cleanup
DavidNew-NOAA Sep 26, 2024
2fbca1f
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Sep 26, 2024
21dc72e
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Sep 27, 2024
f1e5ed5
Update GDAS hash
DavidNew-NOAA Sep 27, 2024
c05d7a8
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Oct 2, 2024
f517dfa
Update hashes
DavidNew-NOAA Oct 2, 2024
b9d8338
Update GDAS hash
DavidNew-NOAA Oct 2, 2024
5a65800
Update GDAS hash
DavidNew-NOAA Oct 4, 2024
0b84843
Remove ges.sfc background file
DavidNew-NOAA Oct 7, 2024
a7abdfb
pynorms
DavidNew-NOAA Oct 7, 2024
c523110
Update GDAS hash
DavidNew-NOAA Oct 7, 2024
ae0ae95
Account for warm start in forecast_postdet.sh
DavidNew-NOAA Oct 8, 2024
ac31f23
Update GDAS hash
DavidNew-NOAA Oct 8, 2024
7aedb17
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Oct 8, 2024
b5c9b19
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Oct 9, 2024
ea41690
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Oct 10, 2024
e7fcafd
Update GDAS hash
DavidNew-NOAA Oct 13, 2024
a6e93c1
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Oct 13, 2024
f584fc2
Update GDAS hash
DavidNew-NOAA Oct 22, 2024
7ff09f6
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Oct 22, 2024
003b7c1
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Oct 24, 2024
2f96c52
Update GDAS hash
DavidNew-NOAA Oct 24, 2024
1901cdd
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Oct 28, 2024
f7957f8
Update GDAS hash
DavidNew-NOAA Oct 28, 2024
c4d282b
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Nov 1, 2024
8bd5166
Update GDAS hash
DavidNew-NOAA Nov 1, 2024
ef1673f
Update GDAS hash
DavidNew-NOAA Nov 1, 2024
d1874dc
Update GDAS hash
DavidNew-NOAA Nov 3, 2024
48fe14b
Merge branch 'develop' into feature/calcanl
DavidNew-NOAA Nov 3, 2024
18a8024
Update gdas hash
DavidNew-NOAA Nov 7, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/source/jobs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ Jobs in the GFS Configuration
| anal | Runs the analysis. 1) Runs the atmospheric analysis (global_gsi) to produce analysis increments; 2) Update surface |
| | guess file via global_cycle to create surface analysis on tiles. |
+-------------------+-----------------------------------------------------------------------------------------------------------------------+
| analcalc | Adds the analysis increments to previous cycle’s forecasts to produce atmospheric analysis files. Produces surface |
| analcalc_gsi | Adds the analysis increments to previous cycle’s forecasts to produce atmospheric analysis files. Produces surface |
| | analysis file on Gaussian grid. |
+-------------------+-----------------------------------------------------------------------------------------------------------------------+
| analdiag | Creates netCDF diagnostic files containing observation values, innovation (O-F), error, quality control, as well as |
Expand Down
2 changes: 1 addition & 1 deletion env/GAEA.env
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ if [[ "${step}" = "prep" ]]; then
export sys_tp="GAEA"
export launcher_PREP="srun"

elif [[ "${step}" = "anal" ]] || [[ "${step}" = "analcalc" ]]; then
elif [[ "${step}" = "anal" ]] || [[ "${step}" = "analcalc_gsi" ]]; then

export MKL_NUM_THREADS=4
export MKL_CBWR=AUTO
Expand Down
7 changes: 6 additions & 1 deletion env/HERA.env
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,12 @@ elif [[ "${step}" = "marineanlletkf" ]]; then
export NTHREADS_MARINEANLLETKF=${NTHREADSmax}
export APRUN_MARINEANLLETKF=${APRUN_default}

elif [[ "${step}" = "anal" ]] || [[ "${step}" = "analcalc" ]]; then
elif [[ "${step}" = "analcalc_fv3jedi" ]]; then

export NTHREADS_ANALCALC_FV3JEDI=${NTHREADSmax}
export APRUN_ANALCALC_FV3JEDI="${APRUN_default} --cpus-per-task=${NTHREADS_ANALCALC_FV3JEDI}"

elif [[ "${step}" = "anal" ]] || [[ "${step}" = "analcalc_gsi" ]]; then

export MKL_NUM_THREADS=4
export MKL_CBWR=AUTO
Expand Down
9 changes: 7 additions & 2 deletions env/HERCULES.env
Original file line number Diff line number Diff line change
Expand Up @@ -154,8 +154,13 @@ case ${step} in

export NTHREADS_OCNANAL=${NTHREADSmax}
export APRUN_MARINEANLCHKPT="${APRUN_default} --cpus-per-task=${NTHREADS_OCNANAL}"
;;
"anal" | "analcalc")
;;
"analcalc_fv3jedi")

export NTHREADS_ANALCALC_FV3JEDI=${NTHREADSmax}
export APRUN_ANALCALC_FV3JEDI="${APRUN_default} --cpus-per-task=${NTHREADS_ANALCALC_FV3JEDI}"
;;
"anal" | "analcalc_gsi")

export MKL_NUM_THREADS=4
export MKL_CBWR=AUTO
Expand Down
7 changes: 6 additions & 1 deletion env/JET.env
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,12 @@ elif [[ "${step}" = "marineanlvar" ]]; then
export APRUNCFP="${launcher} -n \$ncmd ${mpmd_opt}"
export APRUN_MARINEANLVAR="${APRUN_default}"

elif [[ "${step}" = "anal" ]] || [[ "${step}" = "analcalc" ]]; then
elif [[ "${step}" = "analcalc_fv3jedi" ]]; then

export NTHREADS_ANALCALC_FV3JEDI=${NTHREADSmax}
export APRUN_ANALCALC_FV3JEDI="${APRUN_default}"

elif [[ "${step}" = "anal" ]] || [[ "${step}" = "analcalc_gsi" ]]; then

export MKL_NUM_THREADS=4
export MKL_CBWR=AUTO
Expand Down
7 changes: 6 additions & 1 deletion env/ORION.env
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,12 @@ elif [[ "${step}" = "marineanlletkf" ]]; then
export NTHREADS_MARINEANLLETKF=${NTHREADSmax}
export APRUN_MARINEANLLETKF="${APRUN_default}"

elif [[ "${step}" = "anal" ]] || [[ "${step}" = "analcalc" ]]; then
elif [[ "${step}" = "analcalc_fv3jedi" ]]; then

export NTHREADS_ANALCALC_FV3JEDI=${NTHREADSmax}
export APRUN_ANALCALC_FV3JEDI="${APRUN_default} --cpus-per-task=${NTHREADS_ANALCALC_FV3JEDI}"

elif [[ "${step}" = "anal" ]] || [[ "${step}" = "analcalc_gsi" ]]; then

export MKL_NUM_THREADS=4
export MKL_CBWR=AUTO
Expand Down
7 changes: 6 additions & 1 deletion env/S4.env
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,12 @@ elif [[ "${step}" = "marinebmat" ]]; then
elif [[ "${step}" = "marinerun" ]]; then
echo "WARNING: ${step} is not enabled on S4!"

elif [[ "${step}" = "anal" ]] || [[ "${step}" = "analcalc" ]]; then
elif [[ "${step}" = "analcalc_fv3jedi" ]]; then

export NTHREADS_ANALCALC_FV3JEDI=${NTHREADSmax}
export APRUN_ANALCALC_FV3JEDI="${APRUN_default}"

elif [[ "${step}" = "anal" ]] || [[ "${step}" = "analcalc_gsi" ]]; then

export MKL_NUM_THREADS=4
export MKL_CBWR=AUTO
Expand Down
9 changes: 7 additions & 2 deletions env/WCOSS2.env
Original file line number Diff line number Diff line change
Expand Up @@ -136,13 +136,18 @@ elif [[ "${step}" = "atmanlfv3inc" ]]; then
export NTHREADS_ATMANLFV3INC=${NTHREADSmax}
export APRUN_ATMANLFV3INC="${APRUN_default}"

elif [[ "${step}" = "anal" ]] || [[ "${step}" = "analcalc" ]]; then
elif [[ "${step}" = "analcalc_fv3jedi" ]]; then

export NTHREADS_ANALCALC_FV3JEDI=${NTHREADSmax}
export APRUN_ANALCALC_FV3JEDI="${APRUN_default}"

elif [[ "${step}" = "anal" ]] || [[ "${step}" = "analcalc_gsi" ]]; then

export OMP_PLACES=cores
export OMP_STACKSIZE=1G
export FI_OFI_RXM_SAR_LIMIT=3145728

if [[ "${step}" = "analcalc" ]]; then
if [[ "${step}" = "analcalc_gsi" ]]; then
export MPICH_MPIIO_HINTS="*:romio_cb_write=disable"
fi

Expand Down
55 changes: 55 additions & 0 deletions jobs/JGLOBAL_ATMOS_ANALYSIS_CALC_FV3JEDI
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
#! /usr/bin/env bash

source "${HOMEgfs}/ush/preamble.sh"
source "${HOMEgfs}/ush/jjob_header.sh" -e "analcalc_fv3jedi" -c "base analcalc_fv3jedi"

##############################################
# Set variables used in the script
##############################################

GDATE=$(date --utc +%Y%m%d%H -d "${PDY} ${cyc} - ${assim_freq} hours")

Check notice

Code scanning / shellcheck

Possible misspelling: PDY may not be assigned. Did you mean gPDY? Note

Possible misspelling: PDY may not be assigned. Did you mean gPDY?
gPDY=${GDATE:0:8}
gcyc=${GDATE:8:2}
GDUMP="gdas"

##############################################
# Begin JOB SPECIFIC work
##############################################

# Generate COM variables from templates
YMD=${PDY} HH=${cyc} declare_from_tmpl -rx \
COM_ATMOS_ANALYSIS
RUN=${GDUMP} YMD=${gPDY} HH=${gcyc} declare_from_tmpl -rx \
COM_ATMOS_HISTORY_PREV:COM_ATMOS_HISTORY_TMPL

##############################################
# Run relevant script
##############################################

EXSCRIPT=${GDASATMRUNSH:-${SCRgfs}/exglobal_atmos_analysis_calc_fv3jedi.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}" || ( echo "FATAL ERROR: ${DATAROOT} does not exist, ABORT!"; exit 1 )
if [[ ${KEEPDATA} = "NO" ]]; then
rm -rf "${DATA}"
fi

exit 0
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#! /usr/bin/env bash

source "${HOMEgfs}/ush/preamble.sh"
source "${HOMEgfs}/ush/jjob_header.sh" -e "analcalc" -c "base anal analcalc"
source "${HOMEgfs}/ush/jjob_header.sh" -e "analcalc_gsi" -c "base anal analcalc_gsi"


##############################################
Expand Down Expand Up @@ -56,7 +56,7 @@ export DOGAUSFCANL=${DOGAUSFCANL:-"YES"}
###############################################################
# Run relevant script

${ANALCALCSH:-${SCRgfs}/exglobal_atmos_analysis_calc.sh}
${ANALCALCSH:-${SCRgfs}/exglobal_atmos_analysis_calc_gsi.sh}
status=$?
[[ ${status} -ne 0 ]] && exit ${status}

Expand Down
18 changes: 18 additions & 0 deletions jobs/rocoto/analcalc_fv3jedi.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#! /usr/bin/env bash

source "${HOMEgfs}/ush/preamble.sh"

###############################################################
# Source UFSDA workflow modules
. "${HOMEgfs}/ush/load_ufsda_modules.sh"
status=$?
[[ ${status} -ne 0 ]] && exit "${status}"

export job="analcalc_fv3jedi"
export jobid="${job}.$$"

###############################################################
# Execute the JJOB
"${HOMEgfs}"/jobs/JGLOBAL_ATMOS_ANALYSIS_CALC_FV3JEDI
status=$?
exit "${status}"
Fixed Show fixed Hide fixed
Fixed Show fixed Hide fixed
4 changes: 2 additions & 2 deletions jobs/rocoto/analcalc.sh → jobs/rocoto/analcalc_gsi.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@ source "${HOMEgfs}/ush/preamble.sh"
status=$?
[[ ${status} -ne 0 ]] && exit ${status}

export job="analcalc"
export job="analcalc_gsi"
export jobid="${job}.$$"

###############################################################
# Execute the JJOB
${HOMEgfs}/jobs/JGLOBAL_ATMOS_ANALYSIS_CALC
"${HOMEgfs}"/jobs/JGLOBAL_ATMOS_ANALYSIS_CALC_GSI
status=$?


Expand Down
11 changes: 0 additions & 11 deletions parm/config/gfs/config.analcalc

This file was deleted.

26 changes: 26 additions & 0 deletions parm/config/gfs/config.analcalc_fv3jedi
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
#! /usr/bin/env bash

########## config.analcalc_fv3jedi ##########
# Diagnostic amospheric analysis calculation specific

echo "BEGIN: config.analcalc_fv3jedi"

export layout_x_analcalc_fv3jedi=2
export layout_y_analcalc_fv3jedi=2

# Get task specific resources
. "${EXPDIR}/config.resources" analcalc_fv3jedi

export JCB_BASE_YAML=${PARMgfs}/gdas/atm/jcb-base.yaml.j2
export JCB_ALGO=fv3jedi_analcalc
export JEDIEXE=${EXECgfs}/fv3jedi_analcalc.x

if [[ ${DOHYBVAR} = "YES" ]]; then
export CASE_ANL=${CASE_ENS}

Check notice

Code scanning / shellcheck

Possible misspelling: CASE_ENS may not be assigned. Did you mean CASE_ANL? Note

Possible misspelling: CASE_ENS may not be assigned. Did you mean CASE_ANL?
else
export CASE_ANL=${CASE}
fi

export JEDI_FIX_YAML="${PARMgfs}/gdas/atm_jedi_fix.yaml.j2"

echo "END: config.analcalc_fv3jedi"
11 changes: 11 additions & 0 deletions parm/config/gfs/config.analcalc_gsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
#! /usr/bin/env bash

########## config.analcalc_gsi ##########
# GFS post-anal specific (non-diag)

echo "BEGIN: config.analcalc_gsi"

# Get task specific resources
. "${EXPDIR}"/config.resources analcalc_gsi

echo "END: config.analcalc_gsi"
15 changes: 13 additions & 2 deletions parm/config/gfs/config.resources
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ if (( $# != 1 )); then
echo "atmensanlinit atmensanlobs atmensanlsol atmensanlletkf atmensanlfv3inc atmensanlfinal"
echo "snowanl esnowrecen"
echo "prepobsaero aeroanlinit aeroanlvar aeroanlfinal aeroanlgenb"
echo "anal sfcanl analcalc analdiag fcst echgres"
echo "anal sfcanl analcalc_fv3jedi analcalc_gsi analdiag fcst echgres"
echo "upp atmos_products"
echo "tracker genesis genesis_fsu"
echo "verfozn verfrad vminmon fit2obs metp arch cleanup"
Expand Down Expand Up @@ -701,7 +701,18 @@ case ${step} in
export is_exclusive=True
;;

"analcalc")
"analcalc_fv3jedi")
export layout_x=${layout_x_analcalc_fv3jedi}
export layout_y=${layout_y_analcalc_fv3jedi}

walltime="00:15:00"
ntasks=$(( layout_x * layout_y * 6 ))
threads_per_task=1
tasks_per_node=$(( max_tasks_per_node / threads_per_task ))
export is_exclusive=True
;;

"analcalc_gsi")
walltime="00:15:00"
ntasks=127
export ntasks_calcanl="${ntasks}"
Expand Down
31 changes: 31 additions & 0 deletions scripts/exglobal_atmos_analysis_calc_fv3jedi.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
#!/usr/bin/env python3
# exglobal_atm_calc_analysis.py
# This script creates an AnalysisCalc object
# and runs the execute method which executes
# the diagnostic global analysis calculation
import os

from wxflow import Logger, cast_strdict_as_dtypedict
from pygfs.task.analcalc import AnalysisCalc

# Initialize root logger
logger = Logger(level='DEBUG', colored_log=True)


if __name__ == '__main__':

# Take configuration from environment and cast it as python dictionary
config = cast_strdict_as_dtypedict(os.environ)

# Instantiate the AnalysisCalc task
AnalCalc = AnalysisCalc(config, 'fv3jedi_analcalc')

# Initialize
AnalCalc.initialize_jedi()
AnalCalc.initialize()

# Execute JEDI application
AnalCalc.execute(config.APRUN_ANALCALC_FV3JEDI)

# Finalize
AnalCalc.finalize()
2 changes: 1 addition & 1 deletion sorc/gdas.cd
Submodule gdas.cd updated 64 files
+4 −4 .gitmodules
+7 −9 build.sh
+1 −1 mains/gdas.cc
+7 −6 modulefiles/GDAS/gaeac5.intel.lua
+136 −0 parm/aero/jcb-base.yaml.j2
+10 −0 parm/aero/jcb-prototype_3dvar.yaml.j2
+20 −3 parm/atm/jcb-base.yaml.j2
+3 −2 parm/atm/jcb-prototype_3dvar.yaml.j2
+2 −2 parm/atm/jcb-prototype_lgetkf.yaml.j2
+2 −2 parm/atm/jcb-prototype_lgetkf_observer.yaml.j2
+2 −2 parm/atm/jcb-prototype_lgetkf_solver.yaml.j2
+0 −1 parm/io/fv3jedi_fieldmetadata_fv3inc.yaml
+1 −1 parm/io/fv3jedi_fieldmetadata_restart.yaml
+16 −0 parm/ioda/bufr2ioda/bufr2ioda_gsrcsr.json
+1 −1 parm/ioda/bufr2ioda/bufr2ioda_iasi.yaml
+1 −1 parm/jcb-algorithms
+1 −1 parm/jcb-gdas
+0 −37 parm/soca/berror/soca_diagb.yaml.j2
+0 −98 parm/soca/berror/soca_ensb.yaml.j2
+0 −37 parm/soca/berror/soca_ensweights.yaml.j2
+0 −37 parm/soca/berror/soca_parameters_diffusion_hz.yaml.j2
+0 −33 parm/soca/berror/soca_parameters_diffusion_vt.yaml.j2
+0 −23 parm/soca/berror/soca_setcorscales.yaml
+0 −13 parm/soca/berror/soca_vtscales.yaml.j2
+3 −4 parm/soca/ensda/stage_ens_mem.yaml.j2
+0 −5 parm/soca/gridgen/gridgen.yaml
+15 −14 parm/soca/letkf/letkf.yaml.j2
+20 −0 parm/soca/letkf/letkf_save.yaml.j2
+24 −5 parm/soca/letkf/letkf_stage.yaml.j2
+6 −3 parm/soca/marine-jcb-base.yaml
+7 −0 parm/soca/obs/config/adt_rads_all.yaml
+7 −0 parm/soca/obs/config/icec_amsr2_north.yaml
+7 −0 parm/soca/obs/config/icec_amsr2_south.yaml
+7 −0 parm/soca/obs/config/insitu_profile_argo.yaml
+7 −0 parm/soca/obs/config/sst_abi_g16_l3c.yaml
+7 −0 parm/soca/obs/config/sst_abi_g17_l3c.yaml
+7 −0 parm/soca/obs/config/sst_ahi_h08_l3c.yaml
+7 −0 parm/soca/obs/config/sst_avhrr_ma_l3u.yaml
+7 −0 parm/soca/obs/config/sst_avhrr_mb_l3u.yaml
+7 −0 parm/soca/obs/config/sst_avhrr_mc_l3u.yaml
+7 −0 parm/soca/obs/config/sst_viirs_n20_l3u.yaml
+7 −0 parm/soca/obs/config/sst_viirs_npp_l3u.yaml
+3 −3 parm/soca/soca_ens_bkg_stage.yaml.j2
+0 −1 parm/soca/soca_fix_stage_025.yaml.j2
+0 −1 parm/soca/soca_fix_stage_100.yaml.j2
+0 −2 parm/soca/soca_fix_stage_500.yaml.j2
+0 −1 parm/soca/soca_utils_stage.yaml.j2
+1 −1 sorc/fv3-jedi
+1 −1 sorc/saber
+2 −7 test/atm/global-workflow/config.yaml
+2 −2 test/atm/global-workflow/setup_workflow_exp.sh
+42 −3 test/gw-ci/CMakeLists.txt
+14 −8 test/marine/CMakeLists.txt
+8 −5 ush/detect_machine.sh
+555 −0 ush/ioda/bufr2ioda/bufr2ioda_gsrcsr.py
+14 −0 ush/ioda/bufr2ioda/marine/b2i/b2iconverter/bufr2ioda_converter.py
+23 −0 ush/ioda/bufr2ioda/marine/b2i/b2iconverter/ioda_variables.py
+0 −61 ush/ioda/bufr2ioda/marine/b2i/b2iconverter/ocean.py
+0 −2 ush/soca/marine_recenter.py
+2 −2 ush/soca/prep_ocean_obs.py
+6 −0 utils/fv3jedi/CMakeLists.txt
+8 −0 utils/fv3jedi/fv3jedi_analcalc.cc
+105 −0 utils/fv3jedi/fv3jedi_analcalc.h
+1 −1 utils/fv3jedi/fv3jedi_fv3inc.h
1 change: 1 addition & 0 deletions sorc/link_workflow.sh
Original file line number Diff line number Diff line change
Expand Up @@ -349,6 +349,7 @@ if [[ -d "${HOMEgfs}/sorc/gdas.cd/build" ]]; then
"fv3jedi_plot_field.x" \
"gdasapp_chem_diagb.x" \
"fv3jedi_fv3inc.x" \
"fv3jedi_analcalc.x" \
"gdas_ens_handler.x" \
"gdas_incr_handler.x" \
"gdas_obsprovider2ioda.x" \
Expand Down
21 changes: 17 additions & 4 deletions ush/forecast_postdet.sh
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,7 @@ FV3_postdet() {
read_increment=".true."
res_latlon_dynamics="atminc.nc"
fi
increment_file_on_native_grid=".false."
local increment_file
for inc_file in "${inc_files[@]}"; do
increment_file="${COMIN_ATMOS_INPUT}/${RUN}.t${cyc}z.${inc_file}"
Expand Down Expand Up @@ -158,9 +159,16 @@ EOF
delimiter=","
done
else # "${DOIAU}" == "NO"
inc_files=("atminc.nc")
read_increment=".true."
res_latlon_dynamics="atminc.nc"
read_increment=".true."
if [[ "${DO_JEDIATMVAR:-NO}" == "YES" ]] && [[ "${PREFIX_ATMINC}" != "r" ]] && [[ "${PDY}${cyc}" != "${SDATE}" ]]; then
inc_files=("atminc.tile1.nc" "atminc.tile2.nc" "atminc.tile3.nc" "atminc.tile4.nc" "atminc.tile5.nc" "atminc.tile6.nc")
res_latlon_dynamics="atminc"
increment_file_on_native_grid=".true."
else
inc_files=("atminc.nc")
res_latlon_dynamics="atminc.nc"
increment_file_on_native_grid=".false."
fi
if [[ "${REPLAY_ICS:-NO}" == "YES" ]]; then
IAU_FHROT=${half_window} # Replay ICs start at the end of the assimilation window
# Control member has no perturbation
Expand All @@ -169,12 +177,17 @@ EOF
read_increment=".false."
res_latlon_dynamics='""'
fi
increment_file_on_native_grid=".false."
fi
fi

local increment_file
for inc_file in "${inc_files[@]}"; do
increment_file="${COMIN_ATMOS_ANALYSIS}/${RUN}.t${cyc}z.${PREFIX_ATMINC}${inc_file}"
if [[ "${DO_JEDIATMVAR:-NO}" == "YES" ]] && [[ "${PREFIX_ATMINC}" != "r" ]] && [[ "${PDY}${cyc}" != "${SDATE}" ]]; then
increment_file="${COMIN_ATMOS_ANALYSIS}/${RUN}.t${cyc}z.cubed_sphere_grid_${PREFIX_ATMINC}${inc_file}"
else
increment_file="${COMIN_ATMOS_ANALYSIS}/${RUN}.t${cyc}z.${PREFIX_ATMINC}${inc_file}"
fi
if [[ -f "${increment_file}" ]]; then
${NCP} "${increment_file}" "${DATA}/INPUT/${inc_file}"
else
Expand Down
1 change: 1 addition & 0 deletions ush/forecast_predet.sh
Original file line number Diff line number Diff line change
Expand Up @@ -362,6 +362,7 @@ FV3_predet(){
warm_start=".false."
read_increment=".false."
res_latlon_dynamics='""'
increment_file_on_native_grid=".true."

# Stochastic Physics Options
do_skeb=".false."
Expand Down
Loading
Loading