Skip to content

Commit

Permalink
Merge pull request ESCOMP#184 from fvitt/clm_update
Browse files Browse the repository at this point in the history
cam6_2_042: Update clm external to ctsm1.0.dev107; fix input data issue ESCOMP#175
  • Loading branch information
fvitt committed Aug 18, 2020
2 parents c521a55 + e9de728 commit 15e838a
Show file tree
Hide file tree
Showing 3 changed files with 148 additions and 18 deletions.
5 changes: 2 additions & 3 deletions Externals.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ externals = Externals_CISM.cfg
required = True

[clm]
tag = ctsm1.0.dev105
tag = ctsm1.0.dev107
protocol = git
repo_url = https://github.com/ESCOMP/ctsm
local_path = components/clm
Expand All @@ -35,7 +35,7 @@ required = True
tag = mosart1_0_36
protocol = git
repo_url = https://github.com/ESCOMP/mosart
local_path = components/mosart
local_path = components/mosart
required = True

[rtm]
Expand All @@ -58,4 +58,3 @@ local_path = .
protocol = externals_only
externals = Externals_CAM.cfg
required = True

139 changes: 135 additions & 4 deletions doc/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,5 +1,136 @@
===============================================================

Tag name: cam6_2_042
Originator(s): fvitt
Date: 18 Aug 2020
One-line Summary: Update CLM external; minor fix bug in input data util
Github PR URL: https://github.com/ESCOMP/CAM/pull/184

Purpose of changes (include the issue number and title text for each relevant GitHub issue):

. Update to CSTM dev107 to fix FXHIST failing test #182
. Correct error checking input_data_utils module #175

Describe any changes made to build system:

Describe any changes made to the namelist:

List any changes to the defaults for the boundary datasets:

Describe any substantial timing or memory changes:

Code reviewed by: CAM review team

List all files eliminated:

List all files added and what they do:

List all existing files that have been modified, and describe the changes:

M Externals.cfg
- use clm tag ctsm1.0.dev107
M src/chemistry/utils/input_data_utils.F90
- call endrun only if indexed past the end of the available time records

If there were any failures reported from running test_driver.sh on any test
platform, and checkin with these failures has been OK'd by the gatekeeper,
then copy the lines from the td.*.status files for the failed tests to the
appropriate machine below. All failed tests must be justified.

