Introduction

The ECMWF operational ensemble forecasts for the western Mediterranean region exhibited high uncertainty while Hurricane Nadine was slowly moving over the eastern North Atlantic in September 2012. Interaction with an Atlantic cut-off low produced a bifurcation in the ensemble and significant spread, influencing both the track of Hurricane Nadine and the synoptic conditions downstream.

The HyMEX (Hydrological cycle in Mediterranean eXperiment) field campaign was also underway and forecast uncertainty was a major issue for planning observations during the first special observations period of the campaign.

This interesting case study examines the forecasts in the context of the interaction between Nadine and the Atlantic cut-off low in the context of ensemble forecasting. It will explore the scientific rationale for using ensemble forecasts, why they are necessary and how they can be interpreted, particularly in a "real world" situation of forecasting for an observational field campaign.

This case study is based on the following paper which is recommended reading

Pantillon, F., Chaboureau, J.-P. and Richard, E. (2015), 'Vortex-vortex interaction between Hurricane Nadine and an Atlantic cutoff dropping the predictability over the Mediterranean, doi: 10.1002/qj.2635.

In this case study

In the exercises for this interesting case study we will:

  • Study the development of Hurricane Nadine and the interaction with the Atlantic cut-off low using the ECMWF analyses.
  • Study the performance of the ECMWF high resolution (HRES) deterministic forecast of the time.
  • Use the operational ensemble forecast to look at the forecast spread and understand the uncertainty downstream of the interaction.
  • Compare a reforecast using the March 2016 ECMWF operational ensemble with the 2012 ensemble forecasts.
  • Use manual clustering to characterize the behaviour of the ensembles and compare the results with clustering based on principal component analysis (PCA; see Pantillon et al.).
  • Study the performance of the ECMWF ensemble forecasts trough RMSE curves.

Caveat on use of ensembles for case studies

In practise many cases are aggregated in order to evaluate the forecast behaviour of the ensemble. However, it is always useful to complement such assessments with case studies of individual events, like the one in this exercise, to get a more complete picture of IFS performance and identify weaker aspects that need further exploration.

Obtaining the exercises

The exercises described below are part of a 3-day training. The Metview macros with the accompanying data are collected into a tarfile. It is also available as part of the OpenIFS/Metview virtual machine, which can be run on different operating systems. For more details of the OpenIFS virtual machine and how to get the workshop files, please contact: openifs-support@ecmwf.int. Please follow this link to see the original tutorial of the ENM/OpenIFS workshop 2018.

ECMWF operational forecasts

In 2012, at the time of this case study, ECMWF operational forecasts consisted of:

  • HRES : spectral T1279 (16km grid) highest resolution 10 day deterministic forecast.
  • ENS    : spectral T639 (31km grid) resolution ensemble forecast (50 members) is run for days 1-10 of the forecast, T319 (70km) is run for days 11–15.

In 2016, the ECMWF operational forecasts was upgraded compared to 2012 and consisted of:

  • HRES/2016 : spectral T1279 with an octahedral grid configuration providing highest resolution of 9km.
  • ENS/2016    : spectral T639 with an octahedral grid configuration providing highest resolution of 18km for all 15 days of the forecast.

Please follow this link to see more details on changes to the ECMWF IFS forecast system.

Virtual machine

If using the OpenIFS/Metview virtual machine with these exercises the recommended memory is at least 6GB, the minimum is 4GB. If using 4GB, do not use more than 2 parameters per plot.

These exercises use a relatively large domain with high resolution data. Some of the plotting options can therefore require significant amounts of memory. If the virtual machine freezes when running Metview, please try increasing the memory assigned to the VM.

Starting up Metview

Please enter the folder 'openifs_training' to begin working.

Type the following command in a terminal window
metview &

If the plotting produces thick contour lines and large labels, ensure that the environment variable LC_NUMERIC="C" is set before starting metview.

For saving images and animations please see the Appendix.

Exercise 1: Hurricane Nadine and the cut-off low

ECMWF analyses to the 20th September 2012

In this exercise, the development of Hurricane Nadine and the cut-off flow up to the 20th September 2012 is studied.

Begin by entering the folder labelled 'Analysis':

Task 1: Mean-sea-level pressure and track

This task will look at the synoptic development of Hurricane Nadine and the cut-off low up to 00Z, 20th September 2012. The forecasts in the next exercises start from this time and date.

Metview icons in Analysis folder

