Skip to content

Commit

Permalink
Merge tag 'cime1.1.10' into geotrace_cime
Browse files Browse the repository at this point in the history
Conflicts:
	scripts/Tools/config_definition.xml

Test suite: none run -- will test via CAM
  • Loading branch information
cacraigucar committed Jan 21, 2016
2 parents 3d72660 + e953182 commit e96f3b2
Show file tree
Hide file tree
Showing 207 changed files with 23,000 additions and 20,488 deletions.
73 changes: 73 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
cmake_minimum_required(VERSION 2.8)
include(ExternalProject)

project(cime_tests Fortran C)

list(APPEND CMAKE_MODULE_PATH ${CESM_CMAKE_MODULE_DIRECTORY})
include(CESM_utils)

set(CIME_ROOT "${CMAKE_CURRENT_SOURCE_DIR}")

# TODO: Some of the below should be done in the relevant directories, not in
# this top level CMakeLists.

# ------------------------------------------------------------------------
# Build mct
# ------------------------------------------------------------------------
set(MCT_ROOT "${CIME_ROOT}/externals/mct")

ExternalProject_add(mct_project
PREFIX ${CMAKE_CURRENT_BINARY_DIR}
SOURCE_DIR ${MCT_ROOT}
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/mct
CONFIGURE_COMMAND ${MCT_ROOT}/configure --enable-mpiserial --enable-debugging --prefix=${CMAKE_CURRENT_BINARY_DIR}
BUILD_COMMAND make SRCDIR=${MCT_ROOT}
# Leave things in <BINARY_DIR> rather than "installing", because mpi-serial
# just doesn't install properly in the out-of-source build, and we have no
# need to move things around inside of the CMake binary directory anyway.
INSTALL_COMMAND :
)
# This copy_makefiles step is needed because mct currently doesn't support an
# out-of-source build. I am replicating what is done for the CIME system build.
ExternalProject_add_step(mct_project copy_makefiles
DEPENDEES configure
DEPENDERS build
WORKING_DIRECTORY <BINARY_DIR>
COMMAND cp -p <SOURCE_DIR>/Makefile .
COMMAND mkdir -p mct
COMMAND cp -p <SOURCE_DIR>/mct/Makefile mct/
COMMAND mkdir -p mpeu
COMMAND cp -p <SOURCE_DIR>/mpeu/Makefile mpeu/
COMMAND mkdir -p mpi-serial
COMMAND cp -p <SOURCE_DIR>/mpi-serial/Makefile mpi-serial/
COMMAND cp <SOURCE_DIR>/mpi-serial/mpif.h mpi-serial/
COMMAND cp <SOURCE_DIR>/mpi-serial/mpi.h mpi-serial/
)

# Tell cmake to look for libraries & mod files here, because this is where we built libraries
include_directories(${CMAKE_CURRENT_BINARY_DIR}/mct/mct)
include_directories(${CMAKE_CURRENT_BINARY_DIR}/mct/mpeu)
include_directories(${CMAKE_CURRENT_BINARY_DIR}/mct/mpi-serial)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/mct/mct)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/mct/mpeu)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/mct/mpi-serial)

# ------------------------------------------------------------------------
# Done MCT build
# ------------------------------------------------------------------------

# Now a bunch of includes for share code.

# csm_share (we don't build it here because it seems to be built differently
# by different tests?)
set(SHARE_ROOT "${CIME_ROOT}/share/csm_share")
add_subdirectory(${SHARE_ROOT}/shr csm_share)
include_directories(${SHARE_ROOT}/include)

# esmf_wrf_timemgr not built here because it depends on csm_share.
add_subdirectory(${CIME_ROOT}/share/esmf_wrf_timemgr esmf_wrf_timemgr)
include_directories(${CIME_ROOT}/share/esmf_wrf_timemgr)

# Now the actual test directories.
add_subdirectory(driver_cpl/unit_test)
add_subdirectory(share/csm_share/test/unit)
31 changes: 31 additions & 0 deletions README
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
The cime directory structure (other than the externals/ directory)
was generated from the following trunk tags:

cime/driver_cpl https://svn-ccsm-models.cgd.ucar.edu/drv/seq_mct/trunk_tags/drvseq5_1_15

