In this exercise we will use Metview to explore the ways ensemble forecast can be processed and visualised. The case we will investigate is related to a low pressure system crossing the UK on 10 August 2014: it caused high winds and heavy rain especially in the South-Western part of the country. The system has picked up moisture and energy left over from Hurricane Bertha on the other side of the Atlantic.
The first three plots show the precipitation forecast for the period of August 24 00UTC - 25 00UTC from various model runs preceding the event by 1, 3 and 5 days, respectively. The last plot shows the observed rainfall for the same period.
We will use both Macro and icons to ....
XXX Download data
Verify that the data are as expected.
Remember to give your icons useful names!
With a new Geographical View icon, set up a cylindrical projection with its area defined as
South/West/North/East: 43/-20/60/10 |
Set up a new Coastlines icon with the following:
The GRIB file fc_latest.grib contains the latest forecast run preceding the event. Drag it into your view and apply the contouring stored in the wgust_shade Contouring icon to it. You will see the location of the areas heavily hit by the storm.
In this part we will generate ....
With a new Display Window icon define a 2x2 layout so that each plot should contain your view.
The GRIB file fc_oper.grib contains the operational forecast for the investigated date. Drag it into the top left map and customise it with the wgust_shade Contouring icon. You will see that the wind storm was not present in the forecast.
The GRIB file fc_cf.grib contains the control forecast of the ENS for the investigated date. Drag it into the top left map and customise it with the wgust_shade Contouring icon. You will see that the wind storm was neither present in this forecast.
The GRIB file fc_pf.grib contains the 50 perturbed forecast member of the ENS. We will write a macro to compute the mean of these members.
So create a Macro and edit it. First, read the GRIB file in:
g=read("fc_pf.grib") |
Since this GRIB contains several time steps we need to write a loop to compute the ensemble mean for each time step individually. First, define the fieldset that will contain the resulting means:
res_mean=nil |
We will process the forecasts in a loop going through the time steps:
tsLst=[84,90,96] loop step in tsLst end loop |
Within the loop, simply read all the members for the given timestep
f=read(data: g, step: step ) |
then compute their mean and add it to the resulting fieldset:
e_mean = e_mean & mean(f) |
We finish the macro by returning the resulting fieldset:
return e_mean |
By doing using the return statement our Macro behaves as if it were a fieldset (GRIB file). Drag it into the top left map and customise it with the wgust_shade Contouring icon. You will see that the wind storm was neither present in this forecast.
The end of the period should be handled in a similar manner:
f2=read(data: g, date: yyyymmdd(run), step: (d2-run)*24 ) |
Computing the difference between the two fields is straightforward:
f=f2-f1 |
Field f
now contains the precipitation forecast for our period. The last line you need to add to the loop's body is plotting the filed into the right plot page:
plot(dw[i],f) |
Having done that run the Macro to see if the three forecast fields were correctly plotted.
Now we will plot the observations into the last map of the layout. The observations are stored in the Geopoints file called prec_24.gpt. Simply add this piece of code to the end of the Macro to read and plot the observations:
gpt=read("prec_24.gpt") plot(dw[4],gpt) |
Now run the Macro to check if the observations were correctly plotted.
The forecast plots need some customisation. Use the Contouring icon supplied in the folder to apply the contour shading as seen in the target plots. Just drag it into the forecast plots.
Now we will add these settings to the Macro. Drag the Contouring icon into the Macro editor just below the Display Window definition, then add it to the plot command like this (supposing it is named as cont
).
plot(dw[i],f,cont) |
The titles also need to be changed. Within the loop define a custom title with
txt=" your title goes here " title=mtext(text_line_1: txt) |
then add it to the plot command:
plot(dw[i],f,cont,title) |
Your title should include the model run date and time, the forecast timestep and the name of the field. E.g. for the second forecast you should get something like this in the plot:
20140821 0 UTC 24h total precipitation T+72 |
The observation also needs some customisation. Use the Contouring icon supplied in the folder to apply the contour shading as seen in the target plots. Use the Symbol Plotting icon supplied in the folder to apply the colour settings to the observations as used for the forecast. Just drag it into the observation plot.
Now we will add these settings to the Macro. Drag the Symbol Plotting icon into the Macro editor just above the last plot command for the Geopoints data, then add it to the plot command like this (supposing it is named as sym
)
plot(dw[4],gpt,sym) |
You can also add a custom title to the observation plot. Now you surely know how to do it.