an_1x1.mv: this plots horizontal maps of parameters from the ECMWF analyses overlaid on one plot.

an_2x2.mv: this plots horizontal maps of parameters from the ECMWF analyses four plots to a page (two by two).

Right-click on the an_1x1.mv icon and select the 'Visualise' menu item (see figure)

After a pause, this will generate a map showing mean-sea-level pressure (MSLP).

Drag and drop the mv_track.mv icon onto the map to add the track of Hurricane Nadine.

In the plot window, use the play button in the animation controls  to animate the map and follow the development and track of Hurricane Nadine.

You can use the 'Speed' menu to change the animation speed (each frame is every 6 hours).

If the contour lines appear jagged, in the plot window, select the menu item 'Tools -> Antialias'.

Q. What is unusual about Hurricane Nadine?

Close unused plot windows!

Please close any unused plot windows if using a virtual machine. This case study uses high resolution data over a relatively large domain. Multiple plot windows can therefore require significant amounts of computer memory which can be a problem for virtual machines with restricted memory.

Task 2: MSLP and 500hPa geopotential height

Right-click the mouse button on the an_1x1.mv icon and select the 'Edit' menu item.

An edit window appears showing the Metview macro code used to generate the plot. During these exercises you can change the top lines of these macros to alter the choice of parameters and plot types.

List of fields available
# Available parameters:
# mslp,t2,wind10,speed10,sst
# t,z,pt,eqpt [850,700,500,200]
# wind,speed,r[925,850,700,500,200]
# w700, vo850, pv320K

The surface fields (single level) are:

  • mslp (mean-sea-level-pressure),
  • t2 (2-metre temperature),
  • wind10 (10-metre wind arrows),
  • speed10 (wind-speed at 10m: sqrt(u^2+v^2)),
  • sst (sea-surface temperature).

The upper level fields are:

  • t (temperature),
  • z (geopotential),
  • pt (potential temperature),
  • eqpt (equivalent potential temperature),
  • wind (wind arrows),
  • speed (wind-speed as contours),
  • r (relative humidity).

The upper level fields have a list of available pressure levels in square brackets. To plot upper level fields, specify the pressure level after the name, e.g. z500 would plot geopotential at 500hPa.

Some extra fields are also provided:

  • w700 (vertical velocity at 700hPa),
  • vo850 (relative vorticity at 850hPa) and
  • pv320K (potential vorticity at 320K).

Wind fields are normally plotted as coloured arrows. To plot them as wind barbs add the suffix '.flag', e.g. "wind10.flag" will plot 10m wind as barbs.

Plot mslp and z500

With the edit window open for an_1x1.mv, find the line that defines 'plot1':

#Define plot list (min 1- max 4)
plot1=["mslp"]                      # use square brackets when overlaying multiple fields per plot

Change this line to:

plot1=["z500.s","mslp"]

The '.s' means plot the 500hPa geopotential as a shaded plot instead of using contours (this style is not available for all fields). Make sure "mslp" is second to plot the contours on top of the z500 shaded colour map.

Click the play button and then animate the map that appears

Use the an_1x1.mv (or the an_2x2.mv) to plot fields of your choice.

Plot PV at 320K

Change the value of "plot1" again to animate the PV at 320K.

plot1=["pv320K"]

You might add the mslp or z500 fields to this plot e.g.

plot1=["z500.s","pv320K","mslp"]

Note that the fields are plotted in the order specified in the list!

Additional tasks

To change the map geographical area please see the Appendix.

To visualize multiple variables on multiple maps please see the Appendix.


Exercise 2: Operational ECMWF HRES forecast

Exercise 1 looked at the synoptic development up to 20-Sept-2012. This exercise looks at the ECMWF HRES forecast from this date and how the IFS model developed the interaction between Hurricane Nadine and the cut-off low.

Enter the folder 'HRES_forecast' in the openifs_training folder to begin.

Recap

The ECMWF operational deterministic forecast is called HRES. At the time of this case study, the model ran with a spectral resolution of T1279, equivalent to 16km grid spacing.

Only a single forecast is run at this resolution as the computational resources required are demanding. The ensemble forecasts are run at a lower resolution.

Before looking at the ensemble forecasts, first understand the behaviour of the operational HRES forecast of the time.

Available forecast

Data is provided for a single 10 day forecast starting from 20th September 2012.

Data is provided at the same resolution as the operational model, in order to give the best representation of the Hurricane and cut-off low iterations. This may mean that some plotting will be slow.

