Skip to content

Commit 1d95ef1

Browse files
RussTreadon-NOAACoryMartin-NOAA
authored andcommitted
Extend GDASApp to run atmospheric JEDI variational DA with GSI EnKF (NOAA-EMC#1973)
# Description This PR contains changes needed to run JEDI atmospheric variational DA with a GSI-based EnKF ensemble. This configuration is currently being used in the near realtime global parallel running on WCOSS2. --------- Co-authored-by: CoryMartin-NOAA <cory.r.martin@noaa.gov>
1 parent 887b7ef commit 1d95ef1

File tree

64 files changed

+319
-137
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

64 files changed

+319
-137
lines changed

.github/pull_request_template.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,3 +23,4 @@ Refs NOAA-EMC/repo#5678
2323
- [ ] C48mx500_3DVarAOWCDA <!-- JEDI low-res marine 3DVar cycled DA !-->
2424
- [ ] C48mx500_hybAOWCDA <!-- JEDI marine hybrid envar cycled DA !-->
2525
- [ ] C96C48_hybatmDA <!-- GSI atm cycled DA !-->
26+
- [ ] C96C48_ufsgsi_hybatmDA <!-- JEDI atm Var with GSI EnKF cycled DA !-->

.gitmodules

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,6 @@
4141
path = sorc/soca
4242
url = https://github.com/NOAA-EMC/soca.git
4343
branch = dev/emc
44-
ignore = dirty
45-
[submodule "sorc/iodaconv"]
46-
path = sorc/iodaconv
47-
url = https://github.com/JCSDA-internal/ioda-converters.git
48-
branch = develop
4944
[submodule "sorc/land-imsproc"]
5045
path = sorc/land-imsproc
5146
url = https://github.com/NOAA-EMC/land-SCF_proc.git

build.sh

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ usage() {
2525
echo " -f force a clean build DEFAULT: NO"
2626
echo " -d include JCSDA ctest data DEFAULT: NO"
2727
echo " -a build everything in bundle DEFAULT: NO"
28+
echo " -i clone and build ioda-converters DEFAULT: NO"
2829
echo " -h display this message and quit"
2930
echo
3031
exit 1
@@ -38,12 +39,14 @@ CMAKE_INSTALL_LIBDIR="lib"
3839
CMAKE_OPTS=""
3940
BUILD_TARGET="${MACHINE_ID:-'localhost'}"
4041
BUILD_VERBOSE="NO"
42+
BUILD_TESTING="OFF"
4143
CLONE_JCSDADATA="NO"
4244
CLEAN_BUILD="NO"
4345
COMPILER="${COMPILER:-intel}"
4446
WORKFLOW_BUILD=${WORKFLOW_BUILD:-"OFF"}
47+
BUILD_IODA_CONVERTERS=${BUILD_IODA_CONVERTERS:-"NO"}
4548

46-
while getopts "w:t:c:hvdfa" opt; do
49+
while getopts "w:t:c:hvdfai" opt; do
4750
case $opt in
4851
w)
4952
HOMEgfs=$OPTARG
@@ -63,6 +66,9 @@ while getopts "w:t:c:hvdfa" opt; do
6366
f)
6467
CLEAN_BUILD=YES
6568
;;
69+
i)
70+
BUILD_IODA_CONVERTERS=YES
71+
;;
6672
h|\?|:)
6773
usage
6874
;;
@@ -75,7 +81,7 @@ case ${BUILD_TARGET} in
7581
source $dir_root/ush/module-setup.sh
7682
module use $dir_root/modulefiles
7783
module load GDAS/$BUILD_TARGET.$COMPILER
78-
CMAKE_OPTS+=" -DMPIEXEC_EXECUTABLE=$MPIEXEC_EXEC -DMPIEXEC_NUMPROC_FLAG=$MPIEXEC_NPROC -DBUILD_GSIBEC=ON"
84+
CMAKE_OPTS+=" -DMPIEXEC_EXECUTABLE=$MPIEXEC_EXEC -DMPIEXEC_NUMPROC_FLAG=$MPIEXEC_NPROC -DBUILD_GSIBEC=ON -DBUILD_IODA_CONVERTERS=$BUILD_IODA_CONVERTERS"
7985
module list
8086
;;
8187
$(hostname))
@@ -86,7 +92,7 @@ case ${BUILD_TARGET} in
8692
;;
8793
esac
8894

