python-awips/examples/GetGridTimes.md
2016-03-11 15:05:01 -07:00

63 lines
17 KiB
Markdown

```python
#!python
import numpy as np
from awips.dataaccess import DataAccessLayer
#Initiate a new DataRequest
request = DataAccessLayer.newDataRequest()
#Set the datatype to grid so it knows what plugin to route the request too
request.setDatatype("grid")
#Use setLocationNames to set the model we want data from
request.setLocationNames('RUC130')
#Next we set the variable and level of data we want
request.setParameters("T")
request.setLevels("850MB")
#getAvailableTimes allows us to query what times are available based off of the
#model, parameter, and levels we have previously identified. These are of the type
#dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime.
t = DataAccessLayer.getAvailableTimes(request)
print t
#Loop through each DataTime object in our returned list and print the RefTime and ValidPeriod
#See dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime for methods available
#with this object
for each in t:
print each.getRefTime(),each.getValidPeriod()
```
getAvailableTimes() returns a list of !DataTime objects and the print statement above would show something like this:
```python
[<dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b3bd0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b3cd0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b3dd0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b3ed0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b3fd0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b1110>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b1210>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b1310>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b1410>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b1510>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b1610>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b1710>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b1810>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b1910>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b1a10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b1b10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b1c10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b1d10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b1e10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b1f10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131a050>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131a150>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x12b3790>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131a290>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131a390>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131a490>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131a590>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131a690>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131a790>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131a890>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131a990>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131aa90>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131ab90>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131ac90>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131ad90>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131ae90>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131af90>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131e0d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131e1d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131e2d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131e3d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131e4d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131e5d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131e6d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131e7d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131e8d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131e9d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131ead0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131ebd0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131ecd0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131edd0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131eed0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x131efd0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1320110>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1320210>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1320310>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1320410>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1320510>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1320610>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1320710>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1320810>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1320910>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1320a10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1320b10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1320c10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1320d10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1320e10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1320f10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323050>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323150>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323250>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323350>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323450>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323550>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323650>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323750>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323850>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323950>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323a50>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323b50>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323c50>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323d50>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323e50>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1323f50>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326090>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326190>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326290>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326390>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326490>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326590>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326690>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326790>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326890>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326990>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326a90>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326b90>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326c90>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326d90>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326e90>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1326f90>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x13280d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x13281d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x13282d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x13283d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x13284d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x13285d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x13286d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x13287d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x13288d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x13289d0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1328ad0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1328bd0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1328cd0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1328dd0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1328ed0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1328fd0>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132a110>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132a210>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132a310>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132a410>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132a510>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132a610>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132a710>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132a810>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132a910>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132aa10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132ab10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132ac10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132ad10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132ae10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132af10>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132f050>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132f150>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132f250>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132f350>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132f450>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132f550>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132f650>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132f750>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132f850>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132f950>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132fa50>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132fb50>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132fc50>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132fd50>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132fe50>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x132ff50>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1331090>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1331190>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1331290>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1331390>, <dynamicserialize.dstypes.com.raytheon.uf.common.time.DataTime.DataTime object at 0x1331490>]
```
There are methods on the !DataTime object to pull out specific information...for example in the loop above we go through each !DataTime object and print out
the !RefTime and !ValidPeriod
```python
Apr 28 15 07:00:00 GMT (Apr 28 15 07:00:00 , Apr 28 15 07:00:00 )
Apr 28 15 08:00:00 GMT (Apr 28 15 08:00:00 , Apr 28 15 08:00:00 )
Apr 28 15 07:00:00 GMT (Apr 28 15 08:00:00 , Apr 28 15 08:00:00 )
Apr 28 15 09:00:00 GMT (Apr 28 15 09:00:00 , Apr 28 15 09:00:00 )
Apr 28 15 08:00:00 GMT (Apr 28 15 09:00:00 , Apr 28 15 09:00:00 )
Apr 28 15 07:00:00 GMT (Apr 28 15 09:00:00 , Apr 28 15 09:00:00 )
Apr 28 15 10:00:00 GMT (Apr 28 15 10:00:00 , Apr 28 15 10:00:00 )
Apr 28 15 09:00:00 GMT (Apr 28 15 10:00:00 , Apr 28 15 10:00:00 )
Apr 28 15 08:00:00 GMT (Apr 28 15 10:00:00 , Apr 28 15 10:00:00 )
Apr 28 15 07:00:00 GMT (Apr 28 15 10:00:00 , Apr 28 15 10:00:00 )
Apr 28 15 11:00:00 GMT (Apr 28 15 11:00:00 , Apr 28 15 11:00:00 )
Apr 28 15 10:00:00 GMT (Apr 28 15 11:00:00 , Apr 28 15 11:00:00 )
Apr 28 15 09:00:00 GMT (Apr 28 15 11:00:00 , Apr 28 15 11:00:00 )
Apr 28 15 08:00:00 GMT (Apr 28 15 11:00:00 , Apr 28 15 11:00:00 )
Apr 28 15 07:00:00 GMT (Apr 28 15 11:00:00 , Apr 28 15 11:00:00 )
Apr 28 15 12:00:00 GMT (Apr 28 15 12:00:00 , Apr 28 15 12:00:00 )
Apr 28 15 11:00:00 GMT (Apr 28 15 12:00:00 , Apr 28 15 12:00:00 )
Apr 28 15 10:00:00 GMT (Apr 28 15 12:00:00 , Apr 28 15 12:00:00 )
Apr 28 15 09:00:00 GMT (Apr 28 15 12:00:00 , Apr 28 15 12:00:00 )
Apr 28 15 08:00:00 GMT (Apr 28 15 12:00:00 , Apr 28 15 12:00:00 )
Apr 28 15 07:00:00 GMT (Apr 28 15 12:00:00 , Apr 28 15 12:00:00 )
Apr 28 15 13:00:00 GMT (Apr 28 15 13:00:00 , Apr 28 15 13:00:00 )
Apr 28 15 12:00:00 GMT (Apr 28 15 13:00:00 , Apr 28 15 13:00:00 )
...
```