Available parameters

A new parameter is total precipitation: tp.

The parameters available in the analyses are also available in the forecast data.

Available plot types

Metview icons in HRES_forecast folder

hres_1x1.mv: it works in a similar way to the same icon used in the previous task where parameters from a single lead time can be plotted in a single frame.

hres_2x2.mv: it works in a similar way to the same icon used in the previous task where parameters from a single lead time can be plotted in 4 frames per page.

track.mv: for this exercise, this icon can be used to overlay the forecast track of Nadine (and not the track from the analyses as in Exercise 1).

Task 1: Synoptic development

Study the forecast scenario to day+10, focus on:

  1. the evolution of Nadine,
  2. the fate of the cut-off low.

You can use the hres_1x1.mv and hres_2x2.mv icons in the same way as Exercise 1 when looking at the analyses.

For example, to plot geopotential at 500hPa and MSLP using the hres_1x1.mv macro, right click, select Edit and put:

plot1=["z500.s","mslp"]

To add the forecast track of Hurricane Nadine drag and drop the mv_track.mv icon onto any map.

Other suggested isobaric maps

Using either the hres_1x1.mv or hres_2x2.mv macro plot some of these other maps to study the synoptic development.

  • "vo850", "mslp"        : vorticity at 850hPa and MSLP – low level signature of Nadine and disturbance associated with the cut-off low.
  • "r700", "mslp",          : MSLP + relative humidity at 700hPa – with mid-level humidity of the systems.
  • "pv320K", "mslp"     : 320K potential vorticity (PV) + MSLP – upper level conditions, upper level jet and the cut-off low signature in PV, interaction between Nadine and the cut-off low.
  • "wind850", "w700" : winds at 850hPa + vertical velocity at 700hPa (+MSLP) – focus on moist and warm air in the lower levels and associated vertical motion.
  • "t2", "mslp"                : 2m-temperature and MSLP – low level signature of Nadine and temperature.
  • "mslp", "wind10"     : MSLP + 10m winds – interesting for Nadine's tracking and primary circulation.
  • "t500","z500"            : geopotential + temperature at 500hPa – large scale patterns, mid-troposphere position of warm Nadine and the cold Atlantic cut-off low.
  • "eqpt850", "z850"   : geopotential + equivalent potential temperature at 850hPa – lower level conditions, detection of fronts.
Questions to consider

Q. How strongly does Nadine appear to interact with the cut-off low?
Q. What is the fate of the cut-off low?


Additional tasks

To study the precipitation over France please see the Appendix.

To study the vertical structure please see the Appendix.


Exercise 3: Operational ensemble forecasts

Recap

  • ECMWF operational ensemble forecasts treat uncertainty in both the initial data and the model.
  • Initial analysis uncertainty: sampled by use of Singular Vectors (SV) and Ensemble Data Assimilation (EDA) methods. Singular Vectors are a way of representing the fastest growing modes in the initial state.
  • Model uncertainty: sampled by use of stochastic parametrizations. In IFS this means the 'stochastically perturbed physical tendencies' (SPPT) and the 'spectral backscatter scheme' (SKEB)
  • Ensemble mean: the average of all the ensemble members. Where the spread is high, small scale features can be smoothed out in the ensemble mean.
  • Ensemble spread: the standard deviation of the ensemble members, represents how different the members are from the ensemble mean.

The ensemble forecasts

In this case study, there are two operational ensemble datasets, one from the original 2012 operational forecast, the other from a reforecast of the event using the 2016 operational ensemble.

An ensemble forecast consists of:

  • Control forecast (unperturbed)
  • Perturbed ensemble members. Each member will use slightly different initial data conditions and include model uncertainty pertubations.
2012 Operational ensemble

ens_oper: This dataset is the operational ensemble from 2012 and was used in the Pantillon et al. publication. A key feature of this ensemble is use of a climatological SST field (seen in the earlier tasks).

2016 Operational ensemble

ens_2016: This dataset is a reforecast of the 2012 event using the ECMWF operational ensemble of March 2016.

Two key differences between the 2016 and 2012 operational ensembles are: higher horizontal resolution, and coupling of NEMO ocean model to provide forecast fields of SST (sea-surface temperature) from the start of the forecast.

The analysis was not rerun for 20-Sept-2012. This means the 2016 reforecast ensemble will be using the original 2012 analyses. Also only 10 ensemble data assimilation (EDA) members were used in 2012, whereas 25 are in use for 2016 operational ensembles, so each EDA member will be used multiple times for this reforecast. This will impact on the spread and clustering seen in the tasks in this exercise.

