get_curr_calday out of bounds

Hi,

what could be the reason that my CLM3.5 run is terminated with

calday = -16652819.3086227
ENDRUN:get_curr_calday: error get_curr_calday out of bounds
MPI_Abort: error code = 1

?

KlausE
 

erik

Erik Kluzek
CSEG and Liaisons
Staff member
Hi KlausE

Obviously, something is way wrong. It looks like something probably isn't being initialized in memory correctly, and it's using garbage values from somewhere. You might try using a debugger to track down what is happening and go back through the stack to see what's going on.

What compiler are you using, what platform are you running on (and specific machine info) and what does your namelist look like?

Erik
 
Hi Erik,

I am using the gfortran compiler under Linux on a x86-64 machine.

Here is some information from the debugging process:

File clm_time_manager.F90, row 1156:
Call to subroutine ESMF_TimeGet (in function get_curr_calday) with

"call ESMF_TimeGet( date, dayOfYear_r8=get_curr_calday, rc=rc )"

Argument date:
{ { 10369800, 0, 0}, 2005, 0x9fede0} = { { 10369800, 0, 0}, 2005, 10481120}

The simulation period is 01/06/2005 (one day), hence date%basetime%yr = 2005. However, I do not know, why date%basetime%s = 10369800 (120 d, 30 min) nor why date%calendar = 0x9fede0.
When entering the subroutine ESMF_TimeGet, the debugger says:

__esmf_timemod__esmf_timeget (time=@0x7fff0ad3be80, yy=0x0, yrl=0x0, mm=0x0,
dd=0x0, d=0x0, dl=0x0, h=0x0, m=0x0, s=0x0, sl=0x0, ms=0x0, us=0x0,
ns=0x0, d_=0x0, h_=0x0, m_=0x0, s_=0x0, ms_=0x0, us_=0x0, ns_=0x0, sn=0x0,
sd=0x0, dayofyear=0x0, dayofyear_r8=0x7fff0ad3bef0, dayofyear_intvl=0x0,
timestring=0x0, rc=0x7fff0ad3bf04, _timestring=0)

Variable dayOfYear_r8 has the value 0x7fff0ad3bef0 = 140733375037168!

I guess the error has already happened at this point, but I do not see where and why.

KlausE
 
Back
Top