cime/components/data_comps/datm https://svn-ccsm-models.cgd.ucar.edu/datm7/trunk_tags/datm8_150310
cime/components/data_comps/dice https://svn-ccsm-models.cgd.ucar.edu/dice7/trunk_tags/dice8_150310
cime/components/data_comps/dlnd https://svn-ccsm-models.cgd.ucar.edu/dlnd7/trunk_tags/dlnd8_150310
cime/components/data_comps/docn https://svn-ccsm-models.cgd.ucar.edu/docn7/trunk_tags/docn8_150310
cime/components/data_comps/drof https://svn-ccsm-models.cgd.ucar.edu/drof/trunk_tags/drof_150310
cime/components/stub_comps https://svn-ccsm-models.cgd.ucar.edu/stubs/trunk_tags/stubs1_4_08
cime/components/xcpl_comps https://svn-ccsm-models.cgd.ucar.edu/dead7/trunk_tags/dead7_8_04

cime/machines https://svn-ccsm-models.cgd.ucar.edu/Machines/trunk_tags/Machines_150309

cime/scripts https://svn-ccsm-models.cgd.ucar.edu/scripts/trunk_tags/scripts_150309

cime/share/csm_share https://svn-ccsm-models.cgd.ucar.edu/csm_share/trunk_tags/share3_150116
cime/share/esmf_wrf_timemgr https://svn-ccsm-models.cgd.ucar.edu/esmf_wrf_timemgr/trunk_tags/esmf_wrf_timemgr_141217
cime/share/timing https://svn-ccsm-models.cgd.ucar.edu/timing/trunk_tags/timing_150302

cime/utils/pythonlib https://svn-ccsm-models.cgd.ucar.edu/scripts/trunk_tags/scripts4_150204/scripts/ccsm_utils/Tools/pythonlib
cime/utils/perl5lib https://svn-ccsm-models.cgd.ucar.edu/perl5lib/trunk_tags/perl5lib_150302

cime/tools/load_balancing_tool https://svn-ccsm-models.cgd.ucar.edu/tools/load_balancing_tool/trunk_tags/load_balancing_tool_141008
cime/tools/unit_testing https://svn-ccsm-models.cgd.ucar.edu/unit_testing/trunk_tags/unit_testing_0_16
cime/tools/statistical_ensemble_test https://svn-ccsm-models.cgd.ucar.edu/validation_testing/trunk_tags/validation_20140708/run_CESM/
cime/tools/mapping https://svn-ccsm-models.cgd.ucar.edu/tools/mapping/trunk_tags/mapping_141106
cime/tools/cprnc https://svn-ccsm-models.cgd.ucar.edu/tools/cprnc/trunk_tags/cprnc_150301


2 changes: 2 additions & 0 deletions README.unit_testing
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# To run all CIME unit tests on yellowstone, run the following command:
tools/unit_testing/run_tests.py --test-spec-dir=. --compiler=intel
4 changes: 2 additions & 2 deletions components/xcpl_comps/xatm/cpl/atm_comp_esmf.F90
Original file line number Diff line number Diff line change
Expand Up @@ -63,8 +63,8 @@ subroutine atm_register_esmf(comp, rc)

implicit none

type(ESMF_GridComp), intent(inout) :: comp
integer, intent(out) :: rc
type(ESMF_GridComp) :: comp
integer, intent(out) :: rc

rc = ESMF_SUCCESS

Expand Down
78 changes: 0 additions & 78 deletions doc/modelnl/index.html

This file was deleted.

1 change: 1 addition & 0 deletions doc/modelnl/index.html
4 changes: 3 additions & 1 deletion doc/usersguide/createcase.xml
Original file line number Diff line number Diff line change
Expand Up @@ -898,7 +898,9 @@ You can edit the xml files directly to change the variable
values. However, modification of the xml variables is best
done using <command>xmlchange</command> in the $&CASEROOT;
directory since it performs variable error checking as part of
changing values in the xml files. To invoke <command> xmlchange</command>:
changing values in the xml files. <command>xmlchange</command>
also records changes to the CaseStatus file for future reference
and reproducibility. To invoke <command> xmlchange</command>:
</para>

<screen>
Expand Down
5 changes: 3 additions & 2 deletions doc/usersguide/faq.xml
Original file line number Diff line number Diff line change
Expand Up @@ -305,8 +305,9 @@ possible to avoid problems running ccsm_getenv later.

