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

Bring AQM model into UFS & Update MOM6 mixed FMS #1137

Merged
merged 56 commits into from
Apr 4, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
df13065
removed '.' for test'
BrianCurtis-NOAA Jan 14, 2022
f5e31a5
Merge branch 'develop' of https://github.com/ufs-community/ufs-weathe…
BrianCurtis-NOAA Jan 21, 2022
b74c200
Add AQM submodule to integrate NOAA's Air Quality Model embedding
rmontuoro Jan 26, 2022
c7db47a
Enable building AQM within the UFS weather model.
rmontuoro Jan 26, 2022
67db416
Add AQM to the model's driver.
rmontuoro Jan 26, 2022
288f416
Merge branch 'develop' into feature/aqm.
rmontuoro Jan 26, 2022
e48d7e3
Update FV3 submodule to point to forked repository.
rmontuoro Jan 26, 2022
340dd1f
Merge branch 'develop' into feature/aqm
rmontuoro Jan 27, 2022
1042133
Enable driver to run AQM component.
rmontuoro Feb 1, 2022
bc37191
Update AQM submodule.
rmontuoro Feb 1, 2022
b414b28
Add field definitions for coupling with the Air Quality Model (AQM)
rmontuoro Feb 1, 2022
f8ce060
Update FV3 submodule.
rmontuoro Feb 1, 2022
44e2baa
Update FV3 submodule.
rmontuoro Feb 6, 2022
ce2f4ce
Merge branch 'develop' into feature/aqm
rmontuoro Feb 6, 2022
5893934
Update FV3 submodule.
rmontuoro Feb 14, 2022
3cf5e28
Merge branch 'origin/develop' into feature/aqm
rmontuoro Feb 14, 2022
19b309c
Update AQM submodule.
rmontuoro Mar 8, 2022
70fb376
Add 'AQMAQ' app option to build the coupled FV3ATM-AQM system
rmontuoro Mar 8, 2022
fc97366
Update FV3 submodule.
rmontuoro Mar 8, 2022
8d6e51f
Use temporary FMS 2022.01b2 library on Hera/Intel platform.
rmontuoro Mar 9, 2022
ce1ef5c
Merge branch 'develop' of https://github.com/ufs-community/ufs-weathe…
BrianCurtis-NOAA Mar 15, 2022
a6c8997
Merge upstream and bring in rmontuoro changes
BrianCurtis-NOAA Mar 16, 2022
ed7d7b2
Update AQM hash
BrianCurtis-NOAA Mar 16, 2022
5831b34
Update FV3 Hash
BrianCurtis-NOAA Mar 16, 2022
2fd05ad
Merge branch 'develop' of https://github.com/ufs-community/ufs-weathe…
BrianCurtis-NOAA Mar 16, 2022
959540a
Update AQM to new hash
BrianCurtis-NOAA Mar 16, 2022
b766786
updating AQM
BrianCurtis-NOAA Mar 16, 2022
61d18a3
Bring in AQM changes for successful executable creation
BrianCurtis-NOAA Mar 16, 2022
6bebf49
Move to BrianCurtis-NOAA/fv3atm for FV3 testing
BrianCurtis-NOAA Mar 18, 2022
1f57d3f
Merge branch 'develop' of https://github.com/ufs-community/ufs-weathe…
BrianCurtis-NOAA Mar 18, 2022
9745b0a
Update FV3 hash
BrianCurtis-NOAA Mar 21, 2022
3b229ba
Update AQM hash
BrianCurtis-NOAA Mar 21, 2022
43fbc25
Update FV3 Hash
BrianCurtis-NOAA Mar 23, 2022
46e38ef
Merge conflict with upstream CMakeLists.txt fixed
BrianCurtis-NOAA Mar 23, 2022
082827a
pointing MOM6 to testing branch
jiandewang Mar 29, 2022
608e449
Merge branch 'ufs-community:develop' into feature/update-MOM6-2022032…
jiandewang Mar 29, 2022
e288606
Merge branch 'ufs-community:develop' into feature/update-MOM6-2022032…
jiandewang Mar 30, 2022
cbe0dc9
Merge branch 'ufs-community:develop' into feature/update-MOM6-2022032…
jiandewang Mar 31, 2022
f4bd092
update FV3 hash
BrianCurtis-NOAA Mar 31, 2022
85ea227
Merge branch 'develop' of https://github.com/ufs-community/ufs-weathe…
BrianCurtis-NOAA Mar 31, 2022
7eb59a1
Merge pull request #13 from jiandewang/feature/update-MOM6-20220329-m…
BrianCurtis-NOAA Apr 1, 2022
1ccc6c8
Update PR hash and merge upstream
BrianCurtis-NOAA Apr 4, 2022
636363d
WCOSS Cray RT Passed
BrianCurtis-NOAA Apr 4, 2022
a4796da
[AutoRT] cheyenne.gnu Job Completed.
BrianCurtis-NOAA Apr 4, 2022
64edb4d
Merge branch 'feature/aqm' of https://github.com/BrianCurtis-NOAA/ufs…
BrianCurtis-NOAA Apr 4, 2022
43479f3
[AutoRT] orion.intel Job Completed.
BrianCurtis-NOAA Apr 4, 2022
69c8afe
[AutoRT] hera.gnu Job Completed.
BrianCurtis-NOAA Apr 4, 2022
834c3b3
[AutoRT] cheyenne.intel Job Completed.
BrianCurtis-NOAA Apr 4, 2022
4f0709e
[AutoRT] hera.intel Job Completed.
BrianCurtis-NOAA Apr 4, 2022
0bc5baf
WCOSS Dell P3 RT PAssed
BrianCurtis-NOAA Apr 4, 2022
82ae66e
[AutoRT] gaea.intel Job Completed.
BrianCurtis-NOAA Apr 4, 2022
cb5aa6e
[AutoRT] jet.intel Job Completed.
BrianCurtis-NOAA Apr 4, 2022
c076712
Update FV3 hash to fv3atm/develop
BrianCurtis-NOAA Apr 4, 2022
5b4b927
Update .gitmodules to authoritative repos
BrianCurtis-NOAA Apr 4, 2022
7d3e6dd
Update AQM hash to NOAA-EMC/develop
BrianCurtis-NOAA Apr 4, 2022
3eb60da
Updating MOM6 hash to NOAA-EMC/MOM6 dev/emc
BrianCurtis-NOAA Apr 4, 2022
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
4 changes: 4 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -38,3 +38,7 @@
path = GOCART
url = https://github.com/GEOS-ESM/GOCART
branch = develop
[submodule "AQM"]
path = AQM
url = https://github.com/NOAA-EMC/AQM
branch = develop
1 change: 1 addition & 0 deletions AQM
Submodule AQM added at 79ff7a
17 changes: 16 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,15 @@ list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/CMakeModules/Modules)
###############################################################################