89-
CMAKE_OPTS+=" -DCLONE_JCSDADATA=$CLONE_JCSDADATA -DMACHINE=$BUILD_TARGET"
95+
CMAKE_OPTS+=" -DCLONE_JCSDADATA=$CLONE_JCSDADATA -DMACHINE=$BUILD_TARGET -DBUILD_TESTING=$BUILD_TESTING"
9096

9197
# TODO: Remove LD_LIBRARY_PATH line as soon as permanent solution is available
9298
if [[ $BUILD_TARGET == 'wcoss2' ]]; then
@@ -116,6 +122,11 @@ else
116122
git clone https://github.com/jcsda/soca "$dir_root/sorc/soca" --recurse-submodules
117123
fi
118124

125+
if [[ $BUILD_IODA_CONVERTERS == 'YES' ]]; then
126+
# Clone and build ioda-converters
127+
git clone https://github.com/jcsda-internal/ioda-converters "$dir_root/sorc/iodaconv"
128+
fi
129+
119130
# Set INSTALL_PREFIX as CMake option
120131
CMAKE_OPTS+=" -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX}"
121132

bundle/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ option(BUILD_GDASBUNDLE "Build GDAS Bundle" ON)
3636
option(CLONE_JCSDADATA "Clone JCSDA test data repositories" OFF)
3737
option(WORKFLOW_TESTS "Include global-workflow dependent tests" OFF)
3838
option(BUILD_REGRID_STATES "Build regrid states land DA utility" ON)
39+
option(BUILD_IODA_CONVERTERS "Build IODA Converters" OFF)
3940

4041
# Depend path for non-ecbuild packages
4142
set(DEPEND_LIB_ROOT ${CMAKE_CURRENT_BINARY_DIR}/Depends)
@@ -113,7 +114,6 @@ if(BUILD_GDASBUNDLE)
113114
ecbuild_bundle( PROJECT da-utils SOURCE "../sorc/da-utils" )
114115

115116
# Build IODA converters
116-
option(BUILD_IODA_CONVERTERS "Build IODA Converters" ON)
117117
if(BUILD_IODA_CONVERTERS)
118118
ecbuild_bundle( PROJECT iodaconv SOURCE "../sorc/iodaconv" )
119119
endif()

modulefiles/GDAS/gaeac6.intel.lua

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ load("py-xarray/2024.7.0")
7070
load("py-f90nml/1.4.3")
7171
load("py-pip/23.1.2")
7272
load("py-click/8.1.7")
73+
load("py-wheel/0.41.2")
7374

7475
--unload("cray-libsci")
7576

modulefiles/GDAS/hera.intel.lua

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ load("py-xarray/2024.7.0")
6969
load("py-f90nml/1.4.3")
7070
load("py-pip/23.1.2")
7171
load("py-click/8.1.7")
72+
load("py-wheel/0.41.2")
7273

7374
setenv("CC","mpiicc")
7475
setenv("CXX","mpiicpc")

modulefiles/GDAS/hercules.intel.lua

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ load("py-xarray/2024.7.0")
7575
load("py-f90nml/1.4.3")
7676
load("py-pip/23.1.2")
7777
load("py-click/8.1.7")
78+
load("py-wheel/0.41.2")
7879

7980
setenv("CC","mpiicc")
8081
setenv("CXX","mpiicpc")

modulefiles/GDAS/orion.intel.lua

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@ load("py-xarray/2024.7.0")
7474
load("py-f90nml/1.4.3")
7575
load("py-pip/23.1.2")
7676
load("py-click/8.1.7")
77+
load("py-wheel/0.41.2")
7778

7879
setenv("CC","mpiicc")
7980
setenv("CXX","mpiicpc")

modulefiles/GDAS/ursa.intel.lua

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ load("py-xarray/2024.7.0")
7171
load("py-f90nml/1.4.3")
7272
load("py-pip/23.1.2")
7373
load("py-click/8.1.7")
74+
load("py-wheel/0.41.2")
7475

7576
setenv("CC","mpiicx")
7677
setenv("CXX","mpiicpx")

parm/aero/aero_bias_files.yaml.j2

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
bias_files:
2-
viirs_npp_aod: aero_varbc_params.tar
3-
viirs_n20_aod: aero_varbc_params.tar
4-
viirs_n21_aod: aero_varbc_params.tar
2+
retrieval_aod_viirs_npp: aero_varbc_params.tar
3+
retrieval_aod_viirs_n20: aero_varbc_params.tar
4+
retrieval_aod_viirs_n21: aero_varbc_params.tar

0 commit comments

Comments
 (0)