...
Info |
---|
Keep in mind that the most efficient way to organise your requests is per dates and times ie select a set of dates and times and add, the 'steps', 'origins', 'levels' and 'parameters' that you need. It is not efficient to organise your requests per parameter, per origin or per step. (eg to submit a different request per parameter or per origin for a list of dates) |
Code Block | ||
---|---|---|
| ||
#!/usr/bin/env python from ecmwfapi import ECMWFDataServer server = ECMWFDataServer() def retrieve_tigge_data(): dates = ['2014-10-01', '2014-11-01'] times = ['00', '12'] for date in dates: for time in times: target = 'ecmwf_sfc_%s_%s.grb' % (date, time) tigge_pf_sfc_request(date, time, target) target = 'ecmwf_pl_%s_%s.grb' % (date, time) tigge_pf_pl_request(date, time, target) def tigge_pf_pl_request(date, time, target): ''' A TIGGE request for perturbed forecast, pressure level, ECMWF Center. Please note that a subset of the available data is requested below. The cost of this request is xxx fields and xxx GB Change the keywords below to adapt it to your needs. (ie to add more parameters, or numbers etc) ''' server.retrieve({ 'class': 'ti', 'dataset': 'tigge', 'date': date, 'expver': 'prod', 'grid': '0.5/0.5', 'levelist': '200/250/300/500/', 'levtype': 'pl', 'number': '1/TO/10', 'origin': 'ecmf', 'param': '130/131/132/133', 'step': '0/TO/96/BY/12', 'target': target, 'time': time, 'type': 'pf', }) def tigge_pf_sfc_request(date, time, target): ''' A TIGGE request for perturbed forecast, sfc, ECMWF Center. Please note that a subset of the available data is requested below. The cost of this request is xxx fields and xxx GB Change the keywords below to adapt it to your needs. (ie to add more parameters, or numbers etc) ''' server.retrieve({ 'class': 'ti', 'dataset': 'tigge', 'date': date, 'expver': 'prod', 'grid': '0.5/0.5', 'levtype': 'sfc', 'number': '1/TO/10', 'origin': 'ecmf', 'param': '146/147/151/165/166/167/168/176/177', 'step': '0/TO/96/BY/12', 'target': target, 'time': time, 'type': 'pf', }) if __name__ == '__main__': retrieve_tigge_data() |
...
Code Block | ||
---|---|---|
| ||
#!/usr/bin/env python from ecmwfapi import ECMWFDataServer server = ECMWFDataServer() def retrieve_tigge_data(): dates = ['2014-12-01', '2014-12-02'] times = ['00', '12'] for date in dates: for time in times: target = 'tigge_cf_sfc_%s_%s.grb' % (date, time) tigge_cf_sfc_request(date, time, target) def tigge_cf_sfc_request(date, time, target): ''' A TIGGE request for control forecast, sfc, for 3 Centers : ECMWF, JMA and KMA. Keep Youin canmind changethat theif keywordsyou belowwish to adapt it to your needs, (ie to add more parameters, or steps, or even Centers etc), download the same data, for more than one origins, it is more efficient to request all of them in one go. You can Keepchange inthe mindkeywords thatbelow ifto youadapt wishit to your downloadneeds, the same data, for more than one origins,(ie itto isadd more efficientparameters, toor requeststeps, allor ofeven themmore inCenters oneetc), go. Presumably you need to check the availability of the requested Centers. ''' server.retrieve({ 'class': 'ti', 'dataset': 'tigge', 'date': date, 'expver': 'prod', 'grid': '0.5/0.5', 'levtype': 'sfc', 'origin': 'ecmf/rjtd/rksl', 'param': '167/168', 'step': '0/96/168', 'target': target, 'time': time, 'type': 'cf', }) if __name__ == '__main__': retrieve_tigge_data() |
...