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

Add unstructured grid for HR3/GFS #2230

Merged
Show file tree
Hide file tree
Changes from 71 commits
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
97c2f2f
update code to a version that has unstructured grid features
JessicaMeixner-NOAA Jun 1, 2023
56ecf61
commit local changes from a few weeks ago
JessicaMeixner-NOAA Aug 1, 2023
a2b029e
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Aug 1, 2023
3f7d768
updates to get wave prep to run
JessicaMeixner-NOAA Aug 2, 2023
41828a2
change name of unstructured grid to be short enough for ww3
JessicaMeixner-NOAA Aug 2, 2023
c6a2117
update to s2s default
JessicaMeixner-NOAA Aug 10, 2023
6ee292d
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Aug 15, 2023
363f22a
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Aug 21, 2023
2bb3403
Merge branch 'NOAA-EMC:develop' into feature/unstructuredwave
JessicaMeixner-NOAA Aug 30, 2023
a5455f9
Merge branch 'NOAA-EMC:develop' into feature/unstructuredwave
JessicaMeixner-NOAA Sep 10, 2023
cba06b8
update to latest ufs weather model
JessicaMeixner-NOAA Sep 10, 2023
4d12bca
Merge branch 'NOAA-EMC:develop' into feature/unstructuredwave
JessicaMeixner-NOAA Sep 26, 2023
db78367
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Oct 27, 2023
f589da6
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Oct 31, 2023
672ca07
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Oct 31, 2023
90bea44
update version of ufs to have 7.0.4 of scotch on RDHPCS
JessicaMeixner-NOAA Oct 31, 2023
a739bf4
update commit hash of ufs-weather-model
JessicaMeixner-NOAA Nov 4, 2023
3c3c944
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Nov 4, 2023
46f5027
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Nov 7, 2023
04e8a04
updates for build
JessicaMeixner-NOAA Nov 8, 2023
2af2930
temp file
JessicaMeixner-NOAA Nov 8, 2023
1a2e782
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Nov 14, 2023
b390d43
updates for new unstructured grids
JessicaMeixner-NOAA Nov 15, 2023
23cc539
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Nov 15, 2023
acf0bf8
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Nov 16, 2023
1b3083f
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Nov 28, 2023
2214448
use UFS that has scotch 7.0.4 on WCOSS2
JessicaMeixner-NOAA Nov 28, 2023
5e48d67
temporary files added
JessicaMeixner-NOAA Dec 11, 2023
91ffd18
updates to run with C768 on wcoss2
JessicaMeixner-NOAA Dec 11, 2023
f537bb5
updates for wave configuration
JessicaMeixner-NOAA Dec 11, 2023
71341ff
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Dec 22, 2023
ee53c0a
update ufs model to code that was used in previous commit
JessicaMeixner-NOAA Dec 22, 2023
c189425
orion temp update
JessicaMeixner-NOAA Jan 3, 2024
6e15e10
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Jan 3, 2024
5ef97ea
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Jan 9, 2024
c729c07
updates
JessicaMeixner-NOAA Jan 10, 2024
457db36
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Jan 10, 2024
e7137d5
revert bypass of wave IC
JessicaMeixner-NOAA Jan 11, 2024
f6fc9ea
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Jan 16, 2024
3bfeafb
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredwave
JessicaMeixner-NOAA Jan 16, 2024
7b840b2
clean up for PR
JessicaMeixner-NOAA Jan 16, 2024
69dd261
attempt to fix shellcheck
JessicaMeixner-NOAA Jan 16, 2024
903ab13
shell check updates round 2
JessicaMeixner-NOAA Jan 16, 2024
223e49d
shell check round 3
JessicaMeixner-NOAA Jan 16, 2024
384a15e
update for shellcheck
JessicaMeixner-NOAA Jan 16, 2024
f3937f9
more shell check update attempts
JessicaMeixner-NOAA Jan 16, 2024
27e86c1
revert two files so that existing tests will work
JessicaMeixner-NOAA Jan 17, 2024
dc9932e
since tests only go up to C384, setting C768/C1152 to desired unstruc…
JessicaMeixner-NOAA Jan 17, 2024
bf6fe05
Merge branch 'NOAA-EMC:develop' into feature/unstructuredwavePR
JessicaMeixner-NOAA Jan 18, 2024
3d30ca4
Update scripts/exgfs_wave_init.sh
JessicaMeixner-NOAA Jan 18, 2024
df2a08a
Update scripts/exgfs_wave_init.sh
JessicaMeixner-NOAA Jan 18, 2024
0237687
Update scripts/exgfs_wave_init.sh
JessicaMeixner-NOAA Jan 18, 2024
3a17970
Update sorc/build_ufs.sh
JessicaMeixner-NOAA Jan 18, 2024
d606a48
Merge branch 'NOAA-EMC:develop' into feature/unstructuredwavePR
JessicaMeixner-NOAA Jan 19, 2024
f4a7377
fix reason of ci test failures
JessicaMeixner-NOAA Jan 19, 2024
2d7def5
Merge branch 'NOAA-EMC:develop' into feature/unstructuredwavePR
JessicaMeixner-NOAA Jan 19, 2024
42e7e00
lower task count so it runs out of box on hera
JessicaMeixner-NOAA Feb 9, 2024
9bfb15a
Merge remote-tracking branch 'EMC/develop' into feature/unstructuredw…
JessicaMeixner-NOAA Feb 9, 2024
98812ff
update build for unstructured waves
JessicaMeixner-NOAA Feb 9, 2024
99e17ed
all gfs wave grids need to be unstructured since we build with -w
JessicaMeixner-NOAA Feb 9, 2024
09fe8d5
Merge branch 'NOAA-EMC:develop' into feature/unstructuredwavePR
JessicaMeixner-NOAA Feb 12, 2024
176a511
Merge branch 'NOAA-EMC:develop' into feature/unstructuredwavePR
JessicaMeixner-NOAA Feb 13, 2024
f8ff6fa
Merge branch 'NOAA-EMC:develop' into feature/unstructuredwavePR
JessicaMeixner-NOAA Feb 13, 2024
23d91aa
Merge branch 'NOAA-EMC:develop' into feature/unstructuredwavePR
JessicaMeixner-NOAA Feb 14, 2024
5e5ce61
increased memory was required on wcoss2 for scout runs
JessicaMeixner-NOAA Feb 14, 2024
ec12026
update to HR3 ICs
JessicaMeixner-NOAA Feb 14, 2024
b32e46f
Update shell-based CI scripts
WalterKolczynski-NOAA Feb 14, 2024
fc546d9
updating ugwd fix file
JessicaMeixner-NOAA Feb 15, 2024
e836e44
Merge branch 'feature/unstructuredwavePR' of github.com:JessicaMeixne…
JessicaMeixner-NOAA Feb 15, 2024
799d942
Merge branch 'NOAA-EMC:develop' into feature/unstructuredwavePR
JessicaMeixner-NOAA Feb 15, 2024
d75d915
Merge branch 'NOAA-EMC:develop' into feature/unstructuredwavePR
JessicaMeixner-NOAA Feb 15, 2024
1514906
hera.intl to hera in gdas build all
JessicaMeixner-NOAA Feb 15, 2024
7c06061
fix typo, to turn off C48mx500_3DVarAOWCDA tests
JessicaMeixner-NOAA Feb 15, 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
5 changes: 5 additions & 0 deletions ci/cases/pr/C48_S2SWA_gefs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,8 @@ arguments:
idate: 2021032312
edate: 2021032312
yaml: {{ HOMEgfs }}/ci/cases/yamls/gefs_ci_defaults.yaml

