Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/develop' into enable_llvm_tests_…
Browse files Browse the repository at this point in the history
…in_rt_conf
  • Loading branch information
DusanJovic-NOAA committed Nov 6, 2024
2 parents 7e47213 + f9c91d3 commit 12ac265
Show file tree
Hide file tree
Showing 86 changed files with 3,972 additions and 2,475 deletions.
4 changes: 4 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,10 @@
path = NOAHMP-interface/noahmp
url = https://github.com/NOAA-EMC/noahmp
branch = develop
[submodule "LM4-driver"]
path = LM4-driver
url = https://github.com/NOAA-GFDL/LM4-NUOPC-driver
branch = develop
[submodule "fire_behavior"]
path = fire_behavior
url = https://github.com/NOAA-EMC/fire_behavior
Expand Down
2 changes: 1 addition & 1 deletion CMEPS-interface/CMEPS
19 changes: 16 additions & 3 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 ATMWM ATML ATMF LND S2S S2SA S2SW S2SWA S2SWAL ATM_DS2S ATM_DS2S-PCICE HAFS HAFSW HAFS-MOM6 HAFS-MOM6W HAFS-ALL NG-GODAS)
list(APPEND VALID_APPS ATM ATMAERO ATMAQ ATMW ATMWM ATML ATMF LND LND-LM4 S2S S2SA S2SW S2SWA S2SWAL ATM_DS2S ATM_DS2S-PCICE HAFS HAFSW HAFS-MOM6 HAFS-MOM6W HAFS-ALL NG-GODAS)
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 All @@ -29,6 +29,7 @@ set(UFS_GOCART OFF CACHE BOOL "Enable GOCART")
set(MOM6 OFF CACHE BOOL "Enable MOM6")
set(HYCOM OFF CACHE BOOL "Enable HYCOM")
set(CICE6 OFF CACHE BOOL "Enable CICE6")
set(LM4 OFF CACHE BOOL "Enable LM4")
set(WW3 OFF CACHE BOOL "Enable WW3")
set(STOCH_PHYS OFF CACHE BOOL "Enable Stochastic Physics")
set(CMEPS OFF CACHE BOOL "Enable CMEPS")
Expand All @@ -48,6 +49,7 @@ message("GOCART ........... ${UFS_GOCART}")
message("MOM6 ............. ${MOM6}")
message("HYCOM ............ ${HYCOM}")
message("CICE6 ............ ${CICE6}")
message("LM4 .............. ${LM4}")
message("WW3 .............. ${WW3}")
message("STOCH_PHYS ....... ${STOCH_PHYS}")
message("CDEPS ............ ${CDEPS}")
Expand Down Expand Up @@ -157,7 +159,7 @@ if(FMS)
elseif (APP MATCHES "^(S2S|S2SA|S2SW|S2SWA|S2SWAL|ATM_DS2S|ATM_DS2S-PCICE|NG-GODAS|HAFS-MOM6|HAFS-MOM6W)$")
add_library(fms ALIAS FMS::fms_r8)
endif()
if(APP MATCHES "^(ATM|ATMAERO|ATMAQ|ATMWM|ATMW|ATML|ATMF|HAFS|HAFS-ALL)$")
if(APP MATCHES "^(ATM|ATMAERO|ATMAQ|ATMWM|ATMW|ATML|ATMF|ATML-LM4|LND-LM4|HAFS|HAFS-ALL)$")
if(32BIT)
add_library(fms ALIAS FMS::fms_r4)
else()
Expand Down Expand Up @@ -256,8 +258,13 @@ if(CDEPS)
endif()

###############################################################################
### Land Components [NOAHMP]
### Land Components [NOAHMP and LM4]
###############################################################################

if (LM4)
add_subdirectory(LM4-driver)
endif()

if(NOAHMP)
add_subdirectory(NOAHMP-interface)
endif()
Expand Down Expand Up @@ -329,6 +336,12 @@ if(CICE6)
list(APPEND _ufs_libs_public cice)
endif()

if (LM4)
add_dependencies(ufs lm4)
list(APPEND _ufs_defs_private FRONT_LM4=lm4_cap_mod)
list(APPEND _ufs_libs_public lm4)
endif()