cheyenne/intel/aux_cam:
ERP_Ld3.f09_f09_mg17.FWHIST.cheyenne_intel.cam-reduced_hist1d (Overall: NLFAIL) details:
FAIL ERP_Ld3.f09_f09_mg17.FWHIST.cheyenne_intel.cam-reduced_hist1d NLCOMP
ERP_Lh12.f19_f19_mg17.FW4madSD.cheyenne_intel.cam-outfrq3h (Overall: DIFF) details:
FAIL ERP_Lh12.f19_f19_mg17.FW4madSD.cheyenne_intel.cam-outfrq3h NLCOMP
FAIL ERP_Lh12.f19_f19_mg17.FW4madSD.cheyenne_intel.cam-outfrq3h BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
ERP_Ln9.C96_C96_mg17.F2000climo.cheyenne_intel.cam-outfrq9s_mg3 (Overall: DIFF) details:
FAIL ERP_Ln9.C96_C96_mg17.F2000climo.cheyenne_intel.cam-outfrq9s_mg3 NLCOMP
FAIL ERP_Ln9.C96_C96_mg17.F2000climo.cheyenne_intel.cam-outfrq9s_mg3 BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
ERP_Ln9.f09_f09_mg17.F1850.cheyenne_intel.cam-outfrq9s (Overall: DIFF) details:
FAIL ERP_Ln9.f09_f09_mg17.F1850.cheyenne_intel.cam-outfrq9s NLCOMP
FAIL ERP_Ln9.f09_f09_mg17.F1850.cheyenne_intel.cam-outfrq9s BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
ERP_Ln9.f09_f09_mg17.F2000climo.cheyenne_intel.cam-outfrq9s (Overall: DIFF) details:
FAIL ERP_Ln9.f09_f09_mg17.F2000climo.cheyenne_intel.cam-outfrq9s NLCOMP
FAIL ERP_Ln9.f09_f09_mg17.F2000climo.cheyenne_intel.cam-outfrq9s BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
ERP_Ln9.f09_f09_mg17.F2000climo.cheyenne_intel.cam-outfrq9s_mg3 (Overall: DIFF) details:
FAIL ERP_Ln9.f09_f09_mg17.F2000climo.cheyenne_intel.cam-outfrq9s_mg3 NLCOMP
FAIL ERP_Ln9.f09_f09_mg17.F2000climo.cheyenne_intel.cam-outfrq9s_mg3 BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
ERP_Ln9.f09_f09_mg17.F2010climo.cheyenne_intel.cam-outfrq9s (Overall: DIFF) details:
FAIL ERP_Ln9.f09_f09_mg17.F2010climo.cheyenne_intel.cam-outfrq9s NLCOMP
FAIL ERP_Ln9.f09_f09_mg17.F2010climo.cheyenne_intel.cam-outfrq9s BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
ERP_Ln9.f09_f09_mg17.FHIST_BDRD.cheyenne_intel.cam-outfrq9s (Overall: DIFF) details:
FAIL ERP_Ln9.f09_f09_mg17.FHIST_BDRD.cheyenne_intel.cam-outfrq9s NLCOMP
FAIL ERP_Ln9.f09_f09_mg17.FHIST_BDRD.cheyenne_intel.cam-outfrq9s BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
ERP_Ln9.f19_f19_mg17.FWsc1850.cheyenne_intel.cam-outfrq9s (Overall: DIFF) details:
FAIL ERP_Ln9.f19_f19_mg17.FWsc1850.cheyenne_intel.cam-outfrq9s NLCOMP
FAIL ERP_Ln9.f19_f19_mg17.FWsc1850.cheyenne_intel.cam-outfrq9s BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
ERP_Ln9.ne30_ne30_mg17.FCnudged.cheyenne_intel.cam-outfrq9s (Overall: DIFF) details:
FAIL ERP_Ln9.ne30_ne30_mg17.FCnudged.cheyenne_intel.cam-outfrq9s NLCOMP
FAIL ERP_Ln9.ne30_ne30_mg17.FCnudged.cheyenne_intel.cam-outfrq9s BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
ERP_Ln9.ne30pg3_ne30pg3_mg17.FW2000climo.cheyenne_intel.cam-outfrq9s_wcm_ne30 (Overall: DIFF) details:
FAIL ERP_Ln9.ne30pg3_ne30pg3_mg17.FW2000climo.cheyenne_intel.cam-outfrq9s_wcm_ne30 NLCOMP
FAIL ERP_Ln9.ne30pg3_ne30pg3_mg17.FW2000climo.cheyenne_intel.cam-outfrq9s_wcm_ne30 BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
ERS_Ln9.f09_f09_mg17.FX2000.cheyenne_intel.cam-outfrq9s (Overall: DIFF) details:
FAIL ERS_Ln9.f09_f09_mg17.FX2000.cheyenne_intel.cam-outfrq9s NLCOMP
FAIL ERS_Ln9.f09_f09_mg17.FX2000.cheyenne_intel.cam-outfrq9s BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
ERS_Ln9.f19_f19_mg17.FSPCAMS.cheyenne_intel.cam-outfrq9s (Overall: DIFF) details:
FAIL ERS_Ln9.f19_f19_mg17.FSPCAMS.cheyenne_intel.cam-outfrq9s NLCOMP
FAIL ERS_Ln9.f19_f19_mg17.FSPCAMS.cheyenne_intel.cam-outfrq9s BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
ERS_Ln9.f19_f19_mg17.FXSD.cheyenne_intel.cam-outfrq9s (Overall: NLFAIL) details:
FAIL ERS_Ln9.f19_f19_mg17.FXSD.cheyenne_intel.cam-outfrq9s NLCOMP
SMS_D_Ln9.f09_f09_mg17.FCts2nudged.cheyenne_intel.cam-outfrq9s_leapday (Overall: DIFF) details:
FAIL SMS_D_Ln9.f09_f09_mg17.FCts2nudged.cheyenne_intel.cam-outfrq9s_leapday NLCOMP
FAIL SMS_D_Ln9.f09_f09_mg17.FCts2nudged.cheyenne_intel.cam-outfrq9s_leapday BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
SMS_D_Ln9.f09_f09_mg17.FCvbsxHIST.cheyenne_intel.cam-outfrq9s (Overall: DIFF) details:
FAIL SMS_D_Ln9.f09_f09_mg17.FCvbsxHIST.cheyenne_intel.cam-outfrq9s NLCOMP
FAIL SMS_D_Ln9.f09_f09_mg17.FCvbsxHIST.cheyenne_intel.cam-outfrq9s BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
SMS_D_Ln9.f09_f09_mg17.FSD.cheyenne_intel.cam-outfrq9s (Overall: DIFF) details:
FAIL SMS_D_Ln9.f09_f09_mg17.FSD.cheyenne_intel.cam-outfrq9s NLCOMP
FAIL SMS_D_Ln9.f09_f09_mg17.FSD.cheyenne_intel.cam-outfrq9s BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
SMS_D_Ln9.f19_f19_mg17.FWma2000climo.cheyenne_intel.cam-outfrq9s (Overall: DIFF) details:
FAIL SMS_D_Ln9.f19_f19_mg17.FWma2000climo.cheyenne_intel.cam-outfrq9s NLCOMP
FAIL SMS_D_Ln9.f19_f19_mg17.FWma2000climo.cheyenne_intel.cam-outfrq9s BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
SMS_D_Ln9.ne0CONUSne30x8_ne0CONUSne30x8_mt12.FCHIST.cheyenne_intel.cam-outfrq9s_refined_camchem (Overall: NLFAIL) details:
FAIL SMS_D_Ln9.ne0CONUSne30x8_ne0CONUSne30x8_mt12.FCHIST.cheyenne_intel.cam-outfrq9s_refined_camchem NLCOMP
SMS_Ld1.f09_f09_mg17.FW2000climo.cheyenne_intel.cam-outfrq1d (Overall: DIFF) details:
FAIL SMS_Ld1.f09_f09_mg17.FW2000climo.cheyenne_intel.cam-outfrq1d NLCOMP
FAIL SMS_Ld1.f09_f09_mg17.FW2000climo.cheyenne_intel.cam-outfrq1d BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
SMS_Ld1.ne30pg3_ne30pg3_mg17.FC2010climo.cheyenne_intel.cam-outfrq1d (Overall: DIFF) details:
FAIL SMS_Ld1.ne30pg3_ne30pg3_mg17.FC2010climo.cheyenne_intel.cam-outfrq1d NLCOMP
FAIL SMS_Ld1.ne30pg3_ne30pg3_mg17.FC2010climo.cheyenne_intel.cam-outfrq1d BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
SMS_Lm13.f10_f10_mg37.F2000climo.cheyenne_intel.cam-outfrq1m (Overall: DIFF) details:
FAIL SMS_Lm13.f10_f10_mg37.F2000climo.cheyenne_intel.cam-outfrq1m NLCOMP
FAIL SMS_Lm13.f10_f10_mg37.F2000climo.cheyenne_intel.cam-outfrq1m BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
SMS_Ln9.f09_f09_mg17.F2010climo.cheyenne_intel.cam-nudging (Overall: DIFF) details:
FAIL SMS_Ln9.f09_f09_mg17.F2010climo.cheyenne_intel.cam-nudging NLCOMP
FAIL SMS_Ln9.f09_f09_mg17.F2010climo.cheyenne_intel.cam-nudging BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
SMS_Ln9.f09_f09_mg17.FW1850.cheyenne_intel.cam-reduced_hist3s (Overall: DIFF) details:
FAIL SMS_Ln9.f09_f09_mg17.FW1850.cheyenne_intel.cam-reduced_hist3s NLCOMP
FAIL SMS_Ln9.f09_f09_mg17.FW1850.cheyenne_intel.cam-reduced_hist3s BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
SMS_Ln9.f19_f19.F2000climo.cheyenne_intel.cam-silhs (Overall: DIFF) details:
FAIL SMS_Ln9.f19_f19.F2000climo.cheyenne_intel.cam-silhs NLCOMP
FAIL SMS_Ln9.f19_f19.F2000climo.cheyenne_intel.cam-silhs BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: DIFF
- Namelist compare failures due to update in CLM IC filename
- Baseline failures due to change in CLM ICs