Ensemble exercise tasks

Key parameters: MSLP and z500.  We suggest concentrating on viewing these fields. If time, visualize other parameters (e.g. PV320K).

Available plot types

Enter the folder 'ENS' in the openifs_training folder to begin.

this will plot (a) the mean of the ensemble forecast, (b) the ensemble spread, (c) the HRES deterministic forecast and (d) the control forecast.

 this plots all of the ensemble forecasts for a particular field and lead time. Each forecast is shown in a stamp sized map. Very useful for a quick visual inspection of each ensemble forecast.

this useful macro allows two individual ensemble forecasts to be compared to the control forecast. As well as plotting the forecasts from the members, it also shows a difference map for each.

this will plot the difference between the ensemble control, ensemble mean or an individual ensemble member and the HRES forecast for a given parameter.
Group working

If working in groups, each group could follow the tasks below with a different ensemble forecast. e.g. one group uses the 'ens_oper', another group uses 'ens_2016'.

Choose your ensemble dataset by setting the value of 'expId', either 'ens_oper' or 'ens_2016' for this exercise.

Ensemble forecast datasets available in the macros
#The experiment. Possible values are:
# ens_oper = operational ENS
# ens_2016 = 2016 operational ENS

expId="ens_oper"
Ensemble forecast uncertainty

In these tasks, the performance of the ensemble forecast is studied.

Questions to consider

Q. How does the ensemble mean MSLP and Z500 fields compare to the HRES forecast?
Q. Examine the initial diversity in the ensemble and how the ensemble spread and error growth develops.  What do the extreme forecasts look like?

Task 1: Ensemble spread

Use the ens_maps.mv icon and plot the MSLP and z500. This will produce plots showing: the mean of all the ensemble forecasts, the spread of the ensemble forecasts and the operational HRES deterministic forecast.

Change 'expId' if required to select either the 2012 ensemble expId="ens_oper" or the reforecast ensemble expId="ens_2016".

Animate this plot to see how the spread grows.

This macro can also be used to look at clusters of ensemble members. It will be used later in the clustering tasks. For this task, make sure all the members of the ensemble are used.

Use all ensemble members in this task:
#ENS members (use ["all"] or a list of members like [1,2,3]
members=["all"]        #[1,2,3,4,5] or ["all"] or ["cl.example.1"]

Q. When does the ensemble spread grow the fastest during the forecast?

Task 2: Visualise ensemble members

Stamp maps are used to visualise all the ensemble members as normal maps. These are small, stamp sized contour maps plotted for each ensemble member using a small set of contours.

Use stamp.mv to plot the MSLP and z500 fields in the ensemble.

The stamp map is slow to plot as it reads a lot of data. Rather than animate each forecast step, a particular date can be set by changing the 'steps' variable.

Set date/time to 24-09-2012 00Z
#Define forecast steps
steps=[2012-09-24 00:00,"to",2012-09-24 00:00,"by",6]

Make sure clustersId="off" for this task. Clustering will be used later.

Compare ensemble members to the deterministic and control forecast

After visualizing the stamp maps, it can be useful to animate a comparison of individual ensemble members to the HRES and ensemble control deterministic forecasts.

This can help in identifying individual ensemble members that produce a different forecast than the control or HRES forecast.

Use ens_to_ref_diff to compare an ensemble member to the HRES forecast

 To animate the difference in MSLP of an individual ensemble member 30 to the HRES forecast, edit the lines:

param="mslp"
ensType="pf30"

and visualise the plot.

To compare the control forecast, change:

ensType="cf"
Use pf_to_cf_diff.mv to compare two ensemble members to the control forecast

This will show the forecasts from the ensemble members and also their difference with the ensemble control forecast.

To animate the difference in MSLP with ensemble members '30' and '50', set:

param="mslp"
pf=[30,50]

Compare the control forecast scenario to the HRES:

Q. Try to identify ensemble members which are the closest and furthest to the HRES forecast.
Q. Try to identify ensemble members which are the closest and furthest to the ensemble control forecast.

Sea-surface temperature

Compare the SST parameter used for the ens_oper and ens_2016 ensemble forecasts. The 2016 reforecast of this case study used a coupled ocean model unlike the 2012 ensemble and HRES forecast that used climatology for the first 5 days.

Q. What is different about SST between the two ensemble forecasts?

 

