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

UFS-dev PR#27 #81

Merged
merged 16 commits into from
Jan 3, 2023
Merged
Show file tree
Hide file tree
Changes from 15 commits
Commits
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
6 changes: 4 additions & 2 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
[submodule "FV3"]
path = FV3
url = https://github.com/NCAR/fv3atm
branch = main
url = https://github.com/grantfirl/fv3atm
branch = ufs-dev-PR27
#url = https://github.com/NCAR/fv3atm
#branch = main
[submodule "WW3"]
path = WW3
url = https://github.com/NOAA-EMC/WW3
Expand Down
16 changes: 12 additions & 4 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/CMakeModules/Modules)
###############################################################################

# Valid applications and choices
list(APPEND VALID_APPS ATM ATMAERO ATMAQ ATMW ATML LND S2S S2SA S2SW S2SWA S2SWAL HAFS HAFSW HAFS-ALL NG-GODAS)
list(APPEND VALID_APPS ATM ATMAERO ATMAQ ATMW ATML LND S2S S2SA S2SW S2SWA S2SWAL HAFS HAFSW HAFS-ALL NG-GODAS MS2SWA)
set(APP NONE CACHE BOOL "Application Name")
if(NOT (APP IN_LIST VALID_APPS))
message(FATAL_ERROR "${APP} is not a valid application.\nValid Applications are: ${VALID_APPS}")
Expand Down Expand Up @@ -121,13 +121,21 @@ endif()
find_package(NetCDF 4.7.4 REQUIRED C Fortran)
find_package(ESMF 8.3.0 MODULE REQUIRED)
if(FMS)
find_package(FMS 2022.01 REQUIRED COMPONENTS R4 R8)
if(32BIT)
find_package(FMS 2022.04 REQUIRED COMPONENTS R4 R8)
if(APP MATCHES "^(HAFSW)$")
add_library(fms ALIAS FMS::fms_r4)
else()
elseif (APP MATCHES "^(MS2SWA)$")
add_library(fms ALIAS FMS::fms_r8)
endif()
if(APP MATCHES "^(ATM|ATMAERO|ATMAQ|ATMW|ATML|LND|S2S|S2SA|S2SW|S2SWA|S2SWAL|HAFS|HAFS-ALL|NG-GODAS)$")
if(32BIT)
add_library(fms ALIAS FMS::fms_r4)
else()
add_library(fms ALIAS FMS::fms_r8)
endif()
endif()
endif()

if(CMEPS)
find_package(PIO 2.5.3 REQUIRED COMPONENTS C Fortran STATIC)
endif()
Expand Down
2 changes: 1 addition & 1 deletion HYCOM-interface/HYCOM
Submodule HYCOM updated 1 files
+8 −2 NUOPC/hycom_couple.F90
6 changes: 3 additions & 3 deletions cmake/configure_apps.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -42,19 +42,19 @@ if(APP MATCHES "^(NG-GODAS)$")
message("Configuring UFS app in (CDEPS) Data Atmosphere mode")
endif()

if(APP MATCHES "^(S2S|S2SA|S2SW|S2SWA|S2SWAL)$")
if(APP MATCHES "^(S2S|S2SA|S2SW|S2SWA|S2SWAL|MS2SWA)$")
set(APP_MSG "Configuring UFS app in S2S")
set(CMEPS ON CACHE BOOL "Enable CMEPS" FORCE)
set(FMS ON CACHE BOOL "Enable FMS" FORCE)
set(FV3 ON CACHE BOOL "Enable FV3" FORCE)
set(MOM6 ON CACHE BOOL "Enable MOM6" FORCE)
set(CICE6 ON CACHE BOOL "Enable CICE6" FORCE)
set(STOCH_PHYS ON CACHE BOOL "Enable Stochastic Physics" FORCE)
if(APP MATCHES "^(S2SW|S2SWA|S2SWAL)")
if(APP MATCHES "^(S2SW|S2SWA|S2SWAL|MS2SWA)")
set(WW3 ON CACHE BOOL "Enable WAVEWATCH III" FORCE)
string(CONCAT APP_MSG ${APP_MSG} " with Waves")
endif()
if(APP MATCHES "^(S2SA|S2SWA)")
if(APP MATCHES "^(S2SA|S2SWA|MS2SWA)")
set(UFS_GOCART ON CACHE BOOL "Enable GOCART" FORCE)
string(CONCAT APP_MSG ${APP_MSG} " with Aerosols")
endif()
Expand Down
2 changes: 1 addition & 1 deletion modulefiles/ufs_common.lua
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ load(pathJoin("pio", pio_ver))
esmf_ver=os.getenv("esmf_ver") or "8.3.0b09"
load(pathJoin("esmf", esmf_ver))

