This tutorial explains how to use the FLEXPART Lagrangian dispersion model within Metview.
Excerpt | |||||
---|---|---|---|---|---|
|
...
In this case study will run FLEXPART to simulate the imaginary eruption of the Icelandic volcano Eyjafjallajökull.
PreparationsFirst start Metview; at ECMWF, the command to use is The icons you will work with are already prepared for you - please download the following file:
You should now (after a few seconds) see a flexpart_tutorial folder. Please open it up. The input dataThe input data is already prepared for you and is located in folder 'Data'. You will find a FLEXPART Prepare -old icon that was used to generate the data in folder 'Prepare'. The corresponding macro code can also be found there. | |||||
Info | |||||
---|---|---|---|---|---|
You do not need to run the data preparation. However, if you wish to do so please note that it requires MARS access and you must set the Output Path parameter accordingly. |
Running a forward simulation
Enter folder 'fwd'.
We will run FLEXPART to simulate a volcano eruption by releasing of some SO2 from the Icelandic volcano Eyjafjallajökull.
The simulation is defined by the 'fwd_conc' FLEXPART Run icon and the 'rel_volcano' FLEXPART Release icon, respectively. Both these are encompassed in a single Macro called 'fw_cond.mv'. For simplicity will use this macro to examine the settings in detail.
First we define the release like this:
Code Block | ||
---|---|---|
| ||
rel_volcano = flexpart_release(
name : "VOLCANO",
starting_date : 0,
starting_time : 15,
ending_date : 2,
ending_time : 12,
area : [63.63,-19.6,63.63,-19.6],
top_level : 9000,
bottom_level : 1651,
particle_count : 10000,
masses : 1000000
) |
This says that the release will happen over a 45 h period between heights 1651 and 10000 m at the location of the volcano and we will release 1000 tons of material.
Info |
---|
Please note that
|
The actual simulation is carried out by calling flexpart_run()
:
Code Block | ||
---|---|---|
| ||
#Run flexpart (asynchronous call!)
r = flexpart_run(
output_path : "result_fwd_conc",
input_path : "../data",
starting_date : 20120517,
starting_time : 12,
ending_date : 20120519,
ending_time : 12,
output_field_type: "concentration",
output_flux : "on",
output_trajectory : "on",
output_area : [40,-25,66,10],
output_grid : [0.25,0.25],
output_levels : [500,1000,2000,3000,4000,5000,7500,10000,15000],
release_species : 8,
receptors : "on",
receptor_names : ["rec1","rec2"],
receptor_latitudes : [60,56.9],
receptor_longitudes : [6.43,-3.5],
releases : rel_volcano
)
print(r) |
Here we defined the simulation period and the output grid as well. We also told FLEXPART to generate gridded concentration fields on output. We also asked for plume trajectories and deposition data at the specified receptor locations.
Info |
---|
Please note that the actual species that will be released is defined as an integer number (for details about using the species see here). |
If we run this macro (or alternatively right-click execute
the FLEXPART Run icon) the results (after a minute or so) will be available in folder 'result_fw_conc' . The computations were actually taken place in a temporary folder then metview copied the results here. If we open this older we will see two files there:
- cons_s001.grib is GRIB file containing the gridded concentration fields.
- tr_r1.csv is CSV file containing the plume trajectories
Info |
---|
Please note that these are not the original outputs form FLEXTRA but were converted formats more suitable for use in Metview. For details about the FLEXPART outputs please click here. |
Visualising gridded fields
Since the output GRIB files cannot be handled by Metview's standard Grib Filter icon because (due to the local GRIB definitions we use). Therefore a set of Metview Macro Library Functions were developed to deal with the FLEXPART grib files. Please look into the visualisation macros to see how to use them. The most important Metview Macro Library Functions are as follows:
...
mvl_flexpart_read_hl(inFile,par,lev,ts,ac)
# Function to get flexpart fields on height level
# params:
# inFile: input file
# par: parameter shortname
# lev: level (-
1
means all)
# ts: step (-
1
means all)
# ac: ageclass (-
1
means all)
Tutorials
Children Display | ||||
---|---|---|---|---|
|
...
mvl_flexpart_read_sfc(inFile,par,ts,ac)
# Function to get surface flexpart fields
# params:
# inFile: input file
# par: parameter shortname
# ts: step (-
1
means all)
# ac: ageclass (-
1
means all)
|
Forward simultaions
Fields
Trajecories
receprotros
volume fill
fluxes
cross section
time-height diagram
total column
age class
backward simulation
residence time
fluxes
trajecory