Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Image Added

Case description

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.

Waves crash against a lighthouse in Newhaven, East SussexImage Added

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  ....

 

Info

This exercise involves:

  • reading and visualising ENS forecast in GRIB data
  • using the date functions in Macro
  • performing fiieldset computations in Macro

Preparations

XXX Download data

Verify that the data are as expected.

Remember to give your icons useful names!

Setting the map View

With a new Geographical View icon, set up a cylindrical projection with its area defined as

Code Block
South/West/North/East: 43/-20/60/10

Set up a new Coastlines icon with the following:

  • the land coloured in cream
  • the coastlines thick black
  • use grey grid lines at every 5 degrees.

Seeing what happened

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.

Checking the forecast

In this part we will generate ....

Defining the layout

With a new Display Window icon define a 2x2 layout so that each plot should contain your view. 

Visualising the operational forecast

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.

Visualising the control 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.

Visualising the ensemble mean

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:

Code Block
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:

Code Block
res_mean=nil

We will process the forecasts in a loop going through the time steps:

Code Block
tsLst=[84,90,96]

loop step in tsLst

end loop

Within the loop, simply read all the members for the given timestep

Code Block
f=read(data: g,
		step: step
	)	

then compute their mean and add it to the resulting fieldset:

Code Block
e_mean = e_mean & mean(f)

We finish the macro by returning the resulting fieldset:

Code Block
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:

Code Block
f2=read(data: g,
		date: yyyymmdd(run),
		step: (d2-run)*24
	)	

Computing the difference between the two fields is straightforward:

Code Block
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:

Code Block
plot(dw[i],f)

Having done that run the Macro to see if the three forecast fields were correctly plotted.

Plotting the observations

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: 

Code Block
gpt=read("prec_24.gpt")

plot(dw[4],gpt)

Now run the Macro to check if the observations were correctly plotted.

Customising the forecast plots

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).

Code Block
plot(dw[i],f,cont)

The titles also need to be changed. Within the loop define a custom title with

Code Block
txt=" your title goes here "

title=mtext(text_line_1: txt)

then add it to the plot command:

Code Block
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:

Code Block
20140821 0 UTC 24h total precipitation T+72

Customising the observation plot

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)

Code Block
plot(dw[4],gpt,sym)

You can also add a custom title to the observation plot. Now you surely know how to do it.