fms_ver=os.getenv("fms_ver") or "2022.01"
fms_ver=os.getenv("fms_ver") or "2022.04"
load(pathJoin("fms",fms_ver))

bacio_ver=os.getenv("bacio_ver") or "2.4.1"
Expand Down
2 changes: 1 addition & 1 deletion modulefiles/ufs_common_debug.lua
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ load(pathJoin("pio", pio_ver))
esmf_ver=os.getenv("esmf_ver") or "8.3.0b09-debug"
load(pathJoin("esmf", esmf_ver))

fms_ver=os.getenv("fms_ver") or "2022.01"
fms_ver=os.getenv("fms_ver") or "2022.04"
load(pathJoin("fms",fms_ver))

bacio_ver=os.getenv("bacio_ver") or "2.4.1"
Expand Down
2 changes: 1 addition & 1 deletion modulefiles/ufs_gaea.intel
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ module load hdf5/1.10.6
module load netcdf/4.7.4
module load pio/2.5.7
module load esmf/8.3.0b09
module load fms/2022.01
module load fms/2022.04

module load bacio/2.4.1
module load crtm/2.4.0
Expand Down
2 changes: 1 addition & 1 deletion modulefiles/ufs_gaea.intel_debug
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ module load hdf5/1.10.6
module load netcdf/4.7.4
module load pio/2.5.7
module load esmf/8.3.0b09-debug
module load fms/2022.01
module load fms/2022.04

module load bacio/2.4.1
module load crtm/2.4.0
Expand Down
22 changes: 12 additions & 10 deletions modulefiles/ufs_wcoss2.intel.lua
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ help([[
loads UFS Model prerequisites on Cactus and Dogwood
]])

-- First, look for libraries in "prod" space
PrgEnv_intel_ver=os.getenv("PrgEnv_intel_ver") or "8.1.0"
load(pathJoin("PrgEnv-intel", PrgEnv_intel_ver))

Expand All @@ -17,10 +18,6 @@ load(pathJoin("cray-mpich", cray_mpich_ver))
cmake_ver=os.getenv("cmake_ver") or "3.20.2"
load(pathJoin("cmake", cmake_ver))

setenv("HPC_OPT", "/apps/ops/para/libs")
prepend_path("MODULEPATH", "/apps/ops/para/libs/modulefiles/compiler/intel/19.1.3.304")
prepend_path("MODULEPATH", "/apps/ops/para/libs/modulefiles/mpi/intel/19.1.3.304/cray-mpich/8.1.7")

jasper_ver=os.getenv("jasper_ver") or "2.0.25"
load(pathJoin("jasper", jasper_ver))

Expand All @@ -36,10 +33,7 @@ load(pathJoin("hdf5", hdf5_ver))
netcdf_ver=os.getenv("netcdf_ver") or "4.7.4"
load(pathJoin("netcdf", netcdf_ver))

pio_ver=os.getenv("pio_ver") or "2.5.7"
load(pathJoin("pio", pio_ver))

fms_ver=os.getenv("fms_ver") or "2022.01"
fms_ver=os.getenv("fms_ver") or "2022.04"
load(pathJoin("fms", fms_ver))

bacio_ver=os.getenv("bacio_ver") or "2.4.1"
Expand All @@ -63,13 +57,21 @@ load(pathJoin("sp", sp_ver))
w3emc_ver=os.getenv("w3emc_ver") or "2.9.2"
load(pathJoin("w3emc", w3emc_ver))

-- Second, look for libraries in "para"
setenv("HPC_OPT", "/apps/ops/para/libs")
prepend_path("MODULEPATH", "/apps/ops/para/libs/modulefiles/compiler/intel/19.1.3.304")
prepend_path("MODULEPATH", "/apps/ops/para/libs/modulefiles/mpi/intel/19.1.3.304/cray-mpich/8.1.7")

