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 gsl/develop to RRFS_dev #126

Merged
Show file tree
Hide file tree
Changes from 8 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
2 changes: 1 addition & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# PR Checklist

- [ ] Ths PR is up-to-date with the top of all sub-component repositories except for those sub-components which are the subject of this PR. Please consult the ufs-weather-model [wiki](https://github.com/ufs-community/ufs-weather-model/wiki/Making-code-changes-in-the-UFS-weather-model-and-its-subcomponents) if you are unsure how to do this.
- [ ] This PR is up-to-date with the top of all sub-component repositories except for those sub-components which are the subject of this PR. Please consult the ufs-weather-model [wiki](https://github.com/ufs-community/ufs-weather-model/wiki/Making-code-changes-in-the-UFS-weather-model-and-its-subcomponents) if you are unsure how to do this.

- [ ] This PR has been tested using a branch which is up-to-date with the top of all sub-component repositories except for those sub-components which are the subject of this PR

Expand Down
4 changes: 0 additions & 4 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,6 @@
path = FV3
url = https://github.com/NOAA-GSL/fv3atm
branch = RRFS_dev
[submodule "NEMS"]
path = NEMS
url = https://github.com/NOAA-EMC/NEMS
branch = develop
[submodule "WW3"]
path = WW3
url = https://github.com/NOAA-EMC/WW3
Expand Down
1 change: 1 addition & 0 deletions CDEPS-interface/cdeps_files.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ list(APPEND cdeps_datm_files
CDEPS/datm/datm_datamode_cplhist_mod.F90
CDEPS/datm/datm_datamode_era5_mod.F90
CDEPS/datm/datm_datamode_gefs_mod.F90
CDEPS/datm/datm_datamode_gfs_mod.F90
CDEPS/datm/datm_datamode_jra_mod.F90
)

Expand Down
2 changes: 1 addition & 1 deletion CICE-interface/CICE
Submodule CICE updated 30 files
+1 −1 cicecore/cicedynB/analysis/ice_diagnostics.F90
+16 −13 cicecore/cicedynB/analysis/ice_history.F90
+17 −14 cicecore/cicedynB/analysis/ice_history_bgc.F90
+16 −14 cicecore/cicedynB/analysis/ice_history_drag.F90
+16 −13 cicecore/cicedynB/analysis/ice_history_fsd.F90
+16 −13 cicecore/cicedynB/analysis/ice_history_mechred.F90
+16 −13 cicecore/cicedynB/analysis/ice_history_pond.F90
+24 −22 cicecore/cicedynB/analysis/ice_history_snow.F90
+17 −17 cicecore/cicedynB/dynamics/ice_transport_remap.F90
+142 −41 cicecore/cicedynB/general/ice_init.F90
+15 −12 cicecore/cicedynB/infrastructure/ice_domain.F90
+10 −1 cicecore/cicedynB/infrastructure/io/io_pio2/ice_restart.F90
+16 −11 cicecore/drivers/mct/cesm1/ice_prescribed_mod.F90
+1 −5 cicecore/drivers/nuopc/cmeps/CICE_InitMod.F90
+10 −10 cicecore/drivers/nuopc/cmeps/CICE_RunMod.F90
+112 −76 cicecore/drivers/nuopc/cmeps/ice_comp_nuopc.F90
+3 −1 cicecore/drivers/nuopc/cmeps/ice_import_export.F90
+2 −5 cicecore/drivers/nuopc/cmeps/ice_mesh_mod.F90
+14 −13 cicecore/shared/ice_init_column.F90
+20 −1 configuration/scripts/cice.batch.csh
+1 −1 configuration/scripts/cice.launch.csh
+59 −0 configuration/scripts/machines/Macros.narwhal_aocc
+60 −0 configuration/scripts/machines/Macros.narwhal_cray
+67 −0 configuration/scripts/machines/Macros.narwhal_gnu
+57 −0 configuration/scripts/machines/Macros.narwhal_intel
+52 −0 configuration/scripts/machines/env.narwhal_aocc
+53 −0 configuration/scripts/machines/env.narwhal_cray
+52 −0 configuration/scripts/machines/env.narwhal_gnu
+52 −0 configuration/scripts/machines/env.narwhal_intel
+27 −0 configuration/scripts/tests/perf_suite.ts
2 changes: 1 addition & 1 deletion CMEPS-interface/CMEPS
Submodule CMEPS updated 75 files
+9 −14 .github/pull_request_template.md
+153 −0 .github/workflows/srt.yml
+2 −2 CMakeLists.txt
+0 −77 Makefile
+0 −0 cesm/driver/ensemble_driver.F90
+0 −0 cesm/driver/esm.F90
+0 −0 cesm/driver/esmApp.F90
+0 −0 cesm/driver/esm_time_mod.F90
+0 −0 cesm/driver/esm_utils_mod.F90
+0 −0 cesm/driver/t_driver_timers_mod.F90
+0 −0 cesm/driver/util.F90
+2,299 −0 cesm/flux_atmocn/shr_flux_mod.F90
+569 −0 cesm/nuopc_cap_share/glc_elevclass_mod.F90
+0 −0 cesm/nuopc_cap_share/nuopc_shr_methods.F90
+1,220 −0 cesm/nuopc_cap_share/seq_drydep_mod.F90
+76 −0 cesm/nuopc_cap_share/shr_carma_mod.F90
+185 −0 cesm/nuopc_cap_share/shr_expr_parser_mod.F90
+298 −0 cesm/nuopc_cap_share/shr_fire_emis_mod.F90
+310 −0 cesm/nuopc_cap_share/shr_megan_mod.F90
+106 −0 cesm/nuopc_cap_share/shr_ndep_mod.F90
+124 −0 cesm/nuopc_cap_share/shr_ozone_coupling_mod.F90
+3 −3 cime_config/buildexe
+12 −17 cime_config/buildnml
+15 −1 cime_config/config_component.xml
+0 −567 cime_config/config_component_ufs.xml
+49 −32 cime_config/namelist_definition_drv.xml
+2 −1 cime_config/runseq/runseq_general.py
+1 −1 mediator/CMakeLists.txt
+54 −111 mediator/esmFlds.F90
+78 −55 mediator/esmFldsExchange_cesm_mod.F90
+20 −20 mediator/esmFldsExchange_hafs_mod.F90
+79 −6 mediator/esmFldsExchange_nems_mod.F90
+7 −0 mediator/fd_cesm.yaml
+116 −390 mediator/med.F90
+5 −0 mediator/med_constants_mod.F90
+399 −189 mediator/med_diag_mod.F90
+27 −24 mediator/med_fraction_mod.F90
+494 −47 mediator/med_internalstate_mod.F90
+54 −17 mediator/med_io_mod.F90
+72 −59 mediator/med_map_mod.F90
+1 −2 mediator/med_merge_mod.F90
+452 −208 mediator/med_phases_aofluxes_mod.F90
+64 −29 mediator/med_phases_history_mod.F90
+2 −2 mediator/med_phases_ocnalb_mod.F90
+16 −2 mediator/med_phases_post_atm_mod.F90
+57 −30 mediator/med_phases_post_glc_mod.F90
+1 −13 mediator/med_phases_post_ice_mod.F90
+3 −4 mediator/med_phases_post_lnd_mod.F90
+15 −15 mediator/med_phases_post_ocn_mod.F90
+1 −1 mediator/med_phases_post_rof_mod.F90
+1 −1 mediator/med_phases_post_wav_mod.F90
+9 −12 mediator/med_phases_prep_atm_mod.F90
+158 −163 mediator/med_phases_prep_glc_mod.F90
+2 −2 mediator/med_phases_prep_ice_mod.F90
+1 −1 mediator/med_phases_prep_lnd_mod.F90
+1 −3 mediator/med_phases_prep_ocn_mod.F90
+1 −1 mediator/med_phases_prep_rof_mod.F90
+133 −64 mediator/med_phases_prep_wav_mod.F90
+5 −1 mediator/med_phases_profile_mod.F90
+19 −2 mediator/med_phases_restart_mod.F90
+6 −0 ufs/CMakeLists.txt
+28 −83 ufs/flux_atmocn_mod.F90
+2 −2 ufs/glc_elevclass_mod.F90
+0 −0 ufs/perf_mod.F90
+3 −8 ufs/ufs_const_mod.F90
+2 −2 ufs/ufs_kind_mod.F90
+0 −7 util/CMakeLists.txt
+0 −50 util/Makefile
+0 −5 util/dtypes.h
+0 −387 util/genf90.pl
+0 −164 util/shr_abort_mod.F90
+0 −26 util/shr_log_mod.F90
+0 −17 util/shr_mem_mod.F90
+0 −2,217 util/shr_mpi_mod.F90
+0 −320 util/shr_sys_mod.F90
15 changes: 5 additions & 10 deletions CMEPS-interface/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,16 +19,11 @@ else()
endif()

list(APPEND _nems_util_files
CMEPS/util/shr_abort_mod.F90
CMEPS/util/shr_log_mod.F90
CMEPS/util/shr_sys_mod.F90
CMEPS/util/shr_flux_mod.F90
CMEPS/util/shr_mpi_mod.F90
CMEPS/util/glc_elevclass_mod.F90
CMEPS/util/shr_mem_mod.F90
CMEPS/util/shr_kind_mod.F90
CMEPS/util/perf_mod.F90
CMEPS/util/shr_const_mod.F90)
CMEPS/ufs/flux_atmocn_mod.F90
CMEPS/ufs/glc_elevclass_mod.F90
CMEPS/ufs/ufs_kind_mod.F90
CMEPS/ufs/perf_mod.F90
CMEPS/ufs/ufs_const_mod.F90)

list(APPEND _mediator_files
CMEPS/mediator/med_phases_restart_mod.F90
Expand Down
28 changes: 6 additions & 22 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 ATMW S2S S2SW HAFS HAFSW HAFS-ALL NG-GODAS NG-GODAS-NEMSDATM)
list(APPEND VALID_APPS ATM ATMAERO ATMW S2S S2SW 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}")
Expand All @@ -30,7 +30,6 @@ set(HYCOM OFF CACHE BOOL "Enable HYCOM")
set(CICE6 OFF CACHE BOOL "Enable CICE6")
set(WW3 OFF CACHE BOOL "Enable WW3")
set(STOCH_PHYS OFF CACHE BOOL "Enable Stochastic Physics")
set(NEMSdatm OFF CACHE BOOL "Enable NEMSdatm")
set(CMEPS OFF CACHE BOOL "Enable CMEPS")
set(CDEPS OFF CACHE BOOL "Enable CDEPS")

Expand All @@ -47,7 +46,6 @@ message("HYCOM ............ ${HYCOM}")
message("CICE6 ............ ${CICE6}")
message("WW3 .............. ${WW3}")
message("STOCH_PHYS ....... ${STOCH_PHYS}")
message("NEMSdatm ......... ${NEMSdatm}")
message("CDEPS ............ ${CDEPS}")
message("CMEPS ............ ${CMEPS}")

Expand Down Expand Up @@ -81,7 +79,7 @@ endif()
message("")
message("32BIT ............ ${32BIT}")
message("AVX2 ............. ${AVX2}")
message("SIMDMULTIARCH ... ${SIMDMULTIARCH}")
message("SIMDMULTIARCH .... ${SIMDMULTIARCH}")
message("DEBUG ............ ${DEBUG}")
message("DEBUG_LINKMPI .... ${DEBUG_LINKMPI}")
message("INLINE_POST ...... ${INLINE_POST}")
Expand Down Expand Up @@ -203,24 +201,16 @@ if(CMEPS)
endif()

###############################################################################
### Data Components [NEMSdatm, CDEPS]
### Data Components [CDEPS]
###############################################################################
if(NEMSdatm)
add_subdirectory(DATM/DATM)
endif()

if(CDEPS)
add_subdirectory(CDEPS-interface)
endif()

###############################################################################
### UFS Library [NEMS]
### UFS Library
###############################################################################
list(APPEND _nems_srcs NEMS/src/module_EARTH_GRID_COMP.F90
NEMS/src/module_NEMS_Rusage.F90
NEMS/src/nems_c_rusage.c)

add_library(ufs ${_nems_srcs})
add_library(ufs driver/EARTH_GRID_COMP.F90)
set_target_properties(ufs PROPERTIES Fortran_MODULE_DIRECTORY
${CMAKE_CURRENT_BINARY_DIR}/mod)
target_include_directories(ufs INTERFACE $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/mod>
Expand Down Expand Up @@ -249,12 +239,6 @@ if(STOCH_PHYS)
list(APPEND _ufs_libs_public stochastic_physics)
endif()

if(NEMSdatm)
add_dependencies(ufs datatm)
list(APPEND _ufs_defs_private FRONT_NEMS_DATM=datm)
list(APPEND _ufs_libs_public datatm)
endif()

if(FV3)
add_dependencies(ufs fv3atm)
list(APPEND _ufs_defs_private FRONT_FV3=fv3gfs_cap_mod)
Expand Down Expand Up @@ -298,7 +282,7 @@ target_link_libraries(ufs PUBLIC "${_ufs_libs_public}")
###############################################################################
### UFS executable
###############################################################################
add_executable(ufs_model NEMS/src/MAIN_NEMS.F90)
add_executable(ufs_model driver/UFS.F90)
add_dependencies(ufs_model ufs)
target_link_libraries(ufs_model ufs esmf w3nco::w3nco_d)

Expand Down
2 changes: 1 addition & 1 deletion GOCART
Submodule GOCART updated 540 files
1 change: 1 addition & 0 deletions MOM6-interface/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ target_include_directories(mom6_nuopc_obj PRIVATE $<BUILD_INTERFACE:${CMAKE_CURR
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/MOM6/src/framework>)
target_link_libraries(mom6_nuopc_obj PRIVATE mom6_obj
fms
stochastic_physics
esmf)
# OpenMP is disabled in MOM6
#if(OpenMP_Fortran_FOUND)
Expand Down
2 changes: 1 addition & 1 deletion MOM6-interface/MOM6
Submodule MOM6 updated 178 files
6 changes: 5 additions & 1 deletion MOM6-interface/mom6_files.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ list(APPEND mom6_src_files
MOM6/src/core/MOM_interface_heights.F90
MOM6/src/core/MOM_isopycnal_slopes.F90
MOM6/src/core/MOM_open_boundary.F90
MOM6/src/core/MOM_porous_barriers.F90
MOM6/src/core/MOM_transcribe_grid.F90
MOM6/src/core/MOM_unit_tests.F90
MOM6/src/core/MOM_variables.F90
Expand Down Expand Up @@ -181,6 +182,8 @@ list(APPEND mom6_src_files
MOM6/src/parameterizations/CVmix/cvmix_tidal.F90
MOM6/src/parameterizations/CVmix/cvmix_utils.F90

MOM6/src/parameterizations/stochastic/MOM_stochastics.F90

MOM6/src/tracer/DOME_tracer.F90

MOM6/src/tracer/ISOMIP_tracer.F90
Expand Down Expand Up @@ -255,7 +258,8 @@ list(APPEND mom6_src_files
MOM6/config_src/external/ODA_hooks/ocean_da_core.F90
MOM6/config_src/external/ODA_hooks/ocean_da_types.F90
MOM6/config_src/external/ODA_hooks/write_ocean_obs.F90
MOM6/config_src/external/OCEAN_stochastic_phyiscs/MOM_stochastics.F90
MOM6/config_src/external/drifters/MOM_particles.F90
MOM6/config_src/external/drifters/MOM_particles_types.F90

MOM6/config_src/infra/FMS1/MOM_coms_infra.F90
MOM6/config_src/infra/FMS1/MOM_constants.F90
Expand Down
1 change: 0 additions & 1 deletion NEMS
Submodule NEMS deleted from d51fa5
2 changes: 1 addition & 1 deletion WW3
Submodule WW3 updated 52 files
+0 −10 .github/ISSUE_TEMPLATE/add-development-request.md
+2 −2 .github/ISSUE_TEMPLATE/bug_report.md
+8 −0 .github/ISSUE_TEMPLATE/config.yml
+3 −6 .github/ISSUE_TEMPLATE/documentation.md
+26 −22 .github/pull_request_template.md
+2,580 −0 docs/Doxyfile.in
+67 −0 docs/ww3_doxy_tmpl.md
+0 −8 manual/eqs/BT2.tex
+0 −1 manual/makefile
+1 −2 model/bin/build_utils.sh
+1 −1 model/bin/cmplr.env
+1 −1 model/inp/ww3_ounp.inp
+1 −1 model/nml/ww3_ounp.nml
+5 −5 model/nml/ww3_shel.nml
+20 −18 model/src/w3gdatmd.F90
+4 −12 model/src/w3gridmd.F90
+10 −10 model/src/w3initmd.F90
+13 −8 model/src/w3iogrmd.F90
+2 −2 model/src/w3iopomd.F90
+14 −2 model/src/w3iorsmd.F90
+6 −6 model/src/w3iotrmd.F90
+0 −2,449 model/src/w3netcdf.F90
+1 −0 model/src/w3odatmd.F90
+3 −2 model/src/w3ounfmetamd.F90
+2 −2 model/src/w3profsmd.F90
+23 −15 model/src/w3profsmd_pdlib.F90
+1 −1 model/src/w3ref1md.F90
+53 −56 model/src/w3triamd.F90
+24 −62 model/src/w3updtmd.F90
+3 −5 model/src/w3wavemd.F90
+57 −5 model/src/wmesmfmd.F90
+31 −30 model/src/wmgridmd.F90
+8 −8 model/src/wminitmd.F90
+2 −2 model/src/wmiopomd.F90
+20 −20 model/src/wmscrpmd.F90
+16 −16 model/src/wmupdtmd.F90
+3 −3 model/src/ww3_bounc.F90
+3 −3 model/src/ww3_bound.F90
+1 −1 model/src/ww3_gint.F90
+14 −14 model/src/ww3_grib.F90
+3 −3 model/src/ww3_ounf.F90
+19 −15 model/src/ww3_ounp.F90
+59 −5 model/src/ww3_outf.F90
+0 −10 model/src/ww3_outp.F90
+5 −5 model/src/ww3_prep.F90
+6 −6 model/src/ww3_prnc.F90
+2 −2 model/src/ww3_prtide.F90
+1 −7 model/src/ww3_shel.F90
+4 −4 model/src/ww3_strt.F90
+0 −0 model/tools/ftn2src.sh
+1 −1 regtests/bin/matrix.comp
+4 −1 regtests/bin/test.comp
4 changes: 0 additions & 4 deletions build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,9 @@ export CC=${CC:-mpicc}
export CXX=${CXX:-mpicxx}
export FC=${FC:-mpif90}

export ESMFMKFILE=${ESMFMKFILE:?"Please set ESMFMKFILE environment variable"}

BUILD_DIR=${BUILD_DIR:-${UFS_MODEL_DIR}/build}
mkdir -p ${BUILD_DIR}

[[ -n "${MAPL_ROOT:-""}" ]] && CMAKE_FLAGS+=" -DCMAKE_MODULE_PATH=${MAPL_ROOT}/share/MAPL/cmake"

cd ${BUILD_DIR}
cmake ${UFS_MODEL_DIR} ${CMAKE_FLAGS}
# Turn off OpenMP threading for parallel builds
Expand Down
11 changes: 3 additions & 8 deletions cmake/configure_apps.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -25,19 +25,14 @@ if(APP MATCHES "^(ATM|ATMW)$")
endif()
endif()

if(APP MATCHES "^(NG-GODAS|NG-GODAS-NEMSDATM)$")
if(APP MATCHES "^(NG-GODAS)$")
set(CMEPS ON CACHE BOOL "Enable CMEPS" FORCE)
set(STOCH_PHYS ON CACHE BOOL "Enable Stochastic Physics" FORCE)
set(FMS ON CACHE BOOL "Enable FMS" FORCE)
set(MOM6 ON CACHE BOOL "Enable MOM6" FORCE)
set(CICE6 ON CACHE BOOL "Enable CICE6" FORCE)
if(APP MATCHES "NG-GODAS-NEMSDATM")
set(NEMSdatm ON CACHE BOOL "Enable NEMS DataAtm" FORCE)
message("Configuring UFS app in (NEMS) Data Atmosphere mode")
elseif(APP MATCHES "NG-GODAS")
set(CDEPS ON CACHE BOOL "Enable CDEPS" FORCE)
message("Configuring UFS app in (CDEPS) Data Atmosphere mode")
endif()
set(CDEPS ON CACHE BOOL "Enable CDEPS" FORCE)
message("Configuring UFS app in (CDEPS) Data Atmosphere mode")
endif()

if(APP MATCHES "^(S2S|S2SW)$")
Expand Down
4 changes: 0 additions & 4 deletions doc/UsersGuide/source/InputsOutputs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1146,10 +1146,6 @@ shows the following parameters that can be set in *model_configure* at run-time.
- frequency to output restart file or forecast hours to write out restart file
- integer
- 0 (0: write restart file at the end of integration; 12, -1: write out restart every 12 hours; 12 24 write out restart files at fh=12 and 24)
* - atm_coupling_interval_sec
- fast coupling interval in seconds for atmosphere
- real(8)
- 900
* - quilting
- flag to turn on quilt
- logical
Expand Down
Loading