skip_ci_on_hosts:
- hera
- orion
- hercules
2 changes: 1 addition & 1 deletion ci/cases/yamls/build.yaml
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
builds:
- gefs: './build_all.sh'
- gfs: './build_all.sh -gu'
- gfs: './build_all.sh -wgu'
2 changes: 1 addition & 1 deletion ci/scripts/clone-build_ci.sh
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ set +e
source "${HOMEgfs}/ush/module-setup.sh"
export BUILD_JOBS=8
rm -rf log.build
./build_all.sh -gu >> log.build 2>&1
./build_all.sh -guw >> log.build 2>&1
build_status=$?

DATE=$(date +'%D %r')
Expand Down
7 changes: 7 additions & 0 deletions docs/source/clone.rst
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,13 @@ For coupled cycling (include new UFSDA) use the `-gu` options during build:
./build_all.sh -gu


For building with PDLIB for the wave model, use the `-w` options during build:

::

./build_all.sh -w


Build workflow components and link workflow artifacts such as executables, etc.

::
Expand Down
2 changes: 2 additions & 0 deletions env/WCOSS2.env
Original file line number Diff line number Diff line change
Expand Up @@ -176,6 +176,8 @@ elif [[ "${step}" = "fcst" ]] || [[ "${step}" = "efcs" ]]; then
if [[ "${step}" = "fcst" ]]; then
export OMP_PLACES=cores
export OMP_STACKSIZE=2048M
export MPICH_MPIIO_HINTS="*:romio_cb_write=disable"
export FI_OFI_RXM_SAR_LIMIT=3145728
elif [[ "${step}" = "efcs" ]]; then
export MPICH_MPIIO_HINTS="*:romio_cb_write=disable"
export FI_OFI_RXM_SAR_LIMIT=3145728
Expand Down
8 changes: 4 additions & 4 deletions parm/config/gfs/config.base.emc.dyn
Original file line number Diff line number Diff line change
Expand Up @@ -183,16 +183,16 @@ export ICERES="${OCNRES}"
# These are the currently recommended grid-combinations
case "${CASE}" in
"C48")
export waveGRD='glo_500'
export waveGRD='uglo_100km'
;;
"C96" | "C192")
export waveGRD='glo_200'
export waveGRD='uglo_100km'
;;
"C384")
export waveGRD='glo_025'
export waveGRD='uglo_100km'
;;
"C768" | "C1152")
export waveGRD='mx025'
export waveGRD='uglo_m1g16'
;;
*)
echo "FATAL ERROR: Unrecognized CASE ${CASE}, ABORT!"
Expand Down
4 changes: 2 additions & 2 deletions parm/config/gfs/config.resources
Original file line number Diff line number Diff line change
Expand Up @@ -737,15 +737,15 @@ case ${step} in
export npe_genesis=1
export nth_genesis=1
export npe_node_genesis=1
export memory_genesis="4G"
export memory_genesis="10G"
;;