Additional tasks

To study the ensemble forecast further please see the Appendix.


Exercise 4: Cluster analysis

The paper by Pantillon et al. describes the use of clustering to identify the main scenarios among the ensemble members.

Using clustering will highlight the ensemble members in each cluster in the plots.

In this exercise you will:

  • Construct your own qualitative clusters by choosing members for two clusters,
  • Generate clusters using principal component analysis.

Enter the folder 'Clusters' in the openifs_training folder to begin working.

Task 1: Create your own clusters

Clusters can be created manually from lists of the ensemble members.

Choose members for two clusters. The stamp maps are useful for this task.

From the stamp map of z500 at 24/9/2012 (t+96), identify ensemble members that represent the two most likely forecast scenarios.

It is usual to create clusters from z500 as it represents the large-scale flow and is not a noisy field. However, for this particular case study, the stamp map of 'tp' (total precipitation) over France is also very indicative of the distinct forecast scenarios. To change the map geographical area see the Appendix.

You can choose any parameter to construct the clusters from, if you think another parameter shows a clear clustering behaviour.

How to create your own cluster

Right-click 'ens_oper_cluster.example.txt' and select Edit (or make a duplicate)

The file contains two example lines:

1#   2  3  4  9  22 33 40
2#   10 11 12 31 49

The first line defines the list of members for 'Cluster 1': in this example, members 2, 3, 4, 9, 22, 33, 40.

The second line defines the list of members for 'Cluster 2': in this example, members 10, 11, 12, 31, 49.

Change these two lines! Put your choice of ensemble member numbers for cluster 1 and 2 (lines 1 and 2 respectively).

You can create multiple cluster definitions by using the 'Duplicate' menu option to make copies of the file for use in the plotting macros..

The filename is important !
The first part of the name 'ens_oper' refers to the ensemble dataset and must match the name used in the plotting macro. The 'example' part of the filename can be changed to your choice and should match the 'clustersId'.
As an example of a filename: ens_both_cluster.fred.txt would require 'expId=ens_both', 'clustersId=fred' in the macro

Plot maps of parameters as clusters

The macro cluster_to_ref.mv can be used to plot maps of parameters as clusters and compared to the ensemble control forecast and the HRES forecast.

Use cluster_to_ref.mv to plot z500 maps of your two clusters.

If your cluster definition file is called 'ens_oper_cluster.example.txt', then Edit cluster_to_ref.mv and set:

#ENS members (use ["all"] or a list of members like [1,2,3]
members_1=["cl.example.1"]
members_2=["cl.example.2"]

If your cluster definition file has another name, e.g. ens_oper_cluster.fred.txt, then members_1=["cl.fred.1"].

Plot ensembles with clusters

In this part of the task, redo the plots from the previous exercise which looked at ways of plotting ensemble data, but this time with clustering enabled.

Stamp maps: the stamp maps will be reordered such at the ensemble members will be grouped according to their cluster. This will make it easier to see the forecast scenarios according to your clustering.

Use the clusters of ensemble members you have created in ens_oper_cluster.example.txt.

Set clustersId='example' in the stamp.mv to enable cluster highlighting.

If time, also try the ens_part_to_all.mv icon. This compares the spread and mean of part of the ensemble to the full ensemble.

Plot other parameters

Use the stamp.mv icon and change it to plot the total precipitation over France with clusters enabled, e.g.

param="tp"
expId="ens_oper"
mapType=2
clustersId="example"

If your choice of clustering is accurate, you should see a clear separation of precipitation over France between the two clusters.

Q. Are two clusters enough? Do all of the ensemble members fit well into two clusters?
Q. What date/time does the separation of the clusters (e.g. z500 maps) become apparent and grow significantly?

Task 2: Empirical orthogonal functions / Principal component analysis

A quantitative way of clustering an ensemble uses empirical orthogonal functions from the differences between the ensemble members and the control forecast and then using an algorithm to determine the clusters from each ensemble as projected in EOF space (mathematically).

As a smooth dynamical field, geopotential height at 500hPa at 00Z 24/9/2012 is recommended (it is used in the paper by Pantillon et al.), but the steps described below can be used for any parameter at any step.

The eof.mv macro computes the EOFs and the clustering.

Always use the eof.mv first for a given parameter, step and ensemble forecast (e.g. ens_oper or ens_2016) to create the cluster file. Otherwise cluster_to_ref.mv and other plots with clustering enabled will fail or plot with the wrong clustering of ensemble members.