# Valid applications and choices
list(APPEND VALID_APPS ATM ATMAERO ATMW S2S S2SA S2SW S2SWA HAFS HAFSW HAFS-ALL NG-GODAS)
list(APPEND VALID_APPS ATM ATMAERO ATMAQ ATMW S2S S2SA S2SW S2SWA HAFS HAFSW 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}")
endif()

set(FMS OFF CACHE BOOL "Enable FMS")
set(FV3 OFF CACHE BOOL "Enable FV3")
set(AQM OFF CACHE BOOL "Enable AQM")
set(UFS_GOCART OFF CACHE BOOL "Enable GOCART")
set(MOM6 OFF CACHE BOOL "Enable MOM6")
set(HYCOM OFF CACHE BOOL "Enable HYCOM")
Expand All @@ -40,6 +41,7 @@ include(cmake/configure_apps.cmake)
message("")
message("FMS .............. ${FMS}")
message("FV3 .............. ${FV3}")
message("AQM .............. ${AQM}")
message("GOCART ........... ${UFS_GOCART}")
message("MOM6 ............. ${MOM6}")
message("HYCOM ............ ${HYCOM}")
Expand Down Expand Up @@ -144,6 +146,13 @@ if(FV3)
add_subdirectory(FV3)
endif()

###############################################################################
### AQM
###############################################################################
if(AQM)
add_subdirectory(AQM)
endif()

###############################################################################
### GOCART
###############################################################################
Expand Down Expand Up @@ -203,6 +212,12 @@ if(JEDI_DRIVER)
list(APPEND _ufs_defs_private JEDI_DRIVER=ON)
endif()

if(AQM)
add_dependencies(ufs aqm)
list(APPEND _ufs_defs_private FRONT_AQM=aqm)
list(APPEND _ufs_libs_public aqm)
endif()

if(UFS_GOCART)
add_dependencies(ufs UFS_Aerosols)
list(APPEND _ufs_defs_private FRONT_GOCART=Aerosol_Cap)
Expand Down
2 changes: 1 addition & 1 deletion FV3
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

# ufs-weather-model

This is the UFS weather model source code.
This is the UFS weather model source code

# Where to find information

Expand Down
5 changes: 4 additions & 1 deletion cmake/configure_apps.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,16 @@
###############################################################################
### Configure Application Components
###############################################################################
if(APP MATCHES "^(ATM|ATMW)$")
if(APP MATCHES "^(ATM|ATMW|ATMAQ)$")
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)
if(APP MATCHES "ATMW")
set(WW3 ON CACHE BOOL "Enable WAVEWATCH III" FORCE)
message("Configuring UFS app in Atmosphere with Waves mode")
elseif(APP MATCHES "ATMAQ")
set(AQM ON CACHE BOOL "Enable AQM" FORCE)
message("Configuring UFS app in Atmosphere with Air Quality mode")
else()
message("Configuring UFS app in Atmosphere Only mode")
endif()
Expand Down
21 changes: 21 additions & 0 deletions driver/EARTH_GRID_COMP.F90
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,10 @@ MODULE module_EARTH_GRID_COMP
! - Handle build time IPM options:
#ifdef FRONT_IPE
use FRONT_IPE, only: IPE_SS => SetServices
#endif
! - Handle build time AQM options:
#ifdef FRONT_AQM
use FRONT_AQM, only: AQM_SS => SetServices
#endif
! - Handle build time GOCART options:
#ifdef FRONT_GOCART
Expand Down Expand Up @@ -489,6 +493,23 @@ subroutine SetModelServices(driver, rc)
found_comp = .true.
end if
#endif
#ifdef FRONT_AQM
if (trim(model) == "aqm") then
!TODO: Remove bail code and pass info and SetVM to DriverAddComp
!TODO: once component supports threading.
if (ompNumThreads > 1) then
write (msg, *) "ESMF-aware threading NOT implemented for model: "//&
trim(model)
call ESMF_LogSetError(ESMF_RC_NOT_VALID, msg=msg, line=__LINE__, &
file=__FILE__, rcToReturn=rc)
return ! bail out
endif
call NUOPC_DriverAddComp(driver, trim(prefix), AQM_SS, &
petList=petList, comp=comp, rc=rc)
if (ChkErr(rc,__LINE__,u_FILE_u)) return
found_comp = .true.
end if
#endif
#ifdef FRONT_GOCART
if (trim(model) == "gocart") then
!TODO: Remove bail code and pass info and SetVM to DriverAddComp
Expand Down
Loading