Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
f164987
CI: Enable eCLM-PDAF build
jjokella Jul 11, 2025
a591408
CI: Enable eCLM/CLM3.5-ParFlow-PDAF builds
jjokella Jul 11, 2025
6b2ea40
udpate `models/parflow_pdaf` to `tsmp-pdaf-patched`
jjokella Jul 11, 2025
b005f8d
BuildParFlow: Turn "eCLM" on for CLM3.5
jjokella Jul 11, 2025
b3fd901
BuildParFlow: Compiler option `-Wno-unused-variable` for PDAF-builds
jjokella Jul 11, 2025
dfc7e73
udpate `models/parflow_pdaf` to `tsmp-pdaf-patched-hypre-cuda-fixes`
jjokella Jul 11, 2025
a60194c
update `model/pdaf` to `tsmp-pdaf-patched-outdir-fix-clm35`
jjokella Jul 11, 2025
676b73c
update `model/pdaf` to `tsmp-pdaf-patched-pdaf-CI`
jjokella Jul 11, 2025
d757fbb
update `model/parflow_pdaf` to `tsmp-pdaf-patched-pdaf-CI`
jjokella Jul 11, 2025
f45128a
update `model/parflow_pdaf`
jjokella Jul 11, 2025
b787996
update "models/pdaf" to tsmp-pdaf-patched-eclm-pfl-fixes
jjokella Oct 29, 2025
ca9d963
Merge branch 'master' into dev-pdaf-CI
jjokella Oct 29, 2025
75cd200
Merge branch 'master' into dev-pdaf-CI
jjokella May 28, 2026
af1ad6d
CI.yml: indentation fix
jjokella May 28, 2026
48fb848
CI: correct CLM3.5 model option
jjokella May 28, 2026
b34780f
update "models/pdaf"
jjokella May 28, 2026
69911b6
revise HYPRE and SLURM loading
jjokella May 28, 2026
b225a1e
update "models/pdaf"
jjokella May 28, 2026
635e8aa
update "models/pdaf"
jjokella May 28, 2026
1b548a4
update "models/pdaf"
jjokella May 28, 2026
b6aeac7
update "models/parflow_pdaf" to v3.14.1-pdaf
jjokella May 29, 2026
74d56fe
comment change
jjokella May 29, 2026
ec2a71d
.gitmodules: tag as in `master`
jjokella May 29, 2026
d02b3ca
update "models/pdaf" to tsmp-pdaf-patched
jjokella May 29, 2026
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
26 changes: 13 additions & 13 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,25 +36,25 @@ jobs:
# - {
# name: "CLM3.5-PDAF",
# use_oasis: "False",
# model_opts: "CLM35 PDAF"
# model_opts: "CLM3.5 PDAF"
# }
- {
name: "eCLM-PDAF",
use_oasis: "False",
model_opts: "eCLM PDAF"
}
# - {
# name: "CLM3.5-ParFlow-PDAF",
# use_oasis: "True",
# parflow_dir: "parflow_pdaf",
# model_opts: "CLM35 ParFlow PDAF"
# }
# - {
# name: "eCLM-ParFlow-PDAF",
# use_oasis: "True",
# parflow_dir: "parflow_pdaf",
# model_opts: "eCLM ParFlow PDAF"
# }
- {
name: "CLM3.5-ParFlow-PDAF",
use_oasis: "True",
parflow_dir: "parflow_pdaf",
model_opts: "CLM3.5 ParFlow PDAF"
}
- {
name: "eCLM-ParFlow-PDAF",
use_oasis: "True",
parflow_dir: "parflow_pdaf",
model_opts: "eCLM ParFlow PDAF"
}
env:
SYSTEMNAME: UBUNTU
STAGE: 24.04
Expand Down
23 changes: 21 additions & 2 deletions cmake/BuildPDAFMODEL.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -100,8 +100,27 @@ if(DEFINED PARFLOW_SRC)
list(APPEND PDAF_LIBS "-L${CMAKE_INSTALL_PREFIX}/lib -lpfsimulator -lamps -lpfkinsol -lgfortran -lcjson")
# GPU
# list(APPEND PDAF_LIBS "-L${CMAKE_INSTALL_PREFIX}/rmm/lib -lstdc++ -lcudart -lrmm -lnvToolsExt")
list(APPEND PDAF_LIBS "-L${HYPRE_ROOT}/lib -lHYPRE")
list(APPEND PDAF_LIBS "-L/lib64 -lslurm -lstdc++")