SMS_D_Ln9.f19_f19_mg17.FXHIST.cheyenne_intel.cam-outfrq9s_amie (Overall: DIFF) details:
FAIL SMS_D_Ln9.f19_f19_mg17.FXHIST.cheyenne_intel.cam-outfrq9s_amie NLCOMP
FAIL SMS_D_Ln9.f19_f19_mg17.FXHIST.cheyenne_intel.cam-outfrq9s_amie BASELINE /glade/p/cesm/amwg/cesm_baselines/cam6_2_041: ERROR BFAIL some baseline files were missing
- No baseline to compare to -- previously run failure

izumi/nag/aux_cam:
SMS_P48x1_D_Ln9.f19_f19_mg17.FW4madSD.izumi_nag.cam-outfrq9s (Overall: DIFF) details:
FAIL SMS_P48x1_D_Ln9.f19_f19_mg17.FW4madSD.izumi_nag.cam-outfrq9s NLCOMP
FAIL SMS_P48x1_D_Ln9.f19_f19_mg17.FW4madSD.izumi_nag.cam-outfrq9s BASELINE /fs/cgd/csm/models/atm/cam/pretag_bl/cam6_2_041_nag: DIFF
- change in CLM IC file

izumi/pgi/aux_cam: All PASS

Summarize any changes to answers: Larger than roundoff due to change in CLM IC file

