[mpas-developers] MPAS_360DAY calendar option
Ringler, Todd D
ringler at lanl.gov
Thu Mar 1 08:59:08 MST 2012
Hi Conrad, Sounds great. Thanks for the help. Cheers, Todd
On Feb 29, 2012, at 7:22 PM, Conrad Roesch wrote:
Hi Todd,
I have begun modifying the ESMF external libraries to support the 360 day calendar as well as the calendar without leap years. I expect to have these changes wrapped up soon, and I should be ready to check them into the trunk tomorrow.
I will be making one fix that is worth noting as a user of this code: config_calendar_type will now be a character string, as the registry and namelist parsers have no knowledge of the internal integer parameters MPAS_GREGORIAN, MPAS_360DAY, etc.
After this change, the registry entry should look like:
namelist character nhyd_model config_calendar_type MPAS_360DAY
and the corresponding namelist option would be:
config_calendar_type = 'MPAS_360DAY'
Please let me know if you have any questions.
Cheers,
Conrad
On Feb 29, 2012, at 11:19 AM, Michael Duda wrote:
Hi, Todd.
It does seem fitting that we should be looking into calendar issues on Feb. 29.
I've made a cursory pass through the code, and it looks like this may be the
result of an incomplete implementation of calendars in the old ESMF library that
we're using. For example, the following are hard-wired in ESMF_Calendar.F90
INTEGER, PARAMETER :: mday(MONTHS_PER_YEAR) &
= (/31,28,31,30,31,30,31,31,30,31,30,31/)
INTEGER, PARAMETER :: mdayleap(MONTHS_PER_YEAR) &
= (/31,29,31,30,31,30,31,31,30,31,30,31/)
INTEGER, DIMENSION(365) :: daym
INTEGER, DIMENSION(366) :: daymleap
and these are used to determine the month and day of the month for a particular
time instant.
We can scope out the necessary changes to get the 360-day calendar working and
give you an update.
Cheers,
Michael
On Wed, Feb 29, 2012 at 04:34:36PM +0000, Ringler, Todd D wrote:
Hi All,
I think that the 360 days per year option within the ESMF calendar might not be working as expected. I wanted to do a quick scoping here to see if anyone else has had a similar experience or has a quick fix.
The default in our registry is "namelist integer sw_model config_calendar_type MPAS_360DAY". Digging into frameworks/mpas_timekeeping.F, then implies 30 days per month per the following code:
if(TheCalendar == MPAS_360DAY) then
daysInMM = 30
else
if (TheCalendar == MPAS_GREGORIAN .and. isLeapYear(YYYY)) then
daysInMM = daysInMonthLeap(MM)
else
daysInMM = daysInMonth(MM)
end if
end if
Yet when I run with a 30 day interval for restarts, I get
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 28 16:08 restart30km.0001-01-31_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 28 16:55 restart30km.0001-03-02_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 28 17:42 restart30km.0001-04-01_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 28 18:28 restart30km.0001-05-01_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 28 19:15 restart30km.0001-05-31_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 28 20:03 restart30km.0001-06-30_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 28 20:51 restart30km.0001-07-30_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 28 21:46 restart30km.0001-08-29_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 28 22:34 restart30km.0001-09-28_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 28 23:28 restart30km.0001-10-28_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 29 00:23 restart30km.0001-11-27_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 29 01:24 restart30km.0001-12-27_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 29 02:25 restart30km.0002-01-26_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 29 03:21 restart30km.0002-02-25_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 29 04:09 restart30km.0002-03-27_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 29 05:05 restart30km.0002-04-26_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 29 06:08 restart30km.0002-05-26_00:00:00.nc
-rw-rw-r-- 1 ringler ringler 2752773364 Feb 29 07:02 restart30km.0002-06-25_00:00:00.nc
where the restart dates are not consistent with 30 days per month.
Thoughts?
Cheers,
Todd
_______________________________________________
mpas-developers mailing list
mpas-developers at mailman.ucar.edu<mailto:mpas-developers at mailman.ucar.edu>
http://mailman.ucar.edu/mailman/listinfo/mpas-developers
_______________________________________________
mpas-developers mailing list
mpas-developers at mailman.ucar.edu<mailto:mpas-developers at mailman.ucar.edu>
http://mailman.ucar.edu/mailman/listinfo/mpas-developers
_______________________________________________
mpas-developers mailing list
mpas-developers at mailman.ucar.edu<mailto:mpas-developers at mailman.ucar.edu>
http://mailman.ucar.edu/mailman/listinfo/mpas-developers
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/mpas-developers/attachments/20120301/dd8bbefb/attachment.html
More information about the mpas-developers
mailing list