If you change step or ensemble, recompute the EOFs and cluster definitions using eof.mv. Note however, that once a cluster has been computed, it can be used for all steps with any parameter.

Note that the EOF analysis is run over the smaller domain over France. This may produce a different clustering to your manual cluster if you used a larger domain.

Compute EOFs and clusters

Edit eof.mv.

Set the parameter to use, choice of ensemble and forecast step required for the EOF computation:

param="z500"
expId="ens_oper"
steps=[2012-09-24 00:00]

Run the macro.

The above example will compute the EOFs of geopotential height anomaly at 500hPa using the 2012 operational ensemble at forecast step 00Z on 24/09/2012.

A plot will appear showing the first two EOFs.

The geographical area for the EOF computation is: 35-55N, 10W-20E. If desired it can be changed in eof.mv.

EOF cluster definition file

The eof.mv macro will create a text file with the cluster definitions, in the same format as described above in the previous task.

The filename will be different, it will have 'eof' in the filename to indicate it was created by using empirical orthogonal functions.

Cluster filename created for ensemble 'ens_oper' using eof.mv
ens_oper_cluster.eof.txt

If a different ensemble forecast is used, for example ens_2016, the filename will be: ens_2016_cluster.eof.mv

This cluster definition file can then be used to plot any variable at all steps (as for task 1).

Q. What do the EOFs plotted by eof.mv show?
Q. Change the parameter used for the EOF (try the 'total precipitation' (tp) field). How does the cluster change?

Plot ensemble and cluster maps

Use the cluster definition file computed by eof.mv to the plot ensembles and maps with clusters enabled (as above, but this time with the 'eof' cluster file).

The macro cluster_to_ref.mv can be used to plot maps of parameters as clusters and compared to the HRES forecast.

Use cluster_to_ref.mv to plot z500 and MSLP maps of the two clusters created by the EOF analysis.

Edit cluster_to_ref.mv and set:

#ENS members (use ["all"] or a list of members like [1,2,3]
members_1=["cl.eof.1"]
members_2=["cl.eof.2"]

Run the macro.

If time also look at other parameters such as PV320K.

Q. What are the two scenarios proposed by the two clusters?
Q. How would you describe the interaction between Nadine and the cut-off low in the two clusters?
Q. How similar is the EOF computed clusters to your manual clustering?

If time, change the date/time used to compute the clusters. How does the variance explained by the first two clusters change? Is geopotential the best parameter to use?

Cluster method code

For those interested:

The code that computes the clusters can be found in the Python script: aux/cluster.py.

This uses the 'ward' cluster method from SciPy. Other cluster algorithms are available. See http://docs.scipy.org/doc/scipy/reference/generated/scipy.cluster.hierarchy.linkage.html#scipy.cluster.hierarchy.linkage

The python code can be changed to a different algorithm or the more adventurous can write their own cluster algorithm!

Additional tasks

To change the number of clusters please see the Appendix.


Exercise 5: Assessment of forecast errors

In this exercise, the analyses covering the forecast period are now available to see how Nadine and the cut-off low actually behaved.

Various methods for presenting the forecast error are used in the tasks below.  The clusters created in the previous exercise can also be used.

Enter the 'Forecast errors' folder in the openifs_training folder to start work on this exercise.

Task 1: Analyses from 20th September

Now look at the analyses from 20th September to observe what actually happened.

Right-click an_1x1.mv, Edit and set the plot to show MSLP and geopotential at 500hPa:

plot1=["z500.s","mslp"]

Click the play button and animate the plot to watch how Nadine and the cut-off low behave.

Drop the mv_track.mv icon to overlay the track of Nadine onto the map.

If time, use the other icons such as an_2x2.mv and an_xs.mv to look at the cross-section through the analyses and compare to the forecast cross-sections from the previous exercises.

Task 2: RMSE "plumes" for the ensemble

This is similar to the previous exercise, except the RMSE curves for all the ensemble members from a particular forecast will be plotted.

Right-click the ens_rmse.mv icon, select 'Edit' and plot the curves for 'mslp' and 'z500'.

Change 'expID' for your choice of ensemble (either ens_oper or ens_2016).

Clusters

First plot the plumes with clustering off:

Turn clustering off
clustersId="off"

There might be some evidence of clustering in the ensemble plumes.

There might be some individual forecasts that give a lower RMS error than the control forecast.

Next, use the cluster files created from the earlier exercise. You can use either your own created cluster file as before, or use the EOF generated file.

