You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

Real-Time Forecasts

ECMWF real-time forecasts are produced twice a week, every Monday and Thursday.  The S2S database contains all the ECMWF real-time forecasts since 1st January 2015.

Real-time forecasts: 1 param, 1 date

Retrieving one field (10 meter U wind here) for all time steps and  for the forecast starting on 1st January 2015:

#!/usr/bin/env python
from ecmwfapi import ECMWFDataServer
server = ECMWFDataServer()
server.retrieve({
    "class": "s2",
    "dataset": "s2s",
    "date": "2015-01-01",
    "expver": "prod",
    "levtype": "sfc",
    "origin": "ecmf",
    "param": "165",
    "step": "0/to/768/by/24",
    "stream": "enfo",
    "target": "CHANGEME",
    "time": "00",
    "type": "cf",
})



 

#!/usr/bin/env python
from ecmwfapi import ECMWFDataServer
server = ECMWFDataServer()
server.retrieve({
    "class": "s2",
    "dataset": "s2s",
    "date": "2015-01-01",
    "expver": "prod",
    "levtype": "sfc",
    "origin": "ecmf",
    "param": "165",
    "step": "0/to/768/by/24",
    "stream": "enfo",
    "target": "CHANGEME",
    "time": "00", 
    "number": "1/to/50",
    "type": "pf",
 })

 

 

Real-time forecasts: 1 param, series of dates

Retrieving  1 field (10m U wind) for all time steps and for the whole January 2015.


#!/usr/bin/env python
from ecmwfapi import ECMWFDataServer
server = ECMWFDataServer()
server.retrieve({
    "class": "s2",
    "dataset": "s2s",
    "date": "2015-01-01/2015-01-05/2015-01-08/2015-01-12/2015-01-15/2015-01-19/2015-01-22/2015-01-26/2015-01-29",
    "expver": "prod",
    "levtype": "sfc",
    "origin": "ecmf",
    "param": "165",
    "step": "0/to/768/by/24",
    "stream": "enfo",
    "target": "CHANGEME",
    "time": "00",
    "type": "cf",
})

 


#!/usr/bin/env python
from ecmwfapi import ECMWFDataServer
server = ECMWFDataServer()
server.retrieve({
    "class": "s2",
    "dataset": "s2s",
    "date": "2015-01-01/2015-01-05/2015-01-08/2015-01-12/2015-01-15/2015-01-19/2015-01-22/2015-01-26/2015-01-29",
    "expver": "prod",
    "levtype": "sfc",
    "origin": "ecmf",
    "param": "165",
    "step": "0/to/768/by/24",
    "stream": "enfo",
    "target": "CHANGEME",
    "time": "00", 
     "number": "1/to/50",
    "type": "pf",
 })

 

Re-forecasts

ECMWF re-forecasts are produced on the fly. This means that every week a new set of re-forecasts is produce to calibrate the real-time ensemble forecast of the following week. The ensemble re-forecasts consist of a 5-member ensemble

starting the same day and month as a Thursday real-time forecast, but covering the past 20 years. For instance the first re-forecast set archived in the S2S database was the re-forecast used to calibrate the real-time forecast of 1st January 2015 (a Thursday).  This set consisted of a 5-member ensemble starting on 1st January 1995, 1st January 1996, ... 1st January 2014 (20 years, 5 member ensemble = 100-member climate ensemble). The re-forecast dataset is therefore updated every week in the S2S archive, and re-forecasts covering all the 4 seasons will only be available at the end of 2015.

The ECMWF re-forecasts are archived in the S2S database using two dates: "date" and "hdate" (see examples below): hdate is the actual date of the re-forecast (e.g. 19950101) while date is the date of the real-time forecast (=ModelversionDate in grib2) associated to the re-forecast (20150101). The reason we need 2 dates is because the ECMWF re-forecasts are produced on the fly and we need to avoid the re-forecasts produced in the future years to overwrite the re-forecasts currently produced. Therefore ModelversionDate  allows us to distinguish the re-forecasts produced in 2015 from those produced in 2016, 2017...  More details on the ECMWF model and re-forecast configuration can be found here.

Re- forecasts: 1 param, 1 date

Retrieving  1 field (10m U wind) for all time steps and for the 1st January 2014


#!/usr/bin/env python
from ecmwfapi import ECMWFDataServer
server = ECMWFDataServer()
server.retrieve({
    "class": "s2",
    "dataset": "s2s",
    "hdate": "2014-01-01",
    "date": "2015-01-01",
    "expver": "prod",
    "levtype": "sfc",
    "origin": "ecmf",
    "param": "165",
    "step": "0/to/768/by/24",
    "stream": "enfh",
    "target": "CHANGEME",
    "time": "00",
    "type": "cf",
})

 


#!/usr/bin/env python
from ecmwfapi import ECMWFDataServer
server = ECMWFDataServer()
server.retrieve({
    "class": "s2",
    "dataset": "s2s",
    "hdate": "2014-01-01",
    "date": "2015-01-01",
    "expver": "prod",
    "levtype": "sfc",
    "origin": "ecmf",
    "param": "165",
    "step": "0/to/768/by/24",
    "stream": "enfh",
    "target": "CHANGEME",
    "time": "00", 
     "number": "1/2/3/4",
    "type": "pf",
 })

 

Re- forecasts used to calibrate a Thursday real-time forecast:

Retrieving  1 param (10m U wind) for all time steps and used to calibrate the 1st January 2015 real-time forecast (Thursday).