pio_ver=os.getenv("pio_ver") or "2.5.7"
load(pathJoin("pio", pio_ver))

-- Finally, look for libraries in "dev" space
prepend_path("MODULEPATH", "/apps/dev/lmodules/intel/19.1.3.304")
prepend_path("MODULEPATH", "/apps/dev/modulefiles/mpi/intel/19.1.3.304/cray-mpich/8.1.9")

gftl_shared_ver=os.getenv("gftl_shared_ver") or "1.5.0"
load(pathJoin("gftl_shared", gftl_shared_ver))

prepend_path("MODULEPATH", "/apps/dev/modulefiles/mpi/intel/19.1.3.304/cray-mpich/8.1.9")

esmf_ver=os.getenv("esmf_ver") or "8.3.0b09"
load(pathJoin("esmf", esmf_ver))

Expand Down
22 changes: 12 additions & 10 deletions modulefiles/ufs_wcoss2.intel_debug.lua
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ help([[
loads UFS Model prerequisites on Cactus and Dogwood
]])

-- First, look for libraries on "prod" space
PrgEnv_intel_ver=os.getenv("PrgEnv_intel_ver") or "8.1.0"
load(pathJoin("PrgEnv-intel", PrgEnv_intel_ver))

Expand All @@ -17,10 +18,6 @@ load(pathJoin("cray-mpich", cray_mpich_ver))
cmake_ver=os.getenv("cmake_ver") or "3.20.2"
load(pathJoin("cmake", cmake_ver))

setenv("HPC_OPT", "/apps/ops/para/libs")
prepend_path("MODULEPATH", "/apps/ops/para/libs/modulefiles/compiler/intel/19.1.3.304")
prepend_path("MODULEPATH", "/apps/ops/para/libs/modulefiles/mpi/intel/19.1.3.304/cray-mpich/8.1.7")

jasper_ver=os.getenv("jasper_ver") or "2.0.25"
load(pathJoin("jasper", jasper_ver))

Expand All @@ -36,10 +33,7 @@ load(pathJoin("hdf5", hdf5_ver))
netcdf_ver=os.getenv("netcdf_ver") or "4.7.4"
load(pathJoin("netcdf", netcdf_ver))

pio_ver=os.getenv("pio_ver") or "2.5.7"
load(pathJoin("pio", pio_ver))

fms_ver=os.getenv("fms_ver") or "2022.01"
fms_ver=os.getenv("fms_ver") or "2022.04"
load(pathJoin("fms", fms_ver))

bacio_ver=os.getenv("bacio_ver") or "2.4.1"
Expand All @@ -63,13 +57,21 @@ load(pathJoin("sp", sp_ver))
w3emc_ver=os.getenv("w3emc_ver") or "2.9.2"
load(pathJoin("w3emc", w3emc_ver))

-- Seond, look for libraries in "para"
setenv("HPC_OPT", "/apps/ops/para/libs")
prepend_path("MODULEPATH", "/apps/ops/para/libs/modulefiles/compiler/intel/19.1.3.304")
prepend_path("MODULEPATH", "/apps/ops/para/libs/modulefiles/mpi/intel/19.1.3.304/cray-mpich/8.1.7")

pio_ver=os.getenv("pio_ver") or "2.5.7"
load(pathJoin("pio", pio_ver))

-- Finally, look for libraries in "dev" space
prepend_path("MODULEPATH", "/apps/dev/lmodules/intel/19.1.3.304")
prepend_path("MODULEPATH", "/apps/dev/modulefiles/mpi/intel/19.1.3.304/cray-mpich/8.1.9")

gftl_shared_ver=os.getenv("gftl_shared_ver") or "1.5.0"
load(pathJoin("gftl_shared", gftl_shared_ver))

prepend_path("MODULEPATH", "/apps/dev/modulefiles/mpi/intel/19.1.3.304/cray-mpich/8.1.9")

esmf_ver=os.getenv("esmf_ver") or "8.3.0b09-debug"
load(pathJoin("esmf", esmf_ver))

Expand Down
Loading