...
The simulation itself is defined by the 'tr_run' FLEXPART Run icon and the 'rel_ncastle' FLEXPART Release icon, respectively. Both these are encompassed in a single macro called 'tr_run.mv'. For simplicity will use this macro to examine the settings in detail.
...
Info |
---|
The actual species that will be released is defined as an integer number (for details about using the species see here). With the default species settings number 1 stands for atmospheric tracer. |
If we run this macro (or alternatively right-click execute
the FLEXPART Run icon) the resulting CSV file, 'tr_r001.csv', will appear (after a minute or so) in folder 'result_tr'. For details about the FLEXPART trajectory outputs click here.
Step 1 - Plotting the mean track
...
The plotting of the track is the same as in Step1:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
#Read columns from table
mLat=tolist(values(tbl,"meanLat"))
mLon=tolist(values(tbl,"meanLon"))
#visualiser
iv_curve = input_visualiser(
input_plot_type : "geo_points",
input_longitude_variable : mLon,
input_latitude_variable : mLat
)
#line attributes
graph_curve=mgraph(graph_line_colour: "red",
graph_line_thickness: "3",
graph_symbol: "on",
graph_symbol_marker_index: 15,
graph_symbol_height: 0.5,
graph_symbol_colour: "white",
graph_symbol_outline: "on"
)
|
Then we need to add a new plotting layer for the date labels. Here we use a loop to construct construct and plot the date labels and define their plotting instructions one by one with Input Visualiser and Symbol Plotting:
Code Block | ||
---|---|---|
| ||
#Read waypoint times from table #These are seconds elapsed since the middle of the release interval tt=values(tbl,"time") #Build and define the visualiser for the date strings #The plot definitions are collected into a list pltDateLst=nil for i=1 to count(tt) do d=releaseMidDate + second(tt[i]) label=" " & string(d,"dd") & "/" & string(d,"HH") #visualiser iv_date = input_visualiser( input_plot_type : "geo_points", input_longitude_variable : mLon[i], input_latitude_variable : mLat[i] ) #text attributes sym_date=msymb(symbol_type: "text", symbol_text_list: label, symbol_text_font_size: 0.3, symbol_text_font_colour: "navy" ) #collect the plot definitions into a list pltDateLst= pltDateLst & [iv_date,sym_date] end for |
...
Note |
---|
We had to define the plot for each date label individually , (instead of defining just one plot object with a list of values), due to a current limitation for string plotting in Metview' plotting library. Until this issue is resolved this is the recommended way to plot strings onto a map. |
Finally we define the title and mapview in the same way as in Step 1 and generate the plot:
Code Block | ||
---|---|---|
| ||
plot(view,iv_curve,graph_curve,pltDateLst,title) |
...
The macro to use is 'plot_tr_step3.mv' and is basically the same as the one in Step 2 but contains an additional plot layer. In this plot layer we draw circles around the mean trajectory waypoints using the RMS (root mean square) of the horizontal distances of the particles to this waypoint. The code goes like this:
Code Block | ||
---|---|---|
| ||
#Get rms of the horizontal distances (in km) to the mean particle positions (i.e. waypoints) mRms=values(tbl,"rmsHBefore") #Draw an rms circle around every second waypoint iStart=1 if mod(count(mRms),2)= 0 then iStart=2 end if pltRmsLst=nil for i=iStart to count(mRms) by 2 do if mRms[i] > 0 then #input visualiser defining the circle iv_rms=mvl_geocircle(mLat[i],mLon[i],mRms[i],100) #circle line attributes graph_rms=mgraph( graph_line_colour: "magenta", graph_line_thickness: "2", graph_line_style: "dot", graph_symbol: "off" ) #collect the plot definitions into a list pltRmsLst=pltRmsLst & [iv_rms,graph_rms] end if end for |
...