"genesis_fsu")
export wtime_genesis_fsu="00:10:00"
export npe_genesis_fsu=1
export nth_genesis_fsu=1
export npe_node_genesis_fsu=1
export memory_genesis_fsu="4G"
export memory_genesis_fsu="10G"
;;

"fit2obs")
Expand Down
16 changes: 8 additions & 8 deletions parm/config/gfs/config.stage_ic
Original file line number Diff line number Diff line change
Expand Up @@ -21,16 +21,16 @@ case "${CASE}" in
export CPL_WAVIC=workflow_C384_refactored
;;
"C768")
export CPL_ATMIC=HR2_refactored
export CPL_ICEIC=HR1_refactored
export CPL_OCNIC=HR1_refactored
export CPL_WAVIC=HR1_refactored
export CPL_ATMIC=HR3C768
export CPL_ICEIC=HR3marine
export CPL_OCNIC=HR3marine
export CPL_WAVIC=HR3marine
;;
"C1152")
export CPL_ATMIC=HR2_C1152_refactored
export CPL_ICEIC=HR3_refactored
export CPL_OCNIC=HR3_refactored
export CPL_WAVIC=HR1_refactored
export CPL_ATMIC=HR3C1152
export CPL_ICEIC=HR3marine
export CPL_OCNIC=HR3marine
export CPL_WAVIC=HR3marine
;;
*)
echo "FATAL ERROR Unrecognized resolution: ${CASE}"
Expand Down
10 changes: 9 additions & 1 deletion parm/config/gfs/config.ufs
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ if (( $# <= 1 )); then
echo "--fv3 C48|C96|C192|C384|C768|C1152|C3072"
echo "--mom6 500|100|025"
echo "--cice6 500|100|025"
echo "--ww3 gnh_10m;aoc_9km;gsh_15m|gwes_30m|glo_025|glo_200|glo_500|mx025"
echo "--ww3 gnh_10m;aoc_9km;gsh_15m|gwes_30m|glo_025|glo_200|glo_500|mx025|uglo_100km|uglo_m1g16"
echo "--gocart"

exit 1
Expand Down Expand Up @@ -416,6 +416,14 @@ if [[ "${skip_ww3}" == "false" ]]; then
"mx025")
ntasks_ww3=80
;;
"uglo_100km")
ntasks_ww3=40
nthreads_ww3=1
;;
"uglo_m1g16")
ntasks_ww3=1000
nthreads_ww3=1
;;
*)
echo "FATAL ERROR: Unsupported WW3 resolution = ${ww3_res}, ABORT!"
exit 1
Expand Down
14 changes: 13 additions & 1 deletion parm/config/gfs/config.wave
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,19 @@ case "${waveGRD}" in
export wavepostGRD='glo_500'
export waveuoutpGRD=${waveGRD}
;;
*)
"uglo_100km")
#unstructured 100km grid
export waveinterpGRD='glo_200'
export wavepostGRD=''
export waveuoutpGRD=${waveGRD}
;;
"uglo_m1g16")
#unstructured m1v16 grid
export waveinterpGRD='glo_15mxt'
export wavepostGRD=''
export waveuoutpGRD=${waveGRD}
;;
*)
echo "FATAL ERROR: No grid specific wave config values exist for ${waveGRD}. Aborting."
exit 1
;;
Expand Down
2 changes: 1 addition & 1 deletion parm/wave/at_10m_interp.inp.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ $ Start Time DT NSteps
$ Total number of grids
2
$ Grid extensions
'gnh_10m'
'uglo_m1g16'
'at_10m'
$
0
Expand Down
2 changes: 1 addition & 1 deletion parm/wave/ep_10m_interp.inp.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ $ Start Time DT NSteps
$ Total number of grids
2
$ Grid extensions
'gnh_10m'
'uglo_m1g16'
'ep_10m'
$
0
Expand Down
6 changes: 2 additions & 4 deletions parm/wave/glo_15mxt_interp.inp.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,9 @@ $------------------------------------------------
$ Start Time DT NSteps
TIME DT NSTEPS
$ Total number of grids
4
2
$ Grid extensions
'gnh_10m'
'aoc_9km'
'gsh_15m'
'uglo_m1g16'
'glo_15mxt'
$
0
Expand Down
12 changes: 12 additions & 0 deletions parm/wave/glo_200_interp.inp.tmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
$ Input file for interpolation of GLO30m_ext Grid
$------------------------------------------------
$ Start Time DT NSteps
TIME DT NSTEPS
$ Total number of grids
2
$ Grid extensions
'uglo_100km'
'glo_200'
$
0
$
6 changes: 2 additions & 4 deletions parm/wave/glo_30m_interp.inp.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,9 @@ $------------------------------------------------
$ Start Time DT NSteps
TIME DT NSTEPS
$ Total number of grids
4
2
$ Grid extensions
'gnh_10m'
'aoc_9km'
'gsh_15m'
'uglo_m1g16'
'glo_30m'
$
0
Expand Down
2 changes: 1 addition & 1 deletion parm/wave/wc_10m_interp.inp.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ $ Start Time DT NSteps
$ Total number of grids
2
$ Grid extensions
'gnh_10m'
'uglo_m1g16'
'wc_10m'
$
0
Expand Down
13 changes: 10 additions & 3 deletions scripts/exgfs_wave_init.sh
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,13 @@ source "${HOMEgfs}/ush/preamble.sh"
err=2;export err;${errchk}
fi


