Cmip Time
FakeDT
Bases: object
Source code in isca_tools/run/cmip_time.py
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 |
|
__init__(dates, units='hours since 1800-01-01 00:00:00', calendar='standard')
An object created to mimic the behavior of a pandas DatetimeIndex
object, but
one that allows for dates from non-standard calendars (e.g. 360 day or no leap).
Copied from Isca code.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
dates
|
ndarray
|
Array or list of |
required |
units
|
str
|
Time units (e.g. |
'hours since 1800-01-01 00:00:00'
|
calendar
|
str
|
Calendar to which |
'standard'
|
Source code in isca_tools/run/cmip_time.py
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
|
get_loc(date)
FakeDT class method for returning the index of a particular date raises KeyError if the date is not found. Uses bisection method
Parameters:
Name | Type | Description | Default |
---|---|---|---|
date
|
datetime
|
|
required |
Returns:
Type | Description |
---|---|
int
|
Index of |
Source code in isca_tools/run/cmip_time.py
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 |
|
day_number_to_date(time_in, calendar='360_day', time_units='days since 0001-01-01 00:00:00')
Aim is to make the time array have attributes like .month, or .year etc. This doesn't work with normal datetime objects, so FakeDT does this for you. First step is to turn input times into an array of datetime objects, and then FakeDT makes the array have the attributes of the elements themselves.
Based on Isca code.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
time_in
|
ndarray
|
Array of dates with units of |
required |
calendar
|
str
|
Calendar that the dates in |
'360_day'
|
time_units
|
str
|
time units in the form |
'days since 0001-01-01 00:00:00'
|
Returns:
Type | Description |
---|---|
FakeDT
|
Dates given in |
Source code in isca_tools/run/cmip_time.py
119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 |
|