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

Merge May 16 ufs-community develop to gsl/develop #138

Merged
Show file tree
Hide file tree
Changes from 140 commits
Commits
Show all changes
141 commits
Select commit Hold shift + click to select a range
bc6c5f6
Add ufs driver. Remove NEMS submodule. Update CMEPS. Update CDEPS. Fe…
DusanJovic-NOAA Dec 16, 2021
c9b399c
fv3atm cap cleanup (#954)
DusanJovic-NOAA Dec 17, 2021
4d613c5
CCPP cloud cover change for Thompson MP associated with Xu Randall, s…
climbfuji Dec 20, 2021
18becb9
ccpp-physics #806, #807, #813, and ort modifications (#970)
MinsukJi-NOAA Dec 21, 2021
803e03a
Wrapper for ccpp-physics #808 and 816 (roughness length over ice and …
grantfirl Dec 23, 2021
3d995d7
Use 'model set run clock' routine in FV3 NUOPC cap. (#967)
DusanJovic-NOAA Dec 27, 2021
8bf5a83
Revert iovr=4 (exponential cloud overlap method) in RRTMG (#963)
mzhangw Dec 28, 2021
e9155a9
Add fhzero ort test (#977)
MinsukJi-NOAA Dec 28, 2021
629be05
Add a new CDEPS test to use GSFv16 data mode in CDEPS ,update rt_week…
binli2337 Dec 29, 2021
538a074
Bug fixes for WAM physics and regression tests, remove duplicate modu…
climbfuji Dec 30, 2021
58ab0e2
Update global inline post for outputting foundation temperature (#968)
WenMeng-NOAA Jan 3, 2022
0f047b2
Regression test bug fixes for running on Jet or with Rocoto (#981)
SamuelTrahanNOAA Jan 5, 2022
d956727
MYNN sfclay (RAP suite) restart reproducibility (#984)
climbfuji Jan 7, 2022
afa30f3
fixes on initializing snow over fractional ice and GFS_surface_compo…
SMoorthi-emc Jan 10, 2022
1eef87e
Radar-derived microphysics temperature tendencies similar to operatio…
SamuelTrahanNOAA Jan 11, 2022
7246c09
Turn on CICE albedo use by ATM for coupled model; update Prototype te…
DeniseWorthen Jan 13, 2022
937004a
Thompson MP cloud tuning (#1005)
grantfirl Jan 18, 2022
a79a7ca
Add a new HAFS regression test with Thompson MP and GFDL surface laye…
ChunxiZhang-NOAA Jan 19, 2022
a231869
CCPP: Update consistency checks and effective radii calculation for T…
climbfuji Jan 20, 2022
18cfa16
Rremove nems_datm related code, update CDEPS, and remove run director…
binli2337 Jan 21, 2022
467bad3
Add fhzero ort to coupled tests (#1009)
MinsukJi-NOAA Jan 24, 2022
cf16bc4
Unified write_netcdf, add single file 'cubed_sphere_grid' output (#1011)
DusanJovic-NOAA Jan 25, 2022
4604d70
Change standard name and unit of CCPP error flag variable in CCPP fra…
climbfuji Jan 26, 2022
bce0ff3
ESMF managed threading (#1018)
junwang-noaa Jan 27, 2022
7131138
sync-ww3 (#1026)
aliabdolali Jan 28, 2022
4682914
Revisions to repair iovr=5 cloud overlap option (#1025)
grantfirl Jan 31, 2022
7b24880
2D decomposition on write grid, bug fix in FV3GFS_IO.F90, and quad pr…
junwang-noaa Feb 2, 2022
14a76ad
Update CMEPS for wave coupling (#1034)
DeniseWorthen Feb 3, 2022
2c78da0
4DIAU bug fix when iau_filter_increments=T (#990)
jswhit Feb 4, 2022
4a42680
Add lsm_cold_start variable for RUC LSM SCM support and gwdps bugfix …
grantfirl Feb 8, 2022
cad761d
Update esmf 821b04 (#1041)
DusanJovic-NOAA Feb 10, 2022
dce9936
Multiple output (nested) grids from fv3atm (#1044)
DusanJovic-NOAA Feb 15, 2022
2a410c7
GPU-enabled version of Grell-Freitas convection in ccpp-physics (#1043)
DomHeinzeller Feb 16, 2022
9bd6397
Enable Thompson microphysics with UFS-Aerosols and update GOCART (#1049)
rmontuoro Feb 22, 2022
e593349
Add support for Stochastically Perturbed Parameterizations (SPP) in F…
JeffBeck-NOAA Feb 24, 2022
92c9d4f
Update CICE; add support for restart test when running single RT (was…
DeniseWorthen Feb 24, 2022
34a5895
lateral boundary fix for regional runs (#1050)
MatthewPyle-NOAA Feb 25, 2022
38aa634
Feature: NSSL Microphysics support (#1032)
grantfirl Mar 4, 2022
9b6b740
p8b (with aerosols) (#1071)
JessicaMeixner-NOAA Mar 10, 2022
96a9933
Split CCPP finalize into physics_finalize and (framework) finalize, f…
climbfuji Mar 11, 2022
10a616d
add a cdeps test using GFSv16 input data (#1070)
binli2337 Mar 14, 2022
e028578
CMAKE for WW3 (#1089)
JessicaMeixner-NOAA Mar 16, 2022
d1f2ded
Add 'valid time' variable using ISO string format (#1073)
DusanJovic-NOAA Mar 17, 2022
0a685fd
Add hi-res regional test on small domain (#1084)
RatkoVasic-NOAA Mar 18, 2022
af1e026
Fix Lambert Conformal Conic mapping in the write component on the sou…
DusanJovic-NOAA Mar 18, 2022
1bd68ca
Rectify total number of Thompson MP species and add UFS-Aerosols to S…
rmontuoro Mar 22, 2022
a46c7ed
Add a cdeps test and update mom6, fv3, and weekly tests (#1136)
binli2337 Mar 24, 2022
c26e980
update submodule pointer for fv3atm
joeolson42 Mar 25, 2022
d4cfac8
Update fms to 2021.04 (#1135)
DusanJovic-NOAA Mar 26, 2022
8ce7e18
land surface upgrades for p8 (#1095)
HelinWei-NOAA Mar 29, 2022
995fed5
P8c: Added capability for cdmbgwd(1) to scale GSL blocking drag (#1110)
mdtoyNOAA Mar 30, 2022
6b1787f
Update ESMF to version 8.3.0bs09 (#1146)
DusanJovic-NOAA Mar 31, 2022
aec234c
Update rrfs conus regression tests to compute fluxes.
SamuelTrahanNOAA Mar 31, 2022
e7f8216
Remove nst_anl and a comment from the rrfs_conus13km_hrrr.nml.IN name…
SamuelTrahanNOAA Mar 31, 2022
7c23151
release/p8c: updated the TKE-EDMF PBL and saSAS cumulus scheme plus b…
ChunxiZhang-NOAA Apr 4, 2022
96dffa1
Bring AQM model into UFS & Update MOM6 mixed FMS (#1137)
BrianCurtis-NOAA Apr 4, 2022
1834d5a
Radiation changes for prototype 8 (#1090)
dustinswales Apr 8, 2022
c2e6b22
HAFS moving-nesting related developments (#1104)
BinLiu-NOAA Apr 11, 2022
cb84926
fv3atm: Split GFS_typedefs.F90, rename CCPP_interstitial, import ccpp…
climbfuji Apr 12, 2022
d334a60
Close MOM6 1deg at j=1; Update input-data for P8c (#909)
DeniseWorthen Apr 18, 2022
88fed2b
Fix uninitialized min_rand variable in Thompson MP when using SPP (#1…
JeffBeck-NOAA Apr 20, 2022
55d867c
A bug fix for wet scavenging of aerosols and a minor modification for…
ChunxiZhang-NOAA Apr 21, 2022
5abaed5
point to one_scheme_to_one_file PR branch (#1175)
grantfirl Apr 22, 2022
587f21a
merge ufs-community develop
SamuelTrahanNOAA Apr 22, 2022
37e8407
Point to gsl/merge-develop for FV3
SamuelTrahanNOAA Apr 22, 2022
f6e4b4c
Changes missing from prior commit
SamuelTrahanNOAA Apr 22, 2022
cd65c87
use community version of hafs_regional_atm
SamuelTrahanNOAA Apr 22, 2022
d0fa1d2
merge rt.sh changes
SamuelTrahanNOAA Apr 22, 2022
af08a3a
Point to gsl/merge-develop-to-community branch for FV3
SamuelTrahanNOAA Apr 22, 2022
a651651
Revert gsl-specific changes to rt.sh
SamuelTrahanNOAA Apr 22, 2022
b0969bd
Corrections to prior merge
SamuelTrahanNOAA Apr 23, 2022
cedbccc
Merge remote-tracking branch 'joe/mynn2' into gsl/merge-develop-to-co…
SamuelTrahanNOAA Apr 23, 2022
c09a15b
corrections to FV3_HRRR tests
SamuelTrahanNOAA Apr 26, 2022
39bae17
Add rrfs_smoke_conus13km_hrrr_warm test
SamuelTrahanNOAA Apr 26, 2022
24d51dc
Add FV3_HRRR_smoke to rt builds
SamuelTrahanNOAA Apr 26, 2022
b9cb3cd
Correct nst and domains_stack_size in rrfs_conus13km_hrrr.nml.IN
SamuelTrahanNOAA Apr 26, 2022
fa72f5f
Set SFCLAY_COMPUTE_FLUX=.true. for rrfs_smoke tests
SamuelTrahanNOAA Apr 26, 2022
df1f837
hera.gnu tests passed
SamuelTrahanNOAA Apr 26, 2022
9fb8421
Hera BUILD_WALLTIME of 1 hour due to occasional extreme contention fo…
SamuelTrahanNOAA Apr 26, 2022
c93f32f
hera intel tests passed
SamuelTrahanNOAA Apr 26, 2022
825454f
Jet tests passed
SamuelTrahanNOAA Apr 26, 2022
05034b5
Update from latest develop, and correct .gitmodules
SamuelTrahanNOAA Apr 27, 2022
49b5971
Revert gsl-specific change to rt.sh
SamuelTrahanNOAA Apr 27, 2022
96ad236
Point FV3/.gitmodules to Sam's fork
SamuelTrahanNOAA Apr 27, 2022
a56c728
Correct issues found by reviewers in ccpp-physics and fv3atm
SamuelTrahanNOAA Apr 27, 2022
c9c56bc
Rename mynnpbl to mynnedmf in fv3atm and ccpp-physics
SamuelTrahanNOAA Apr 27, 2022
6a66584
FV3: Remove some empty _init and _finalize routines and update a comm…
SamuelTrahanNOAA Apr 27, 2022
9bf10ca
Feature/lndp noahmp2 : add land perturbation scheme for Noah-MP fract…
ClaraDraper-NOAA Apr 28, 2022
c60febb
Add \file to smoke files
SamuelTrahanNOAA Apr 28, 2022
dedf86c
Update CDEPS component, add hailcast code in FV3/atmos_cubed_sphere a…
binli2337 Apr 29, 2022
07edf4c
Update CMEPS; Add gocart userguide (was #1182) (#1189)
DeniseWorthen May 2, 2022
846f0e4
Combine PROD and REPRO build options into 'Release' build type (#1171)
DusanJovic-NOAA May 3, 2022
f09e45b
Unify inline post interfaces (#1181)
WenMeng-NOAA May 5, 2022
36df1c9
adding bug fix from jili dong and removing U* averaging
SamuelTrahanNOAA May 5, 2022
354c688
adding bug fix from jili dong and removing U* averaging
SamuelTrahanNOAA May 5, 2022
caad347
merge community/develop
SamuelTrahanNOAA May 5, 2022
41803df
Hera tests passed.
SamuelTrahanNOAA May 5, 2022
3fbe88a
Remove some commented-out code from cu_gf_driver in ccpp-physics.
SamuelTrahanNOAA May 6, 2022
1c59d3c
In FV3, turn rrtmg smoke band 10 into a model namelist variable
SamuelTrahanNOAA May 6, 2022
61e574d
Switch ccpp-physics smoke arguments to implied shape
SamuelTrahanNOAA May 6, 2022
2576bb5
Remove some stops and gotos from ccpp-physics rrfs-smoke
SamuelTrahanNOAA May 6, 2022
4e0dce6
In FV3, remove some hard-coded constants and rename some meta entries
SamuelTrahanNOAA May 9, 2022
0ab6890
In FV3, rename some standard_names, change a unit, and remove a "use …
SamuelTrahanNOAA May 9, 2022
0ee3448
Updated settings for NoahMP, Thompson and RRTMGP in RTs (#1196)
ChunxiZhang-NOAA May 9, 2022
38f4f6a
Compute petlist bounds for each subcomponent from number of tasks. Up…
DusanJovic-NOAA May 10, 2022
b751b8d
NSSL ccpp-physics bugfixes and new ccpp-framework debugging feature (…
grantfirl May 11, 2022
2804ed4
Merge develop
SamuelTrahanNOAA May 11, 2022
a895715
hera.gnu tests passed
SamuelTrahanNOAA May 12, 2022
c402b8b
hera.intel tests passed
SamuelTrahanNOAA May 12, 2022
acd867f
jet intel tests passed
SamuelTrahanNOAA May 12, 2022
d99b371
merge develop
SamuelTrahanNOAA May 13, 2022
5c31491
merge remote branch
SamuelTrahanNOAA May 13, 2022
e6e63c1
hera.gnu tests passed.
SamuelTrahanNOAA May 13, 2022
18333c2
fv3atm: Only add cnv_3d_ud_mf to the restart files when needed
SamuelTrahanNOAA May 13, 2022
840a10e
More warnings not to change the conus13km tests
SamuelTrahanNOAA May 13, 2022
ff806f6
adjust BL_DATE in rt.sh to 20220516
SamuelTrahanNOAA May 16, 2022
9523d92
WCOSS Cray tests passed
BrianCurtis-NOAA May 16, 2022
35f9347
fv3atm: pass some chemistry varibles to mynn_bl_driver correctly
SamuelTrahanNOAA May 16, 2022
3181eae
Merge branch 'gsl/merge-develop-to-community' of ssh://github.com/Sam…
SamuelTrahanNOAA May 16, 2022
e41e887
[AutoRT] hera.gnu Job Completed.
BrianCurtis-NOAA May 16, 2022
3b29b2f
[AutoRT] hera.intel Job Completed.
BrianCurtis-NOAA May 16, 2022
008e505
[AutoRT] cheyenne.intel Job Completed.
BrianCurtis-NOAA May 16, 2022
49ad855
WCOSS Dell P3 tests passed
BrianCurtis-NOAA May 16, 2022
0cccb04
Correct argument passing within mynn edmf
SamuelTrahanNOAA May 16, 2022
cde74a7
[AutoRT] gaea.intel Job Completed.
BrianCurtis-NOAA May 16, 2022
9af7a6e
[AutoRT] cheyenne.gnu Job Completed.
BrianCurtis-NOAA May 16, 2022
97f6330
Orion RT Passed
BrianCurtis-NOAA May 17, 2022
a24d067
[AutoRT] jet.intel Job Completed.
BrianCurtis-NOAA May 17, 2022
63635ae
Point to NOAA-EMC develop for FV3
SamuelTrahanNOAA May 17, 2022
67b3a8a
Unconfuse git
SamuelTrahanNOAA May 17, 2022
5c2d1a9
merge gsl institutional fork (#1195)
SamuelTrahanNOAA May 17, 2022
f776528
Merge remote-tracking branch 'community/develop' into gsl/merge-commu…
SamuelTrahanNOAA May 17, 2022
7ac3c70
update FV3 to top of gsl/merge-community-to-develop
SamuelTrahanNOAA May 17, 2022
909ff22
FV3: point to sam's repo
SamuelTrahanNOAA May 17, 2022
fa0039d
Point to GSL baseline areas
SamuelTrahanNOAA May 17, 2022
877b783
FV3/ccpp/physics: Change to GSL CODEOWNERS
SamuelTrahanNOAA May 17, 2022
b91dadc
hera.gnu tests passed
SamuelTrahanNOAA May 18, 2022
2bef871
hera.intel passed
SamuelTrahanNOAA May 18, 2022
da6e97f
jet.intel tests passed
SamuelTrahanNOAA May 18, 2022
b47ad59
Set regression test path to GSL areas on Hera
SamuelTrahanNOAA May 18, 2022
b14db7a
FV3: Returned the comments on soil resistance back.
SamuelTrahanNOAA May 18, 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
8 changes: 6 additions & 2 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[submodule "FV3"]
path = FV3
url = https://github.com/NOAA-GSL/fv3atm
branch = gsl/develop
url = ssh://git@github.com/SamuelTrahanNOAA/fv3atm
branch = gsl/merge-community-to-develop
[submodule "WW3"]
path = WW3
url = https://github.com/NOAA-EMC/WW3
Expand Down 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
5 changes: 4 additions & 1 deletion CDEPS-interface/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
# CDEPS compiler flags
if(CMAKE_Fortran_COMPILER_ID MATCHES "GNU")
set(CMAKE_Fortran_FLAGS "-g -fbacktrace -ffree-line-length-none")
if(${CMAKE_Fortran_COMPILER_VERSION} VERSION_GREATER_EQUAL 10)
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fallow-argument-mismatch -fallow-invalid-boz")
endif()
set(CMAKE_Fortran_FLAGS_RELEASE "-O2")
set(CMAKE_Fortran_FLAGS_DEBUG "-O0 -fcheck=bounds -ffpe-trap=invalid,zero,overflow,underflow" )
elseif(CMAKE_Fortran_COMPILER_ID MATCHES "Intel")
Expand Down Expand Up @@ -69,7 +72,7 @@ add_dependencies(docn share streams dshr)
set_target_properties(docn PROPERTIES Fortran_MODULE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/mod)
target_include_directories(docn PRIVATE $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/mod>)
target_link_libraries(docn PRIVATE dshr share streams)
target_link_libraries(docn PRIVATE esmf)
target_link_libraries(docn PRIVATE esmf PIO::PIO_Fortran)

# CDEPS/drof
add_library(drof OBJECT ${cdeps_drof_files})
Expand Down
2 changes: 1 addition & 1 deletion CICE-interface/CICE
Submodule CICE updated 114 files
52 changes: 24 additions & 28 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.18)
cmake_minimum_required(VERSION 3.19)

project(ufs
VERSION 1.0
Expand All @@ -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 S2SW 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 All @@ -60,9 +62,9 @@ set(DEBUG OFF CACHE BOOL "Enable DEBUG mode")
set(DEBUG_LINKMPI ON CACHE BOOL "Enable linkmpi option when DEBUG mode is on")
set(INLINE_POST OFF CACHE BOOL "Enable inline post")
set(MULTI_GASES OFF CACHE BOOL "Enable MULTI_GASES")
set(MOVING_NEST OFF CACHE BOOL "Enable moving nest code")
set(OPENMP ON CACHE BOOL "Enable OpenMP threading")
set(PARALLEL_NETCDF OFF CACHE BOOL "Enable parallel NetCDF")
set(REPRO OFF CACHE BOOL "Enable REPRO mode")
set(JEDI_DRIVER OFF CACHE BOOL "Enable JEDI as top level driver")

set(CMAKE_Platform $ENV{CMAKE_Platform})
Expand All @@ -84,9 +86,9 @@ message("DEBUG ............ ${DEBUG}")
message("DEBUG_LINKMPI .... ${DEBUG_LINKMPI}")
message("INLINE_POST ...... ${INLINE_POST}")
message("MULTI_GASES ...... ${MULTI_GASES}")
message("MOVING_NEST ...... ${MOVING_NEST}")
message("OPENMP ........... ${OPENMP}")
message("PARALLEL_NETCDF .. ${PARALLEL_NETCDF}")
message("REPRO ............ ${REPRO}")
message("JEDI_DRIVER ...... ${JEDI_DRIVER}")
message("")

Expand Down Expand Up @@ -144,6 +146,13 @@ if(FV3)
add_subdirectory(FV3)
endif()

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

###############################################################################
### GOCART
###############################################################################
Expand All @@ -155,27 +164,10 @@ endif()
### Wave components [WW3]
###############################################################################
if(WW3)
if(CMAKE_Platform)
if(${CMAKE_Platform} MATCHES "linux*" OR ${CMAKE_Platform} MATCHES "macosx*")
if (CMAKE_Fortran_COMPILER_ID MATCHES "GNU")
set(WW3_COMP "gnu")
elseif (CMAKE_Fortran_COMPILER_ID MATCHES "Intel")
set(WW3_COMP "intel")
endif()
else()
set(WW3_COMP ${CMAKE_Platform})
endif()
endif()
message("Build WW3:")
message(" run: ${CMAKE_BUILD_TOOL} WW3_PARCOMPN=4 WW3_COMP=${WW3_COMP} ww3_nemslibonly")
message(" in: ${CMAKE_CURRENT_SOURCE_DIR}/WW3/model/esmf")
message("")

add_custom_target(ww3_nems
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/WW3/model/esmf
COMMAND ${CMAKE_BUILD_TOOL} WW3_PARCOMPN=4 WW3_COMP=${WW3_COMP} ww3_nemslibonly > ${CMAKE_CURRENT_BINARY_DIR}/ww3_make.log 2>&1)

set(WW3_LIBS ${CMAKE_CURRENT_SOURCE_DIR}/WW3/model/obj/libww3_multi_esmf.a)
# Set options for WW3 build
set(SWITCH "multi_esmf" CACHE STRING "Default to switch_multi_esmf")
set(MULTI_ESMF ON CACHE BOOL "Enable ESMF for WW3")
add_subdirectory(WW3)
endif()

###############################################################################
Expand Down Expand Up @@ -220,17 +212,21 @@ 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)
list(APPEND _ufs_libs_public UFS_Aerosols)
endif()

if(WW3)
add_dependencies(ufs ww3_nems)
list(APPEND _ufs_defs_private FRONT_WW3=WMESMFMD)
target_include_directories(ufs PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/WW3/model/mod)
list(APPEND _ufs_libs_public ${WW3_LIBS})
target_link_libraries(ufs PUBLIC WW3::WW3)
endif()

list(APPEND _ufs_libs_public esmf)
Expand Down
2 changes: 1 addition & 1 deletion FV3
Submodule FV3 updated 124 files
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
2 changes: 1 addition & 1 deletion WW3
Submodule WW3 updated 175 files
21 changes: 2 additions & 19 deletions cmake/GNU.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -12,24 +12,7 @@ if(DEBUG)
add_definitions(-DDEBUG)
set(CMAKE_Fortran_FLAGS_DEBUG "${CMAKE_Fortran_FLAGS_DEBUG} -O0 -fno-unsafe-math-optimizations -frounding-math -fsignaling-nans -ffpe-trap=invalid,zero,overflow -fbounds-check")
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0")
elseif(REPRO)
add_definitions(-DREPRO)
if (APPLE)
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -O0")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O0")
else()
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -O2")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2")
endif()
else()
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -O2")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2")
set(CMAKE_Fortran_FLAGS_RELEASE "-O2")
set(CMAKE_C_FLAGS_RELEASE "-O2")
endif()

# For ccpp
set(CMAKE_C_FLAGS_RELEASE "-O2 -fPIC" CACHE STRING "" FORCE)
set(CMAKE_CXX_FLAGS_RELEASE "-O2 -fPIC" CACHE STRING "" FORCE)
set(CMAKE_Fortran_FLAGS_RELEASE "-O2 -fPIC" CACHE STRING "" FORCE)
set(CMAKE_C_FLAGS_BITFORBIT "-O2 -fPIC" CACHE STRING "" FORCE)
set(CMAKE_CXX_FLAGS_BITFORBIT "-O2 -fPIC" CACHE STRING "" FORCE)
set(CMAKE_Fortran_FLAGS_BITFORBIT "-O2 -fPIC" CACHE STRING "" FORCE)
35 changes: 10 additions & 25 deletions cmake/Intel.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -16,38 +16,23 @@ if(DEBUG)
endif()
endif()
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -O0 -ftrapuv")
elseif(REPRO)
add_definitions(-DREPRO)
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -O2 -debug minimal -fp-model consistent -qoverride-limits")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2 -debug minimal")
else()
if(32BIT)
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -O2 -debug minimal -fp-model source -qoverride-limits -qopt-prefetch=3")
else()
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -O2 -debug minimal -fp-model source -qoverride-limits -qopt-prefetch=3 -no-prec-div -no-prec-sqrt")
endif()
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2 -debug minimal")
set(CMAKE_Fortran_FLAGS_RELEASE "-O2 -debug minimal -qoverride-limits")
set(CMAKE_Fortran_FLAGS_RELEASE "${CMAKE_Fortran_FLAGS_RELEASE} -fp-model consistent")
set(CMAKE_C_FLAGS_RELEASE "-O2 -debug minimal")
set(FAST "-fast-transcendentals")
if(AVX2)
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -march=core-avx2")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -march=core-avx2")
set(CMAKE_Fortran_FLAGS_RELEASE "${CMAKE_Fortran_FLAGS_RELEASE} -march=core-avx2")
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -march=core-avx2")
elseif(SIMDMULTIARCH)
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -axSSE4.2,CORE-AVX2")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -axSSE4.2,CORE-AVX2")
elseif(AVX)
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -march=core-avx-i")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -march=core-avx-i")
set(CMAKE_Fortran_FLAGS_RELEASE "${CMAKE_Fortran_FLAGS_RELEASE} -axSSE4.2,CORE-AVX2")
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -axSSE4.2,CORE-AVX2")
elseif(AVX)
set(CMAKE_Fortran_FLAGS_RELEASE "${CMAKE_Fortran_FLAGS_RELEASE} -march=core-avx-i")
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -march=core-avx-i")
endif()
endif()

# For ccpp
set(CMAKE_C_FLAGS_RELEASE "-O2 -fPIC" CACHE STRING "" FORCE)
set(CMAKE_CXX_FLAGS_RELEASE "-O2 -fPIC" CACHE STRING "" FORCE)
set(CMAKE_Fortran_FLAGS_RELEASE "-O2 -fPIC" CACHE STRING "" FORCE)
set(CMAKE_C_FLAGS_BITFORBIT "-O2 -fPIC" CACHE STRING "" FORCE)
set(CMAKE_CXX_FLAGS_BITFORBIT "-O2 -fPIC" CACHE STRING "" FORCE)
set(CMAKE_Fortran_FLAGS_BITFORBIT "-O2 -fPIC" CACHE STRING "" FORCE)

if(APPLE)
# The linker on macOS does not include `common symbols` by default
# Passing the -c flag includes them and fixes an error with undefined symbols
Expand Down
23 changes: 17 additions & 6 deletions 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 All @@ -35,19 +38,27 @@ if(APP MATCHES "^(NG-GODAS)$")
message("Configuring UFS app in (CDEPS) Data Atmosphere mode")
endif()

if(APP MATCHES "^(S2S|S2SW)$")
if(APP MATCHES "^(S2S|S2SA|S2SW|S2SWA)$")
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")
if(APP MATCHES "^S2SW")
set(WW3 ON CACHE BOOL "Enable WAVEWATCH III" FORCE)
message("Configuring UFS app in S2S with Waves mode")
else()
message("Configuring UFS app in S2S mode")
string(CONCAT APP_MSG ${APP_MSG} " with Waves")
endif()
if(APP MATCHES "A$")
set(UFS_GOCART ON CACHE BOOL "Enable GOCART" FORCE)
if(WW3)
string(CONCAT APP_MSG ${APP_MSG} " and Aerosols")
else()
string(CONCAT APP_MSG ${APP_MSG} " with Aerosols")
endif()
endif()
message("${APP_MSG} mode")
endif()

if(APP MATCHES "^(HAFS|HAFSW|HAFS-ALL)$")
Expand Down
11 changes: 6 additions & 5 deletions doc/UsersGuide/source/CodeOverview.rst
Original file line number Diff line number Diff line change
Expand Up @@ -40,13 +40,13 @@ The ufs-weather-model repository supports the short- and medium-range UFS applic
- https://github.com/NOAA-EMC/CICE
* - NOAA/NCEP WAVEWATCH III Model (WW3)
- https://github.com/NOAA-EMC/WW3
* - The Goddard Chemistry Aerosol Radiation and Transport (GOCART)
- https://github.com/GEOS-ESM/GOCART
* - NUOPC Community Mediator for Earth Prediction Systems (CMEPS)
- https://github.com/NOAA-EMC/CMEPS
* - Community Data Models for Earth Prediction Systems (CDEPS)
- https://github.com/NOAA-EMC/CDEPS

.. TODO:: GOCART information in progress

In the table, the left column contains a description of each repository, and the right column shows the component repositories which are pointing to (or will point to) the authoritative repositories. The ufs-weather-model currently uses git submodule to manage the sub-components.

The umbrella repository for the UFS Weather Model is named ufs-weather-model. Under this repository reside a number of submodules that are nested in specific directories under the parent repository’s working directory. When the ufs-weather-model repository is cloned, the *.gitmodules* file creates the following directories:
Expand All @@ -68,6 +68,7 @@ The umbrella repository for the UFS Weather Model is named ufs-weather-model. U
├── CICE-interface
│ └── CICE https://github.com/NOAA-EMC/CICE
├── WW3 https://github.com/NOAA-EMC/WW3
├── GOCART https://github.com/GEOS-ESM/GOCART
├── CMEPS-interface
│ └── CMEPS https://github.com/NOAA-EMC/CMEPS
├── CDEPS-interface
Expand Down Expand Up @@ -118,6 +119,8 @@ When the ufs-weather-model is cloned, the basic directory structure will be simi
├── WW3
│ └── model --------- WW3 model
│ └── esmf --------- NUOPC WW3 cap
├── GOCART
│ └── ESMF --------- GOCART model
├── CDEPS-interface
│ └── CDEPS
│ ├── datm --------- CDEPS DATM
Expand All @@ -126,9 +129,7 @@ When the ufs-weather-model is cloned, the basic directory structure will be simi
├── tests -------- regression test infrastructure
│ └── parm
│ └── tests
│ └── fv3_conf

.. TODO:: GOCART information in progress
│ └── fv3_conf

The physics subdirectory in the *gfsphysics* directory is not used or supported
as part of this release (all physics is available through the :term:`CCPP` using
Expand Down
Loading