Simulations¶
There are several ways to create new simulations:
Automatically via SeisComP messaging connection,
Manually via CTRL+N,
Interactively by the user.
Automatic Simulation and Configuration¶
Incidents and simulations are automatically triggered for events and event updates received via messaging connection to a SeisComP system. They are initiated if passing multiple filters and thresholds.
First, it is checked whether the earthquake magnitude is larger than
incidentMinimumMagnitude
and whether the earthquake depth is shallower than
incidentMaximumDepth
.
If a new event was received, then a new incident is created,
if an event update was received, the incident is updated.
Next, following settings are checked:
trigger.maximumAge
trigger.minimumMagnitude
trigger.origin.mode
sourceRegions
See also: Source regions configuration.
Then, depending on availability of a Moment Tensor (MT) solution and the configured faults, either 1, 2 or 3 simulations are proposed. 3 simulations are proposed if the normalized minimum rotation angle (see also: Kagan angle) between the model from the configured faults and the 2 models corresponding to the nodal planes of the MT solution is larger than 0.7, otherwise it is assumed that the 2 solutions from the MT are sufficient.
The simulations are finally started after checking that no similar simulations are already present according to the criteria defined in:
matching.magnitude.variance
matching.depth.variance
matching.location.variance
matching.faultPlane.variance
(Kagan angle).
Enable processAutoMT
to use automatically generated moment tensors
and set the mode of the origin (manual, automatic or both) in
trigger.origin.mode
.
As input, simulations use default values, which can be configured using: scconfig
: Consult hovertips in scconfig for more information.By default, easywave2.patches.strikeAlign
and
easywave2.patches.dipAlign
are set to 0.5, which means that the
generated patches are centered around the epicenter. They can be set to a list,
for example: 0,0.5,1, which means that additional 2 simulations are generated,
shifted by half length (or width).
Note
The number of simulations that are generated according to:
Flowchart for the automatic generation of simulations is multiplied by the number of registered automatic
Simulation Profiles and by the length of
easywave2.patches.strikeAlign
and
easywave2.patches.dipAlign
.
In case no moment tensor and fault information is available or if the automatic patch generation doesn’t deliver optimal results, the simulation dialog can be used to initiate a simulation interactively (see: Create simulations interactively).
Simulation Profiles¶
Automatic simulation generation produces results based on default parameters.
Multiple simulation profiles can be added and used.
All available profiles are listed in easywave2.profiles
.
Each simulation profile is executed when triggering the automatic simulations (if automatic is set in the profile). Note that the same thresholds and filters are applied as mentioned in Automatic Simulation and Configuration. If a profile is configured to start automatically, the default automatic simulation is not triggered.
Start simulations for events imported from database¶
If an event is not received by messaging but imported from the database by the user, simulations are not triggered automatically. But they can be initiated using CTRL+N. In this case the processing starts at the point as indicated in Flowchart for the automatic generation of simulations.
Create simulations interactively¶
In order to add simulations manually to an incident, open the Simulation Dialog via: or with Ctrl+Shift+N.
The dialog opens with a set of predefined settings for the earthquake model and its geometry as well as for the simulation backend to be used. See Rupture settings and Simulation backend settings for a description.
After adjusting the settings, click Generate patches for automatic, or Draw patches for manual patch creation. Click Start to compute the simulation. During computation, the progress is indicated in the database panel. Double click the simulation to turn it active (also possible during computation).
Rupture settings¶
Latitude / Longitude. Select between Event, Focal Mechanism, Origin or Custom by clicking the icon on the left of the latitude value.
Magnitude: Adjust or select the requested value as above.
Depth: Use value from Event, Fault, Focal Mechanism, Origin or Custom.
Length, Width: Default values are computed using scaling relations by Wells & Coppersmith (1994). If you manually change one of the two, the behavior of the other one and of the resulting slip depends on the selection below
[L]ength and [W]idth independent: Manual modification of L or W is compensated by adjusting [S]lip (L x W x S remains constant for given magnitude)
Fix Area: Change of L is automatically compensated by change of W and vice versa
Fix Ratio: Change of L results in change of W and adjustment of S (and vice versa)
Fault plane:
From fault: Strike, dip and rake are interpolated automatically from the predefined Fault geometry configuration.
Strike from fault: Set dip and rake values manually.
Manual: Set all values manually.
Moment tensor: When available strike, dip and rake of the first or second nodal plane can be selected.
Strike and Dip align: By default, the automatically generated fault patches are centered around the epicenter. Use the sliders to shift the patches along strike and dip direction up to half total length and width.
# Patches: The number of patches to be generated or drawn. Corresponding patch length is shown below.
Generate patches automatically¶
Click Generate patches to use above settings for the automatic generation of the rupture patches of the earthquake fault model.
Draw patches manually¶
Click Draw patches to enter the location and strike direction of the rupture patches manually. Other settings are according to the values in the dialog. Use left mouse click to add patches one by one up to the defined number of patches. While drawing, the white circle has as radius total rupture length and the green circle has as radius patch length.
Dipping of the patches is always to the right side. For example, if the starting point is in the South and the end point is in the North, the dipping direction is East. It can be changed during drawing by SHIFT+mouse clicking on the end point of a patch (only if more than 1 patch in total).
Note
Make sure that the green edge, which corresponds to the lower edge of the patches, is in accordance with to the local tectonic setting (e.g. compare to configured faults).
Simulation backend settings¶
The Simulations tab is used to select and configure the plugin which is used as simulation backend.
The standard plugin which is delivered with TOAST is EasyWave2. The settings are:
step
sshMax: Simulation time step in min for the output of the sshMax grid during computation (same file is overwritten).
ssh: Simulation time step in min for the output of ssh grids (new file for every time step).
poi: Simulation time step in seconds for the output of time series.
arrival times: Simulation time step for the output of the arrival grid during computation (same file is overwritten).
maxTime: Total duration of the simulation in minutes.
grid: Select the bathymetry which is used for the simulation, see also: Bathymetry files. The green rectangle in Map perspective corresponds to the borders of the selected bathymetry.
gpu: Select if the simulation is computed using GPU. See also: Enable GPU-based computation.
Click on the + tab to add another plugin configuration. For instance for TsunAWI, you can set the values for Azimuth and Magnitude uncertainty.
Note
EasyWave does not compute tides, this is why in the Waveform picker the Tsunami waveform filter should be applied to observations for comparison.
Display simulation results¶
The results of the active simulations(s) are used in various perspectives, like the Map-, Arrivals- and Forecast Zones perspective as well as the Live Tabs.
Use the Map Layers panel, under Wave propagation, to enable the display of simulation results in the Map perspective and the Wave Propagation panel.
Select ‘Legends’ to turn on legend color bars in Map perspective.
See also: Create and modify color profiles.
Arrival lines¶
Show the propagation of the tsunami wave after event time as contour lines. Solid lines have one hour interval and are labeled. Dashed lines are half-hour intervals in-between.
Arrival times¶
Display the arrival of the tsunami wave as color coded areas see figure above). By default, arrival within 1 hour is red, between 1 and 3 hours is orange, and between 3 and 6 hours is yellow (see legend).
Bathymetry¶
Turns on display of the Ocean model which was used for the simulation (currently only for binary grids for EasyWave). This can be very useful for instance if results in small harbors are not as expected, as the bathymetry and topography used for the simulations depends on resolution and is not identical to the one shown as map background. Use right mouse click -> Filter -> Nearest on the map to switch off interpolation and get a sharper image.
Isochrones¶
Show the extent of the tsunami at a certain time as red line. Use the Simulation player to select the time.
SSH¶
Display wave height according to active simulations at certain time. Use the Simulation player to select the time.
SSH max¶
Display maximum wave height according to active simulations. It is updated while a simulation is being computed.
Residual¶
The residual is used to rank simulations based on the comparison of incident parameters and observations with simulation data. Each simulation is assigned one total or overall residual. In Icons view, it is shown in form of the color of the left and lower bars, in Details view, it is show in the column Residual and the partial residual.
The residual is a measure of misfit. A value of 0 represents perfect fit. There is no upper limit. The color range is from green to red based on following definitions: For residual 0 -> green; 0.5 -> yellow; 1 -> red.
Total residual¶
The total (or overall) residual is computed as weighted root mean square (RMS) over the source, focal mechanism, expected plane, arrival and displacement residuals.
The weights are configurable. is the number of available sub-residuals.
Source residual¶
The source (or event) residual is computed as root mean square over the distance, magnitude and depth residuals.
is the number of available source residual components.
For backwards compatibility, the former definition of the source, distance, magnitude and depth
residuals can be used by setting the configuration variable residuals.useLegacyDefinition
.
Distance residual¶
If only either the hypocenter or the centroid location is given, then the distance residual is computed as distance between the location and the location of the simulation divided by a characteristic length.
The characteristic length is derived by scaling relations (Wells and Coppersmith 1994) from the incident magnitude.
If the incident has no magnitude, then the characteristic length is derived for M=7, which results in about 44 km. At a distance of from the origin, the residual is 1.
If both hypocenter and centroid are given, then the distance is computed as weighted distance of the simulation to the centroid and the hypocenter.
with centroid weight .
A simulation has the lowest residual (best match) at the centroid location, but the residual is extended in the direction of the hypocenter (egg-shaped contour).
Magnitude residual¶
It is computed as absolute magnitude difference divided by a characteristic magnitude difference.
with .
If the incident has no magnitude, the magnitude residual is 0. If the simulation has no magnitude, the magnitude residual is set to 1.
Depth residual¶
It is computed as absolute depth difference divided by a characteristic depth difference.
with .
If the incident has no depth, the depth residual is 0. If the simulation has no depth, the depth residual is set to 1.
Focal mechanism residual¶
The focal mechanism (or moment tensor) residual is computed based on the rotation angle between the fault plane of the simulation and the fault plane of the focal mechanism.
Fault residual¶
The fault (or exected plane) residual is computed based on the rotation angle between the fault plane of the simulation and the expected fault plane from the faults.
Arrival residual¶
The arrival (or tide gauge) residual is computed as root mean square between observed and simulated arrrivals.
Displacement residual¶
If displacements were computed by simulations and if for at least one GNSS station either both the east and north components or the up component of the observed displacement are present, then the mismatch between observed and simulated displacements is computed in form of the displacement residual and shown in the database panel.
The residual is computed in following way:
The misfit is the root of the sum of the vector difference lengths between observations and simulations.
The total length is the root of the sum of all observation vector lengths.
if observed as well as simulated vertical components or both horizontal components are present and otherwise.
The constant is set 0.1 m. It relaxes the computation of the residual if the total length is smaller than 10 cm and also avoids division by zero. In practice this would rarely be the case, as the observations typically have noise of a couple of centimeters.
The displacement corresponds to the misfit divided by (normalized by) the minimum of total length and .
Wave radar residual¶
The wave radar residual has not been implemented.
Simulation playback¶
Note
Do not confound the simulation playback with the Simulation player!
Note
To run the simulation playback, the quakelink package is required.
Create playback¶
TOAST has a builtin feature to create playbacks from simulations. To do so, right-click on a simulation and select Create playback…. The default path for export is /tmp/+sim-id.
The playback directory contains the following information:
The incident meta data in XML format, e.g., the incident event type in the file incident.xml.
The simulation meta data in XML format, e.g., the magnitude or depth of the simulation in the file simulation.xml.
The simulated time series of all triggered stations in MSEED format in the file data.mseed.
The time series are padded with zeros from origin time to the start of the simulated data.
Uniform noise of configurable amplitude is added to the time series.
An external script is called after export to finalize the data for the playback
tool toast-playback.
The script can be configured via playbackExternalScript
.
By default the script eqscenegenerator.sh is executed which in turn
calls the Python script eqscenegenerator.py. Both are part of the TOAST
package.
It adds the directory event, with several SeisComP event XML files with randomized magnitudes and locations which converge to the final value. They are used as event updates when running the playback. The zipped files are used for playback while the unzipped files can easily be inspected using a browser. It also creates the file event.log which is required by toast-playback and contains the information when the event updates are to be sent. Look at the external script for more details.
Note
The export works only for EasyWave simulations, as only those currently contain the required time series.
If one of the 3 steps for the creation fails, place to mouse pointer on top of the warning icon to get more information as tooltip.
Run playback¶
The playback is started with the commad-line tool toast-playback. It sends the events to quakelink and the simulated sea level observation time series to caps.
Before starting the playback,
the normal data acquisition has to be stopped (e.g. rs2caps, caps2caps, bomslo2caps),
the ql2sc module has to be running so that the events are received by the messaging and thus the TOAST server.
Make sure that ql2sc.cfg points to the queue which is the source for the TOAST daemon, e.g.
connection.server = localhost/seiscomp
.Stop scevent to avoid multiple incident creation, or
alternatively, adapt the ql2sc.cfg routing table in
host
quakelink server profile:Pick:PICK,Amplitude:AMPLITUDE,Origin:LOCATION,FocalMechanism::FOCMECH,Event:NULL
Start the playback with:
sysop@host:~$ toast-playback sim-directory-name
The quakelink and caps targets for toast-playback can be specified on command line using the options -Q and -C respectively.
The option -T or –event-lead-time can be used to define when the first event should be played back. Its default value is 300 seconds, negative values are also possible to omit the first part of the playback where the wave is far from impact.