pdn@hawaii_edu
New Member
I'd like to use a 360 day calendar. I was able to install the ESMF library on my cluster successfully and I'm running CESM (1.2.1) with the following parameters on env_build.xml according to the documentation: COMP_INTERFACE = "MCT"USE_ESMF_LIB ="TRUE"ESMF_LIBDIR set to the location of the ESMF library in my cluster. [/b]
[/b]I could not find additional documentation regarding the procedure to configure the ESMF time manager in order to use the ESMF_CAL_360DAY calendar. I don't know if this is possible, so I gave it a try. I compiled CESM with the ESMF library without problems. I got the following error at runtime: ERROR: (shr_cal_calendarName) : calendar not supported : ESMC_CAL_360DAY I took a look at the shr_cal_calendarName function in models/csm_share/shr/shr_cal_mod.F90 where this error is generated. There is a selectcase that gives the error because it is not coded to handle this type of calendar. So from looking at this function I gather that first I need to modify this function so that a 360 calendar is supported. Then I'd need to add a new public parameter to handle 360 character(len=*),parameter,public :: & shr_cal_noleap = 'NO_LEAP', & shr_cal_gregorian = 'GREGORIAN'
something like: shr_cal_360day = '360day'? In other words, it seems like the coupler is coded to handle ESMF's ESMF_CAL_GREGORIAN and ESMF_CAL_NOLEAP and that running CESM with other calendar would involve modification to the code. I was wondering if there is any documentation or general guidelines on how to do this? Thanks in advance for any guidance you could provide.
[/b]I could not find additional documentation regarding the procedure to configure the ESMF time manager in order to use the ESMF_CAL_360DAY calendar. I don't know if this is possible, so I gave it a try. I compiled CESM with the ESMF library without problems. I got the following error at runtime: ERROR: (shr_cal_calendarName) : calendar not supported : ESMC_CAL_360DAY I took a look at the shr_cal_calendarName function in models/csm_share/shr/shr_cal_mod.F90 where this error is generated. There is a selectcase that gives the error because it is not coded to handle this type of calendar. So from looking at this function I gather that first I need to modify this function so that a 360 calendar is supported. Then I'd need to add a new public parameter to handle 360 character(len=*),parameter,public :: & shr_cal_noleap = 'NO_LEAP', & shr_cal_gregorian = 'GREGORIAN'
something like: shr_cal_360day = '360day'? In other words, it seems like the coupler is coded to handle ESMF's ESMF_CAL_GREGORIAN and ESMF_CAL_NOLEAP and that running CESM with other calendar would involve modification to the code. I was wondering if there is any documentation or general guidelines on how to do this? Thanks in advance for any guidance you could provide.