- Timestamp:
- Apr 9, 2019, 8:02:21 PM (7 years ago)
- File:
-
- 1 edited
-
trunk/tools/generic_tools.py (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/tools/generic_tools.py
r2426 r2427 524 524 if days_month(iyr,2) == 29: Nleapdays=Nleapdays+1 525 525 526 527 526 return Nleapdays 528 527 … … 621 620 137880.0 622 621 >>> datetimeStr_conversion('-12357.961','cfTimeCal,days since 1949-12-01 00:00:00,noleap','Y/m/d H-M-S') 623 622 1916/02/09 00-56-09 624 623 """ 625 624 import datetime as dt … … 740 739 removeleap = False 741 740 newdate = advance_cfDate(refdate, timeval, tunits) 742 if days_month(newdate.year,2) == 29: 743 if newdate.month == 2 and newdate.day == 28: 744 removeleap = True 745 elif newdate.month > 2: removeleap = True 741 if int(yrref) <= newdate.year: 742 Nleapd = leapdays(int(yrref), newdate.year) 743 else: 744 Nleapd = leapdays(newdate.year, int(yrref)) 745 removeleap = True 746 746 747 747 if tunits == 'weeks': 748 if removeleap: timeval = timeval - 1./7.748 if removeleap: timeval = timeval + 1./7.*Nleapd 749 749 newdate = refdate + dt.timedelta(weeks=float(timeval)) 750 750 elif tunits == 'days': 751 if removeleap: timeval = timeval - 1.751 if removeleap: timeval = timeval + 1.*Nleapd 752 752 newdate = refdate + dt.timedelta(days=float(timeval)) 753 753 elif tunits == 'hours': 754 if removeleap: timeval = timeval - 1.*24.754 if removeleap: timeval = timeval + 1.*24.*Nleapd 755 755 newdate = refdate + dt.timedelta(hours=float(timeval)) 756 756 elif tunits == 'minutes': 757 757 print 'Lluis here ', removeleap, calendar 758 if removeleap: timeval = timeval - 1.*24.*60.758 if removeleap: timeval = timeval + 1.*24.*60.*Nleapd 759 759 newdate = refdate + dt.timedelta(minutes=float(timeval)) 760 760 elif tunits == 'seconds': 761 if removeleap: timeval = timeval - 1.*24.*3600.761 if removeleap: timeval = timeval + 1.*24.*3600.*Nleapd 762 762 newdate = refdate + dt.timedelta(seconds=float(timeval)) 763 763 elif tunits == 'milliseconds': 764 if removeleap: timeval = timeval - 1.*24.*3600.*1000.764 if removeleap: timeval = timeval + 1.*24.*3600.*1000.*Nleapd 765 765 newdate = refdate + dt.timedelta(milliseconds=float(timeval)) 766 766 else:
Note: See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/LMDZ_WRF/chrome/site/your_project_logo.png)