-
Notifications
You must be signed in to change notification settings - Fork 92
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'sci.1.80.3_api.37.0.0' into fatesluc_cbasedhrv_v2
Two-stream singularity correction update This implements a more comprehensive avoidance of singularities with two-stream radiation across bands.
- Loading branch information
Showing
144 changed files
with
51,581 additions
and
17,498 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -46,6 +46,10 @@ Thumbs.db | |
*.dvi | ||
*.toc | ||
|
||
# Folders created with unit/functional tests | ||
_build/ | ||
_run/ | ||
|
||
|
||
# Old Files | ||
*~ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
# This is a git submodule file to include additional submodules when FATES is checkout out. | ||
# | ||
# It includes optional additional support for | ||
# git-fleximod (https://github.com/ESMCI/git-fleximod) | ||
# that will be used when git-fleximod is used to check it out (i.e. for CESM) | ||
# | ||
[submodule "tools/landusedata"] | ||
path = tools/landusedata | ||
url = https://github.com/NGEET/tools-fates-landusedata | ||
fxtag = v0.1.1 | ||
fxrequired = AlwaysRequired | ||
# Standard Fork to compare to with "git fleximod test" to ensure personal forks aren't committed | ||
fxDONOTUSEurl = https://github.com/NGEET/tools-fates-landusedata |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,90 @@ | ||
cmake_minimum_required(VERSION 3.4) | ||
|
||
list(APPEND CMAKE_MODULE_PATH ${CIME_CMAKE_MODULE_DIRECTORY}) | ||
|
||
FIND_PATH(NETCDFC_FOUND libnetcdf.a ${NETCDF_C_DIR}/lib) | ||
FIND_PATH(NETCDFF_FOUND libnetcdff.a ${NETCDF_FORTRAN_DIR}/lib) | ||
MESSAGE(" NETCDFC_FOUND = ${NETCDFC_FOUND}") | ||
MESSAGE(" NETCDFF_FOUND = ${NETCDFF_FOUND}") | ||
|
||
string(APPEND LDFLAGS " -L${NETCDF_FORTRAN_DIR}/lib -lnetcdff") | ||
string(APPEND LDFLAGS " -L${NETCDF_C_DIR}/lib -lnetcdf") | ||
|
||
include(CIME_initial_setup) | ||
|
||
project(FATES_tests Fortran C) | ||
|
||
include(CIME_utils) | ||
|
||
set(HLM_ROOT "../../") | ||
|
||
# Add source directories from other share code (csm_share, etc.) | ||
add_subdirectory(${HLM_ROOT}/share/src csm_share) | ||
add_subdirectory(${HLM_ROOT}/share/unit_test_stubs/util csm_share_stubs) | ||
|
||
# Add FATES source directories | ||
add_subdirectory(${HLM_ROOT}/src/fates/main fates_main) | ||
add_subdirectory(${HLM_ROOT}/src/fates/biogeochem fates_biogeochem) | ||
add_subdirectory(${HLM_ROOT}/src/fates/biogeophys fates_biogeophys) | ||
add_subdirectory(${HLM_ROOT}/src/fates/parteh fates_parteh) | ||
add_subdirectory(${HLM_ROOT}/src/fates/fire fates_fire) | ||
add_subdirectory(${HLM_ROOT}/src/fates/radiation fates_radiation) | ||
add_subdirectory(${HLM_ROOT}/src/fates/testing/testing_shr test_share) | ||
|
||
# Remove shr_mpi_mod from share_sources. | ||
# This is needed because we want to use the mock shr_mpi_mod in place of the real one | ||
# | ||
# TODO: this should be moved into a general-purpose function in Sourcelist_utils. | ||
# Then this block of code could be replaced with a single call, like: | ||
# remove_source_file(${share_sources} "shr_mpi_mod.F90") | ||
foreach (sourcefile ${share_sources}) | ||
string(REGEX MATCH "shr_mpi_mod.F90" match_found ${sourcefile}) | ||
if(match_found) | ||
list(REMOVE_ITEM share_sources ${sourcefile}) | ||
endif() | ||
endforeach() | ||
|
||
# Remove shr_cal_mod from share_sources. | ||
# | ||
# shr_cal_mod depends on ESMF (or the lightweight esmf wrf timemgr, at | ||
# least). Since CTSM doesn't currently use shr_cal_mod, we're avoiding | ||
# the extra overhead of including esmf_wrf_timemgr sources in this | ||
# build. | ||
# | ||
# TODO: like above, this should be moved into a general-purpose function | ||
# in Sourcelist_utils. Then this block of code could be replaced with a | ||
# single call, like: remove_source_file(${share_sources} | ||
# "shr_cal_mod.F90") | ||
foreach (sourcefile ${share_sources}) | ||
string(REGEX MATCH "shr_cal_mod.F90" match_found ${sourcefile}) | ||
if(match_found) | ||
list(REMOVE_ITEM share_sources ${sourcefile}) | ||
endif() | ||
endforeach() | ||
|
||
# Build libraries containing stuff needed for the unit tests. | ||
# Eventually, these add_library calls should probably be distributed into the correct location, rather than being in this top-level CMakeLists.txt file. | ||
add_library(csm_share ${share_sources}) | ||
declare_generated_dependencies(csm_share "${share_genf90_sources}") | ||
add_library(fates ${fates_sources}) | ||
add_dependencies(fates csm_share) | ||
|
||
# We need to look for header files here, in order to pick up shr_assert.h | ||
include_directories(${HLM_ROOT}/share/include) | ||
|
||
# This needs to be something we add dynamically | ||
# via some calls using cime | ||
set(NETCDF_C_DIR ${NETCDF_C_PATH}) | ||
set(NETCDF_FORTRAN_DIR ${NETCDF_F_PATH}) | ||
|
||
include_directories(${NETCDF_C_DIR}/include | ||
${NETCDF_FORTRAN_DIR}/include) | ||
link_directories(${NETCDF_C_DIR}/lib | ||
${NETCDF_FORTRAN_DIR}/lib) | ||
|
||
# Tell cmake to look for libraries & mod files here, because this is where we built libraries | ||
include_directories(${CMAKE_CURRENT_BINARY_DIR}) | ||
link_directories(${CMAKE_CURRENT_BINARY_DIR}) | ||
|
||
# Add the main test directory | ||
add_subdirectory(${HLM_ROOT}/src/fates/testing) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
# This file is required for unit testing, but is not used for production runs | ||
list(APPEND fates_sources | ||
FatesLitterMod.F90 | ||
FatesCohortMod.F90 | ||
FatesAllometryMod.F90 | ||
DamageMainMod.F90 | ||
FatesPatchMod.F90) | ||
|
||
sourcelist_to_parent(fates_sources) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.