===============================================================
===============================================================

Tag name: cam6_2_041
Originator(s): fischer
Date: Fri Aug 14 11:19:23 MDT 2020
Expand All @@ -21,14 +152,14 @@ Describe any changes made to build system:
Describe any changes made to the namelist:
. Add new WACCM aquaplanet use_case.
. Add ic file for T42 with a start date of 901.
. Don't set solar_const for WACCM/cam4 aquaplanet test.
. Don't set solar_const for WACCM/cam4 aquaplanet test.


List any changes to the defaults for the boundary datasets:

Describe any substantial timing or memory changes:

Code reviewed by: cacraig, eaton, fvitt, goldy, nusbaume
Code reviewed by: cacraig, eaton, fvitt, goldy, nusbaume

List all files eliminated:

Expand Down Expand Up @@ -596,7 +727,7 @@ List all files added and what they do:

List all existing files that have been modified, and describe the changes:
M Externals.cfg
- update externals
- update externals

If there were any failures reported from running test_driver.sh on any test
platform, and checkin with these failures has been OK'd by the gatekeeper,
Expand Down Expand Up @@ -671,7 +802,7 @@ List all files added and what they do:

List all existing files that have been modified, and describe the changes:
M Externals.cfg
- update externals
- update externals

If there were any failures reported from running test_driver.sh on any test
platform, and checkin with these failures has been OK'd by the gatekeeper,
Expand Down
22 changes: 11 additions & 11 deletions src/chemistry/utils/input_data_utils.F90
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ module input_data_utils
use pio, only : PIO_NOWRITE, PIO_BCAST_ERROR, PIO_INTERNAL_ERROR, PIO_NOERR
use time_manager, only : timemgr_get_calendar_cf, set_time_float_from_date, get_curr_date
use spmd_utils, only : masterproc