if(CMEPS)
add_dependencies(ufs cmeps)
list(APPEND _ufs_defs_private CMEPS FRONT_CMEPS=MED)
Expand Down
2 changes: 1 addition & 1 deletion FV3
1 change: 1 addition & 0 deletions LM4-driver
Submodule LM4-driver added at c4d233
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ The top level directory structure groups source code and input files as follow:
| ```FV3/``` | Contains FV3 atmosphere model component including FV3 dynamical core, dynamics to physics driver, physics and IO. |
| ```GOCART/``` | Contains GOCART aerosol model component |
| ```HYCOM-interface/``` | Contains HYCOM ocean model component |
| ```LM4-driver/``` | Contains LM4 land component |
| ```MOM6-interface/``` | Contains MOM6 ocean model component |
| ```NOAHMP-interface/``` | Contains Noah-MP land model component |
| ```WW3/``` | Contains community wave modeling framework WW3 |
Expand Down
13 changes: 12 additions & 1 deletion cmake/configure_apps.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
###############################################################################
### Configure Application Components
###############################################################################
if(APP MATCHES "^(ATM|ATMW|ATMWM|ATMAQ|ATML|ATMF)$")
if(APP MATCHES "^(ATM|ATMW|ATMWM|ATMAQ|ATML|ATMF|ATML-LM4)$")
set(FMS ON CACHE BOOL "Enable FMS" FORCE)
set(FV3 ON CACHE BOOL "Enable FV3" FORCE)
set(STOCH_PHYS ON CACHE BOOL "Enable Stochastic Physics" FORCE)
Expand All @@ -31,6 +31,10 @@ if(APP MATCHES "^(ATM|ATMW|ATMWM|ATMAQ|ATML|ATMF)$")
set(CMEPS ON CACHE BOOL "Enable CMEPS" FORCE)
set(NOAHMP ON CACHE BOOL "Enable NOAHMP" FORCE)
message("Configuring UFS app in Atmosphere with Air Quality mode")
elseif(APP MATCHES "ATML-LM4")
set(CMEPS ON CACHE BOOL "Enable CMEPS" FORCE)
set(LM4 ON CACHE BOOL "Enable LM4" FORCE)
message("Configuring UFS app in Atmosphere with Air Quality mode")
elseif(APP MATCHES "ATMF")
set(FIRE_BEHAVIOR ON CACHE BOOL "Enable Fire Behavior" FORCE)
else()
Expand Down Expand Up @@ -116,3 +120,10 @@ if(APP MATCHES "^(LND)$")
set(CDEPS ON CACHE BOOL "Enable CDEPS" FORCE)
set(NOAHMP ON CACHE BOOL "Enable NOAHMP" FORCE)
endif()

if(APP MATCHES "^(LND-LM4)$")
set(CMEPS ON CACHE BOOL "Enable CMEPS" FORCE)
set(CDEPS ON CACHE BOOL "Enable CDEPS" FORCE)
set(LM4 ON CACHE BOOL "Enable LM4" FORCE)
set(FMS ON CACHE BOOL "Enable FMS" FORCE)
endif()
5 changes: 5 additions & 0 deletions doc/UsersGuide/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,11 @@ help:

.PHONY: help Makefile linkcheck

doc:
make clean
$(MAKE) linkcheck
$(MAKE) html

linkcheck:
$(SPHINXBUILD) -b linkcheck $(SPHINXOPTS) $(SOURCEDIR) $(LINKCHECKDIR)

Expand Down
5 changes: 5 additions & 0 deletions doc/UsersGuide/source/CodeOverview.rst
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,8 @@ The UFS :term:`WM` repository supports the :term:`UFS` short- and medium-range w
- https://github.com/NOAA-EMC/AQM
* - Noah-MP Land Surface Model (Noah-MP)
- https://github.com/NOAA-EMC/noahmp
* - NOAA-GFDL Land Model (:term:`LM4`)
-

In the table, the left-hand column contains a description of each repository, and the
right-hand column shows the GitHub location of the authoritative component repositories.
Expand Down Expand Up @@ -143,6 +145,9 @@ The umbrella repository for the UFS WM is named ``ufs-weather-model``. Under thi
│ └── HYCOM -------- HYCOM ocean model
│ └── (NUOPC) -------- NUOPC HYCOM cap
├── LICENSE.md
├── LM4-driver
│ ├── (LM4) -------- NUOPC NOAA-GFDL Land Model version 4
│ └── (nuopc_cap) -------- NUOPC LM4 cap
├── modulefiles -------- system module files for supported HPC systems
├── MOM6-interface
│ └── MOM6
Expand Down
Loading

0 comments on commit 12ac265

Please sign in to comment.