if [ -f ${FIXwave}/${grdID}.msh ]
then
cp "${FIXwave}/${grdID}.msh" "${grdID}.msh"
fi
#TO DO: how do we say "it's unstructured, and therefore need to have error check here"
WalterKolczynski-NOAA marked this conversation as resolved.
Show resolved Hide resolved

[[ ! -d "${COM_WAVE_PREP}" ]] && mkdir -m 775 -p "${COM_WAVE_PREP}"
if [ ${CFP_MP:-"NO"} = "YES" ]; then
echo "$nmoddef $USHwave/wave_grid_moddef.sh $grdID > $grdID.out 2>&1" >> cmdfile
Expand Down Expand Up @@ -166,7 +173,7 @@ source "${HOMEgfs}/ush/preamble.sh"
exit=$?
fi

if [ "$exit" != '0' ]
if [[ "$exit" != '0' ]]
then
set +x
echo ' '
Expand Down Expand Up @@ -195,9 +202,9 @@ source "${HOMEgfs}/ush/preamble.sh"
echo '********************************************** '
echo '*** FATAL ERROR : NO MODEL DEFINITION FILE *** '
echo '********************************************** '
echo " grdID = $grdID"
echo " grdID = ${grdID}"
echo ' '
sed "s/^/$grdID.out : /g" $grdID.out
sed "s/^/${grdID}.out : /g" "${grdID}.out"
set_trace
err=3;export err;${errchk}
fi
Expand Down
12 changes: 8 additions & 4 deletions sorc/build_all.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ function _usage() {
Builds all of the global-workflow components by calling the individual build
scripts in sequence.

Usage: ${BASH_SOURCE[0]} [-a UFS_app][-c build_config][-h][-j n][-v]
Usage: ${BASH_SOURCE[0]} [-a UFS_app][-c build_config][-h][-j n][-v][-w]
-a UFS_app:
Build a specific UFS app instead of the default
-g:
Expand All @@ -29,6 +29,8 @@ Usage: ${BASH_SOURCE[0]} [-a UFS_app][-c build_config][-h][-j n][-v]
Build UFS-DA
-v:
Execute all build scripts with -v option to turn on verbose where supported
-w:
Use unstructured wave grid
EOF
exit 1
}
Expand All @@ -40,17 +42,19 @@ _build_ufs_opt=""
_build_ufsda="NO"
_build_gsi="NO"
_verbose_opt=""
_wave_unst=""
_build_job_max=20
# Reset option counter in case this script is sourced
OPTIND=1
while getopts ":a:ghj:uv" option; do
while getopts ":a:ghj:uvw" option; do
case "${option}" in
a) _build_ufs_opt+="-a ${OPTARG} ";;
g) _build_gsi="YES" ;;
h) _usage;;
j) _build_job_max="${OPTARG} ";;
u) _build_ufsda="YES" ;;
v) _verbose_opt="-v";;
w) _wave_unst="-w";;
:)
echo "[${BASH_SOURCE[0]}]: ${option} requires an argument"
_usage
Expand Down Expand Up @@ -113,7 +117,7 @@ declare -A build_opts
big_jobs=0
build_jobs["ufs"]=8
big_jobs=$((big_jobs+1))
build_opts["ufs"]="${_verbose_opt} ${_build_ufs_opt}"
build_opts["ufs"]="${_wave_unst} ${_verbose_opt} ${_build_ufs_opt}"

