...
| Info |
|---|
Following the previous paragraph, the natural way to group requests would be:
|
What is the best approach to loop over several hindcastDates for a CMA request?
| Info | ||
|---|---|---|
| ||
for hindcastDate in hindcastDate-list hindcastDateList (eg, 2010-03-01 to 2010-03-31) |
...
| Info | ||
|---|---|---|
| ||
|
| Info | ||
|---|---|---|
| ||
for HindcastYearhindcastYear in HindcastYearshindcastYears |
...
| Code Block | ||
|---|---|---|
| ||
#!/usr/bin/env python
from ecmwfapi import ECMWFDataServer
modelVersionDate = "2014-05-01"
hindcastDate = "2014-04-01" # The selected hindcast date
server = ECMWFDataServer()
server.retrieve({
"class": "s2",
"dataset": "s2s",
"date": ModelVersionDatemodelVersionDate,
"expver": "prod",
"hdate": hindcastDate,
"levtype": "sfc",
"origin": "babj",
"param": "165",
"step": "0",
"stream": "enfh",
"target": "data.cf.sfc",
"time": "00",
"type": "cf",
}) |
...
A web API example requesting data for several hindcastDates (iterating over several hindcastYears, hindcastMonths and hindcastDays)
| Info |
|---|
|
| Code Block | ||
|---|---|---|
| ||
#!/usr/bin/env python
from ecmwfapi import ECMWFDataServer
server = ECMWFDataServer()
def retrieve_data(hindcastDate):
target = "target_s2s_%s.grb" % hindcastDate
server.retrieve({
"class": "s2",
"dataset": "s2s",
"date": "2014-05-01",
"expver": "prod",
"hdate": hindcastDate,
"levtype": "sfc",
"origin": "babj",
"param": "165",
"step": "0",
"stream": "enfh",
"target": target,
"time": "00",
"type": "cf",
})
for hindcastYear in ["2012", "2013"]:
for hindcastMonth in ["08", "09"]:
for hindcastDay in ["01", "02"]:
hindcastDate = hindcastYear+hindcastMonth+hindcastDay
retrieve_data(hindcastDate) |
...