implicit none

private
Expand Down Expand Up @@ -134,7 +134,7 @@ subroutine initialize( this, filepath, fixed, fixed_ymd, fixed_tod, force_time_i
! check the calendar attribute - must match model calendar
model_calendar = timemgr_get_calendar_cf()

if (this%ntimes>2) then
if (this%ntimes>2) then
! if only 2 time records then it is assumed that the input has 2 identical time records
! -- climatological or solar-cycle avaraged

Expand Down Expand Up @@ -181,7 +181,7 @@ subroutine initialize( this, filepath, fixed, fixed_ymd, fixed_tod, force_time_i
ierr = pio_inq_varid( fileid, 'time_bnds', varid )

use_time_bnds = (ierr==PIO_NOERR .and. .not.force_interp)

if (use_time_bnds) then
allocate ( this%time_bnds( 2, this%ntimes ) )
allocate ( time_bnds_file( 2, this%ntimes ) )
Expand Down Expand Up @@ -239,13 +239,13 @@ subroutine initialize( this, filepath, fixed, fixed_ymd, fixed_tod, force_time_i
! time_bnds_modl - time_bnds_file = times_modl - times_file
! time_bnds_modl = time_bnds_file + times_modl - times_file
this%times(:) = times_modl(:)
if (use_time_bnds) then
if (use_time_bnds) then
this%time_bnds(1,:) = time_bnds_file(1,:) + times_modl(:) - times_file(:)
this%time_bnds(2,:) = time_bnds_file(2,:) + times_modl(:) - times_file(:)
endif
else if (use_time) then
this%times(:) = times_file(:)
if (use_time_bnds) then
if (use_time_bnds) then
this%time_bnds(1,:) = time_bnds_file(1,:)
this%time_bnds(2,:) = time_bnds_file(2,:)
endif
Expand Down Expand Up @@ -303,14 +303,14 @@ end function read_more
!-----------------------------------------------------------------------------
subroutine destroy( this )
class(time_coordinate), intent(inout) :: this

if (allocated(this%times)) deallocate(this%times)
if (allocated(this%time_bnds)) deallocate(this%time_bnds)
this%ntimes = 0
this%filename='NONE'

end subroutine destroy

!-----------------------------------------------------------------------------
! produce a duplicate time coordinate object
!-----------------------------------------------------------------------------
Expand Down Expand Up @@ -351,7 +351,7 @@ subroutine set_wghts_indices(obj)
integer :: index, i
character(len=cl) :: errmsg

! set time indices and time-interpolation weights
! set time indices and time-interpolation weights
fixed_time: if (obj%fixed) then
yr = obj%fixed_ymd/10000
mon = (obj%fixed_ymd-yr*10000) / 100
Expand Down Expand Up @@ -398,7 +398,7 @@ subroutine set_wghts_indices(obj)
endif
endif

if (.not.(index>0.and.index<obj%ntimes)) then
if (.not.(index>0.and.index<=obj%ntimes)) then
errmsg = 'input_data_utils::set_wghts_indices cannot not find time indices for input file: '&
// trim(obj%filename)
write(iulog,*) trim(errmsg)
Expand All @@ -410,7 +410,7 @@ subroutine set_wghts_indices(obj)
obj%wghts(1) = 1._r8 - obj%wghts(2)
else
obj%wghts(1) = 1._r8
obj%wghts(2) = 0._r8
obj%wghts(2) = 0._r8
endif

end subroutine set_wghts_indices
Expand Down Expand Up @@ -459,7 +459,7 @@ subroutine convert_dates( dates, secs, times )

integer :: year, month, day, sec,n ,i

n = size( dates )
n = size( dates )

do i=1,n
year = dates(i)/10000
Expand Down

0 comments on commit 15e838a

Please sign in to comment.