#!/usr/bin/env python
from ecmwfapi import ECMWFDataServer
server = ECMWFDataServer()
server.retrieve({
    "class": "s2",
    "dataset": "s2s",
    "hdate": "1995-01-01/1996-01-01/1997-01-01/1998-01-01/1999-01-01/2000-01-01/2001-01-01/2002-01-01/2003-01-01/2004-01-01/2005-01-01/2006-01-01/2007-01-01/2008-01-01/2009-01-01/2010-01-01/2011-01-01/2012-01-01/2013-01-01/2014-01-01",
    "date": "2015-01-01",
    "expver": "prod",
    "levtype": "sfc",
    "origin": "ecmf",
    "param": "165",
    "step": "0/to/768/by/24",
    "stream": "enfh",
    "target": "CHANGEME",
    "time": "00",
    "type": "cf",
})

 


#!/usr/bin/env python
from ecmwfapi import ECMWFDataServer
server = ECMWFDataServer()
server.retrieve({
    "class": "s2",
    "dataset": "s2s",
    "hdate": "1995-01-01/1996-01-01/1997-01-01/1998-01-01/1999-01-01/2000-01-01/2001-01-01/2002-01-01/2003-01-01/2004-01-01/2005-01-01/2006-01-01/2007-01-01/2008-01-01/2009-01-01/2010-01-01/2011-01-01/2012-01-01/2013-01-01/2014-01-01",
    "date": "2015-01-01",
    "expver": "prod",
    "levtype": "sfc",
    "origin": "ecmf",
    "param": "165",
    "step": "0/to/768/by/24",
    "stream": "enfh",
    "target": "CHANGEME",
    "number": "1/2/3/4",
    "time": "00",
    "type": "pf",
})

 

Re- forecasts used to calibrate a Monday real-time forecast:

Retrieving  1 param (10m U wind) for all time steps and used to calibrate the 5th January 2015 real-time forecast (Monday). It takes the re-forecast for Thursday 1st January and Thursday 8th January

 

#!/usr/bin/env python
from ecmwfapi import ECMWFDataServer
server = ECMWFDataServer()
server.retrieve({
    "class": "s2",
    "dataset": "s2s",
    "hdate": "1995-01-01/1996-01-01/1997-01-01/1998-01-01/1999-01-01/2000-01-01/2001-01-01/2002-01-01/2003-01-01/2004-01-01/2005-01-01/2006-01-01/2007-01-01/2008-01-01/2009-01-01/2010-01-01/2011-01-01/2012-01-01/2013-01-01/2014-01-01",
    "date": "2015-01-01",
    "expver": "prod",
    "levtype": "sfc",
    "origin": "ecmf",
    "param": "165",
    "step": "0/to/768/by/24",
    "stream": "enfh",
    "target": "CHANGEME",
    "time": "00",
    "type": "cf",
})

 


#!/usr/bin/env python
from ecmwfapi import ECMWFDataServer
server = ECMWFDataServer()
server.retrieve({
    "class": "s2",
    "dataset": "s2s",
    "hdate": "1995-01-01/1996-01-01/1997-01-01/1998-01-01/1999-01-01/2000-01-01/2001-01-01/2002-01-01/2003-01-01/2004-01-01/2005-01-01/2006-01-01/2007-01-01/2008-01-01/2009-01-01/2010-01-01/2011-01-01/2012-01-01/2013-01-01/2014-01-01",
    "date": "2015-01-01",
    "expver": "prod",
    "levtype": "sfc",
    "origin": "ecmf",
    "param": "165",
    "step": "0/to/768/by/24",
    "stream": "enfh",
    "target": "CHANGEME",
    "number": "1/2/3/4",
    "time": "00",
    "type": "pf",
})

 

 

#!/usr/bin/env python
from ecmwfapi import ECMWFDataServer
server = ECMWFDataServer()
server.retrieve({
    "class": "s2",
    "dataset": "s2s",
    "hdate": "1995-01-08/1996-01-08/1997-01-08/1998-01-08/1999-01-08/2000-01-08/2001-01-08/2002-01-08/2003-01-08/2004-01-08/2005-01-08/2006-01-08/2007-01-08/2008-01-08/2009-01-08/2010-01-08/2011-01-08/2012-01-08/2013-01-08/2014-01-08",
    "date": "2015-01-08",
    "expver": "prod",
    "levtype": "sfc",
    "origin": "ecmf",
    "param": "165",
    "step": "0/to/768/by/24",
    "stream": "enfh",
    "target": "CHANGEME",
    "time": "00",
    "type": "cf",
})

 

 

#!/usr/bin/env python
from ecmwfapi import ECMWFDataServer
server = ECMWFDataServer()
server.retrieve({
    "class": "s2",
    "dataset": "s2s",
    "hdate": "1995-01-08/1996-01-08/1997-01-08/1998-01-08/1999-01-08/2000-01-08/2001-01-08/2002-01-08/2003-01-08/2004-01-08/2005-01-08/2006-01-08/2007-01-08/2008-01-08/2009-01-08/2010-01-08/2011-01-08/2012-01-08/2013-01-08/2014-01-08",
    "date": "2015-01-08",
    "expver": "prod",
    "levtype": "sfc",
    "origin": "ecmf",
    "param": "165",
    "step": "0/to/768/by/24",
    "stream": "enfh",
    "target": "CHANGEME",
    "number": "1/2/3/4",
    "time": "00",
    "type": "pf",
})
  • No labels