For example:

clustersId="eof"

would use the cluster definitions in the file: ens_oper_cluster.eof.txt (for the 2012 operational ensemble).

The cluster files are 'linked' from the Cluster folder, but if they do not work, just copy the cluster file (e.g. ens_oper_cluster.eof.txt) to the Forecast_errors folder.

Q. How do the HRES, ensemble control forecast and ensemble mean compare?
Q. How do the ensemble members behave, do they give better or worse forecasts?
Q. Is the spread in the RMSE curves the same in using other pressure levels in the atmosphere?

Task 3: Difference stamp maps

Use the stamp_diff.mv plot to look at the differences between the ensemble members and the analysis. It can be easier to understand the difference in the ensembles by using difference stamp maps.

Note, stamp_diff.mv cannot be used for 'tp' as there is no precipitation data in the analyses.

Clustering can also be enabled for this task.

Q. Using the stamp and stamp difference maps, study the ensemble. Identify which ensembles produce "better" forecasts.
Q. Can you see any distinctive patterns in the difference maps?


Appendix

Saving images and animations

The macros described in this tutorial can write PostScript and GIF image files to the 'figures' directory in the 'openifs_training' folder.

To save the images, use the 'Execute' menu option on the icon, rather than 'Visualise'. The 'okular' command can be used to view the PDF & gif images.

To save any other images during these exercises for discussion later, you can either use "Export" button in Metview's display window under the 'File' menu to save to PNG image format (this will also allow animations to be saved into postscript) or use the ksnapshot command to take a 'snapshot' of the screen and save it to a file.

If you want to create animations from other images, save the figures as postscript and then use the convert command:

convert -delay 75 -rotate "90<" in.ps out.gif

Back to the tutorial

Additional tasks of exercise 1

Changing the map geographical area

Right-click on an_1x1.mv icon and select 'Edit'.

In the edit window that appears you can see the map types available covering a different area:

Changing geographical area
#Map type: 0=Atl-an, 1: Atl-fc, 2: France 
mapType=0

With mapType=0 , the map covers a large area centred on the Atlantic suitable for plotting the analyses and track of the storm (this area is only available for the analyses).

With mapType=1 , the map also covers the Atlantic but a smaller area than for the analyses. This is because the forecast data in the following exercises does not cover as large a geographical area as the analyses.

With mapType=2 , the map covers a much smaller region centred over France.

Change mapType=0   to   mapType=1   then click the play button at the top of the window.

Repeat using mapType=2 to see the smaller region over France.

Animate the storm on this smaller geographical map.

Back to the tutorial

Plotting multiple variables on multiple maps

The an_2x2.mv icon plots up to 4 separate figures on a single frame.

Right-click on the an_2x2.mv icon and select the 'Edit' menu item.

Multiple plots per page
#Define plot list (min 1- max 4)
plot1=["mslp"]
plot2=["wind10"]
plot3=["speed500","z500"]
plot4=["sst"]


Click the play button at the top of the window to run this macro with the existing plots as shown above.

Each plot can be a single field or overlays of different fields.

Wind parameters can be shown either as arrows or as wind flags ('barbs') by adding '.flag' to the end of variable name e.g. "wind10.flag".

If only one field on the 2x2 plot animates, make sure the menu item 'Animation -> Animate all scenes' is selected. Plotting may be slow depending on the computer used. This reads a lot of data files.

Q. What do you notice about the SST field?

Back to the tutorial

Additional tasks of exercise 2

Precipitation over France

Choose a hres macro (hres_1x1 or hres_2x2) and plot the total precipitation (parameter: tp), near surface wind field (parameter: wind10), relative humidity (parameter: r).

Change the area to France by setting 'maptype=2' in the macro script.

Back to the tutorial

Vertical structure and forecast evolution

This task focuses on the fate of Nadine and examines vertical PV cross-sections of Nadine and the cut-off low at different forecast times.

Right-click on the icon 'hres_xs.mv' icon, select 'Edit' and push the play button.

The plot shows the cross-section for the 22nd September, (day 2 of the forecast), for potential vorticity (PV), wind vectors projected onto the plane of the cross-section and potential temperature drawn approximately through the centre of the Hurricane and the cut-off low. The red line on the map of MSLP shows the location of the cross-section.

Q. Look at the PV field, how do the vertical structures of Nadine and the cut-off low differ?

Changing forecast time

Cross-section data is only available every 24hrs until the 30th Sept 00Z (step 240).