build_jobs["upp"]=6 # The UPP is hardcoded to use 6 cores
build_opts["upp"]=""
Expand All @@ -125,7 +129,7 @@ build_jobs["gfs_utils"]=1
build_opts["gfs_utils"]="${_verbose_opt}"

build_jobs["ww3prepost"]=3
build_opts["ww3prepost"]="${_verbose_opt} ${_build_ufs_opt}"
build_opts["ww3prepost"]="${_wave_unst} ${_verbose_opt} ${_build_ufs_opt}"

# Optional DA builds
if [[ "${_build_ufsda}" == "YES" ]]; then
Expand Down
4 changes: 3 additions & 1 deletion sorc/build_ufs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,13 @@ cwd=$(pwd)
APP="S2SWA"
CCPP_SUITES="FV3_GFS_v17_p8_ugwpv1,FV3_GFS_v17_coupled_p8_ugwpv1" # TODO: does the g-w need to build with all these CCPP_SUITES?

while getopts ":da:j:v" option; do
while getopts ":da:j:vw" option; do
case "${option}" in
d) BUILD_TYPE="DEBUG";;
a) APP="${OPTARG}";;
j) BUILD_JOBS="${OPTARG}";;
v) export BUILD_VERBOSE="YES";;
w) PDLIB="ON";;
:)
echo "[${BASH_SOURCE[0]}]: ${option} requires an argument"
;;
Expand All @@ -28,6 +29,7 @@ source "./tests/detect_machine.sh"
source "./tests/module-setup.sh"

MAKE_OPT="-DAPP=${APP} -D32BIT=ON -DCCPP_SUITES=${CCPP_SUITES}"
[[ ${PDLIB:-"OFF"} = "ON" ]] && MAKE_OPT+=" -DPDLIB=ON"
[[ ${BUILD_TYPE:-"Release"} = "DEBUG" ]] && MAKE_OPT+=" -DDEBUG=ON"
COMPILE_NR=0
CLEAN_BEFORE=YES
Expand Down
Loading
Loading