<para>
CESM recommends using the xmlchange tool to modify env variables. xmlchange
supports error checking as part of the implementation. Also, using xmlchange
will decrease the chance that typographical errors will creep into the
supports error checking as part of the implementation, and records changes to
the CaseStatus file for future reference and reproducibility. Also, using
xmlchange will decrease the chance that typographical errors will creep into the
xml files. Conversion of the xml files to environment variables can fail
silently with certain xml format errors. To use xmlchange, do, for instance,
</para>
Expand Down
5 changes: 5 additions & 0 deletions driver_cpl/bld/build-namelist
Original file line number Diff line number Diff line change
Expand Up @@ -417,6 +417,11 @@ add_default($nl, 'orb_mode');
add_default($nl, 'orb_iyear');
add_default($nl, 'orb_iyear_align');

add_default($nl, 'wv_sat_scheme');
add_default($nl, 'wv_sat_transition_start');
add_default($nl, 'wv_sat_use_tables');
add_default($nl, 'wv_sat_table_spacing');

add_default($nl, 'budget_inst');
add_default($nl, 'budget_daily');
add_default($nl, 'budget_month');
Expand Down
5 changes: 5 additions & 0 deletions driver_cpl/bld/namelist_files/namelist_defaults_drv.xml
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,11 @@
<orb_iyear>1990</orb_iyear>
<orb_iyear_align>1990</orb_iyear_align>

<wv_sat_scheme>GoffGratch</wv_sat_scheme>
<wv_sat_transition_start>20.0D0</wv_sat_transition_start>
<wv_sat_use_tables>.false.</wv_sat_use_tables>
<wv_sat_table_spacing>1.0D0</wv_sat_table_spacing>

<timing_dir>./timing</timing_dir>

<tchkpt_dir>./timing/checkpoints</tchkpt_dir>
Expand Down
51 changes: 49 additions & 2 deletions driver_cpl/bld/namelist_files/namelist_definition_drv.xml
Original file line number Diff line number Diff line change
Expand Up @@ -352,6 +352,53 @@ default: SHR_ORB_UNDEF_REAL (1.e36)
(Not currently used in build-namelist)
</entry>

<entry
id="wv_sat_scheme"
type="char*16"
category="wv_sat"
group="seq_infodata_inparm"
valid_values="GoffGratch,MurphyKoop,Bolton,Flatau">
Type of water vapor saturation vapor pressure scheme employed. 'GoffGratch' for
Goff and Gratch (1946); 'MurphyKoop' for Murphy and Koop (2005); 'Bolton' for
Bolton (1980); 'Flatau' for Flatau, Walko, and Cotton (1992).
Default: GoffGratch
</entry>

<entry
id="wv_sat_transition_start"
type="real"
category="wv_sat"
group="seq_infodata_inparm">
Width of the liquid-ice transition range in mixed-phase water saturation vapor
pressure calculations. The range always ends at 0 degrees Celsius, so this
variable only affects the start of the transition.
Default: 20K

WARNING: CAM is tuned to the default value of this variable. Because it affects
so many different parameterizations, changes to this variable may require a
significant retuning of CAM's cloud physics to give reasonable results.
</entry>

<entry
id="wv_sat_use_tables"
type="logical"
category="wv_sat"
group="seq_infodata_inparm">
Whether or not to produce lookup tables at init time to use as a cache for
saturation vapor pressure.
Default: .false.
</entry>

<entry
id="wv_sat_table_spacing"
type="real"
category="wv_sat"
group="seq_infodata_inparm">
Temperature resolution of saturation vapor pressure lookup tables in Kelvin.
(This is only used if wv_sat_use_tables is .true.)
Default: 1.0
</entry>

<entry
id="flux_epbal"
type="char*8"
Expand Down Expand Up @@ -529,7 +576,7 @@ id="cpl_seq_option"
type="char*64"
category="expdef"
group="seq_infodata_inparm"
valid_values="CESM1_ORIG,CESM1_MOD,CESM1_ORIG_TIGHT,CESM1_MOD_TIGHT,RASM_OPTION1,RASM_OPTION2"
valid_values="CESM1_ORIG,CESM1_MOD,CESM1_ORIG_TIGHT,CESM1_MOD_TIGHT,RASM_OPTION1,RASM_OPTION2">
Set the coupler sequencing. See CPL_SEQ_OPTION in env_run.
default: CESM1_MOD
</entry>
Expand Down Expand Up @@ -1277,7 +1324,7 @@ type="real"
category="driver"
group="seq_infodata_inparm">
Abort model if coupler timestep wallclock time exceeds this value, ignored if 0,
if < 0 then use abs(max_cplstep_time)*cktime as the threshold.
if &lt; 0 then use abs(max_cplstep_time)*cktime as the threshold.
default: 0
</entry>

Expand Down
Loading

0 comments on commit e96f3b2

Please sign in to comment.