This means the 'steps' value in the macros is only valid for the times:  [2012-09-20 00:00], [2012-09-21 00:00], ....  and so on to [2012-09-30 00:00].

Change the forecast time to day+6 (26th September). Nadine has now intensified as it approaches the coast.

steps=[2012-09-26 00:00]

Changing cross-section location

#Cross section line [ South, West, North, East ]
line = [30,-29,45,-15]

The cross-section location (red line) can be changed by editing the end points of the line as shown above.

If the forecast time is changed, the storm centres will move and the cross-section line will need to be repositioned to follow specific features. This is not computed automatically, but must be changed by altering the coordinates above. Use the cursor data icon to find the new position of the line.

Change the forecast time again to day+8 (28th September), or a different date if you are interested, relocate and plot the cross-section of Nadine and the low pressure system. Use the hres_1x1.mv icon from task 1 if you need to follow location of Nadine.

If time, try some of the other vertical cross-sections below.

Questions to consider

Q. What changes are there to the vertical structure of Nadine during the forecast?
Q. What is the fate of the cut-off and Nadine?
Q. Does this kind of Hurricane landfall event over the Iberian peninsula happen often?

Suggestions for other vertical cross-sections

A reduced number of fields is available for cross-sections compared to the isobaric maps: temperature (t), potential temperature (pt), relative humidity (r), potential vorticity (pv), vertical velocity (w), wind-speed (speed; sqrt(u*u+v*v)) and wind vectors (wind3).

Choose from the following (note the cross-section macro hres_xs.mv uses slightly different names for the parameters).

  • "pt", "pv"              : potential temperature + potential vorticity  -  to characterize the cold core and warm core structures of Hurricane Nadine and the cut-off low.
  • "r", "w"                  : humidity + vertical motion  -  another view of the cold core and warm core structures of Hurricane Nadine and the cut-off low.
  • "pv", "w" ("r")      : potential vorticity + vertical velocity (+ relative humidity)  -  a classical cross-section to see if a PV anomaly is accompanied with vertical motion or not.

Back to the tutorial

Additional tasks of Exercise 3

Additional plots for further study

this plots a 'spaghetti map' for a given parameter for the ensemble forecasts compared to the reference HRES forecast. Another way of visualizing ensemble spread.

 this plots a vertical cross-section through the forecasts in the same way as the cross-section plots for the analyses.

this comprehensive macro produces a single map for a given parameter. The map can be either: i/ the ensemble mean, ii/ the ensemble spread, iii/ the control forecast, iv/ a specific perturbed forecast, v/ map of the ensemble probability subject to a threshold, vi/ ensemble percentile map for a given percentile value. For example, it is possible to plot of a map showing the probability that MSLP would be below 995hPa.

this macro can be used to plot the difference for two ensemble members against the HRES forecasts. As ensemble perturbations are applied in +/- pairs, using this macro it's possible to see the nonlinear development of the members and their difference to the HRES forecast.

Back to the tutorial

Additional tasks of exercise 4

Changing the number of clusters

To change the number of clusters created by the EOF analysis, edit eof.mv. Change:

  clusterNum=2

to

  clusterNum=3

Now if you run the eof.mv macro, it will generate a text file, such as ens_oper.eof.txt with 3 lines, one for each cluster. It will also show the 3 clusters as different colours.

You can use the 3 clusters in the cluster_to_ref.mv macro, for example:

param="z500.s"
expId="ens_oper"
members_1=["cl.eof.1"]
members_2=["cl.eof.3"]

would plot the mean of the members in the first and the third clusters (it's not possible to plot all three clusters together).

You can have as many clusters as you like but it does not make sense to go beyond 3 or 4 clusters.

Back to the tutorial

Further reading

For more information on the stochastic physics scheme in IFS, see the article:

Shutts, G., Leutbecher, M., Weisheimer, A., Stockdale, T., Isaksen, L., Bonavita, M., 2011: Representing model uncertainty: stochastic parametrizations at ECMWF. ECMWF Newsletter 129, 19--24.

Acknowledgements

We gratefully acknowledge the following for their contributions in preparing these exercises. From ECMWF: Glenn Carver, Gabriella Szepszo, Sandor Kertesz, Linus Magnusson, Iain Russell, Simon Lang, Filip Vana. From ENM/Meteo-France: Frédéric Ferry, Etienne Chabot, David Pollack and Thierry Barthet for IT support at ENM.