# HYPRE lib
find_library(HYPRE_LIB NAMES HYPRE
HINTS
${HYPRE_ROOT}/lib
$ENV{HYPRE_ROOT}/lib
$ENV{EBROOTHYPRE}/lib
)
if(HYPRE_LIB)
list(APPEND PDAF_LIBS "${HYPRE_LIB}")
else()
message(WARNING "BuildPDAFMODEL: HYPRE library not found. Set HYPRE_ROOT or EBROOTHYPRE if needed.")
endif()

# Unconditional loading of stdc++
list(APPEND PDAF_LIBS "-lstdc++")

# SLURM library if enabled (typically on HPC-system)
if(ENABLE_SLURM)
list(APPEND PDAF_LIBS "-lslurm")
endif()
endif()

# Join list of libraries
Expand Down
8 changes: 7 additions & 1 deletion cmake/BuildParFlow.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ if(DEFINED eCLM_SRC)
elseif(DEFINED CLM35_SRC)
list(APPEND PF_CLM_FLAGS -DPARFLOW_AMPS_LAYER=oas3
-DOAS3_ROOT=${OASIS_ROOT}
-DPARFLOW_HAVE_ECLM=ON # CLM35 uses eCLM flag for now
-DPARFLOW_HAVE_CLM=OFF)
else()
# use ParFlow's internal CLM
Expand Down Expand Up @@ -40,7 +41,12 @@ endif()
# Set compiler flags
if(CMAKE_C_COMPILER_ID STREQUAL "GNU")
# Flags were based from https://github.com/parflow/parflow/blob/c8aa8d7140db19153194728b8fa9136b95177b6d/.github/workflows/linux.yml#L486
set(PF_CFLAGS "-Wall -Werror -Wno-unused-result -Wno-unused-function -Wno-stringop-overread")
if(${PDAF})
# PDAF: add `-Wno-unused-variable`
set(PF_CFLAGS "-Wall -Werror -Wno-unused-result -Wno-unused-function -Wno-unused-variable -Wno-stringop-overread")
else()
set(PF_CFLAGS "-Wall -Werror -Wno-unused-result -Wno-unused-function -Wno-stringop-overread")
endif()
# Silence arch-specific compiler warnings
if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm64|aarch64")
string(APPEND PF_CFLAGS " -Wno-maybe-uninitialized")
Expand Down
2 changes: 1 addition & 1 deletion models/pdaf
Submodule pdaf updated 37 files
+1 −1 .github/workflows/style-check.yml
+50 −9 docs/users_guide/running_tsmp_pdaf/input_cmd.md
+4 −4 interface/framework/add_obs_error_pdaf.F90
+10 −6 interface/framework/assimilate_pdaf.F90
+6 −4 interface/framework/callback_obs_pdafomi.F90
+1 −1 interface/framework/collect_state_pdaf.F90
+1 −1 interface/framework/distribute_state_pdaf.F90
+1 −1 interface/framework/distribute_stateinc_pdaf.F90
+1 −1 interface/framework/g2l_state_pdaf.F90
+18 −18 interface/framework/init_dim_obs_f_pdaf.F90
+7 −7 interface/framework/init_dim_obs_l_pdaf.F90
+18 −18 interface/framework/init_dim_obs_pdaf.F90
+3 −3 interface/framework/init_ens.F90
+4 −4 interface/framework/init_obscovar_pdaf.F90
+5 −5 interface/framework/init_obsvar_pdaf.F90
+35 −34 interface/framework/init_parallel_pdaf.F90
+8 −8 interface/framework/init_pdaf.F90
+119 −119 interface/framework/init_pdaf_info.F90
+35 −35 interface/framework/init_pdaf_parse.F90
+1 −1 interface/framework/l2g_state_pdaf.F90
+10 −10 interface/framework/localize_covar_pdaf.F90
+1 −1 interface/framework/mod_parallel_pdaf.F90
+17 −17 interface/framework/mod_read_obs.F90
+23 −21 interface/framework/next_observation_pdaf.F90
+28 −25 interface/framework/obs_GRACE_pdafomi.F90
+36 −36 interface/framework/obs_SM_pdafomi.F90
+20 −20 interface/framework/obs_op_pdaf.F90
+35 −35 interface/framework/parser_mpi.F90
+2 −2 interface/framework/pdaf_terrsysmp.F90
+19 −13 interface/framework/prepoststep_ens_pdaf.F90
+13 −13 interface/framework/prodrinva_l_pdaf.F90
+1 −1 interface/framework/prodrinva_pdaf.F90
+24 −12 interface/model/eclm/enkf_clm_5.F90
+28 −28 interface/model/eclm/enkf_clm_mod_5.F90
+14 −16 interface/model/eclm/print_update_clm_5.F90
+30 −4 src/PDAF_set_forget.F90
+24 −4 src/PDAF_set_forget_local.F90
Loading