SeisComP3

Table Of Contents

Previous topic

IPGP GUI

Next topic

scbev

This Page

scaemv

Advanced Event Manager View

Events list

The events list displayed by scaemv is customizable. Columns can be dynamically shown or hidden, events and origins filtered.

../_images/ctx_header.png

Header context menu.

../_images/evnt_filters.png

Miscellaneous filters.

When retrieving large timewindows of events, requests can be heavy on the database, therefore it is better practice to use a secondary thread (other than the one used by the gui), and also, use the cache engine can help speed up this process.

# Should the GUI be using a separate thread to fetch objects ?
# @note the interface will be responsive but this will input some delay on the
#       entire operation
aemv.eventList.useSeparateThread = true

# Should the GUI be using a cache to store objects
# @note using a cache engine will reduce the time required to fetch objects
#       but in the mean time, you should clear/refresh this cache periodically
#       to ensure that objects are up to date
aemv.eventList.useCacheEngine = true

It is possible to filter events by locators.

# Locators name
aemv.locators = LOCSAT, Hypo71,Earthworm, NonLinLoc

# Locator LOCSAT
aemv.locator.LOCSAT.profiles = iasp91, tab

# Locator Hypo71
aemv.locator.Hypo71.profiles = "OVSM Dorel Volcanic", "OVSM Dorel Tectonic", "OVSM Landslide"

# Locator Earthworm
aemv.locator.Earthworm.profiles = "EW Dorel profile"

# Locator NonLinLoc
aemv.locator.NonLinLoc.profiles = ak135_global, iasp91_global

It is possible to filter events by type from scratch.

# Default origin type filters.
# @note Those options set the application default event list composition.
#       They are also configurable dynamically by using tool button but won't
#       by saved when exiting.

# Show/Hide events flagged with 'not existing' type
aemv.showNotExistingOrigins = false

# Show/Hide events flagged with 'not locatable' type
aemv.showNotLocatableOrigin = false

# Show/Hide events without type
aemv.showOriginsWithNoType = false

# Show/Hide events flagged with 'outside of network interests' type
aemv.showOutOfNetworkInterestsOrigins = true

# Authorize events deletion
aemv.eventList.allowAdvancedOptions = true

# Highlight events row whenever an interaction occurs
# @e.g. Objects selected in cross section will be highlighted with a
#       distinctive color
aemv.eventList.decorateItems = true

# Draw pins when an event is selected
aemv.eventList.paintPinBox = true;

# Draw shadow around selected event's pin
aemv.eventList.paintPinsShadow = false

# Fetch orphan origins
aemv.eventList.fetchUnassociatedOrigins = false

# Fetch preferred origins comments
aemv.eventList.fetchPreferredOriginComment = false

# Fetch secondary origins comments
aemv.eventList.fetchSiblingOriginComment = false # 'sibling' a.k.a. 'not preferred'

# Fetch orphan origins comments
aemv.eventList.fetchUnassociatedOriginComment = false

Note

Those options are editable within the configuration menu at runtime.

../_images/config_filters.png

Events types filters.

Residual/Distance

../_images/res_dists.png

Residual/Azimuth

../_images/res_azi.png

Residual/TakeOffs

../_images/res_takeoffs.png

Particle Motion

scaemv ships with a particle motion viewer accessible through the menu File, Graphics, Origin then Particle Motion. It is also possible to display this widget by using the XYZ button in the summary toolbox.

../_images/pm_tabstations.png

Particle motion window.

Data loading

Based upon the same API as scolv, scrttv and others, traces are displayed by using Seedlink and Arclink requests. It is possible to apply basic and customized stream filters.

# Seedlink/Arclink URI service
recordstream.uri = combined://localhost:18000;localhost:18001??rtMax=86400

# Stream filters
picker.filters = "BP 1 - 15 Hz 3rd order;BW(3,1,15)",\
                  "HP 1.5 3rd order;BW_HP(3,1.5)",\
                  "HP 3 n3;BW_HP(3,3)",\
                  "Landslide - BP 1 - 4 Hz n4;BW(4,1,4)",\
                  "BP 0.7 - 2 Hz;BW(3,0.7,2)",\
                  "4 pole HP @2s;BW_HP(4,0.5)",\
                  "4 pole LP @2s;BW_LP(4,0.5)"

Warning

Only valid arrivals are loaded.

The first phase of this process is the connection to the waveform server. The default waiting delay is 30 seconds, otherwise, the application stops the request and closes the connection.

# Maximum delay before calling it quit (connection + data receive timeout)
recordstream.timeout = 30

Miniseed packets are received station by station. Therefore the data quality control is executed at the end, when all stations have been accounted for.

../_images/pm_qcdata.png

Waiting for data quality control.

Once the entire pool of data has been verified, the user is informed of their state. Graphics generated from a region containing gaps couldn't be properly generated.

../_images/pm_datagap.png

Quality control completed.

Region selection

It is possible to select a region to be analyzed by double clicking through the traces.

If the selected station streams contains picks P and S, the default selected region of the analysis will be the interval defined by those picks.

../_images/pm_defaultplot.png

Default region between P and S picks.

Green (start) and red (end) flags from the toolbar make it possible to redefine the selected region of region of interest to be analyzed.

Filter selection

Filters can be applied to streams

../_images/pm_selectfilter.png

Filter application.

Change active sensor

The default behavior of this widget is to display data from the station seismometer. If the station dispose of more than one sensor, it is possible to display them aswell.

Use the Stream combo box

../_images/pm_streamselectiona.png

Sensor selection.

Exporting data

Data (time / counts) from the selected region can be exported.

../_images/pm_savedata.png

Data export.

../_images/pm_csvdata.png

CSV format export.

Magnitude density

This widget displays the repartition of seismics events by latitudes, longitudes and depths.

../_images/mag_density.png

Magnitude density widget.

Drift to hypocenters

This widget displays the temporal distribution of seismic hypocenters throughout time by latitudes, longitudes and depths.

../_images/hypodrift.png

Hypocenters drift widget.

Gutenberg Richter

This widget displays the expression of the Gutenberg and Richter law applied to a seismic catalog.

../_images/grlaw.png

Gutenberg-Richter widget.

Wadati diagram

This widget displays the expression of the Wadati law applied to a seismic catalog.

../_images/wadati.png

Wadati diagram widget.

Cross section

Associated with the Events map, this widget displays latitudes and longitudes cross section of events inside a zone of interest.

../_images/cross_section.png

Events Map and Cross section widgets.

The user may define as much cross section profiles as wanted.

# Cross section's profiles
crossSection.profiles = Earthquake, Volcano
crossSection.profile.Earthquake.latitude.a = 14.2
crossSection.profile.Earthquake.longitude.a = -62.27
crossSection.profile.Earthquake.latitude.b = 15.4
crossSection.profile.Earthquake.longitude.b = -59.12
crossSection.profile.Earthquake.width = 80
crossSection.profile.Earthquake.depthMin = 3
crossSection.profile.Earthquake.depthMax = 200
crossSection.profile.Volcano.latitude.a = 14.807
crossSection.profile.Volcano.longitude.a = -61.18
crossSection.profile.Volcano.latitude.b = 14.815
crossSection.profile.Volcano.longitude.b = -61.156
crossSection.profile.Volcano.width = 1
crossSection.profile.Volcano.depthMin = -1
crossSection.profile.Volcano.depthMax = 3
...

Event energy

This widget displays the accumulated seismic energy of the events timewindow.

../_images/energy.png

Events energy widget.

Events type variation

This widget displays the evolution of the number of events categorized in types throughout time.

../_images/evttype.png

Events type variation widget.

Events phase duration

This widget displays the evolution of the S-P duration for each station over time.

../_images/evtphasedur.png

Events phase duration widget.

Magnitude variation

This widget displays variations of magnitudes over time.

../_images/mv1.png

Stacked cummulated magnitudes.

../_images/mv2.png

Cummulated magnitudes curves.

../_images/mv3.png

Magnitudes curves.

Uncertainties

This widget displays latitudes, longitudes, depths, RMSs, phases and magnitudes uncertainties for the events timewindow.

../_images/uncertainties.png

Uncertainties widget.

Events map

This widget displays a geographic map on which events from the catalog are plotted. This widget is interactive. Symbols can be clicked on and vice-versa, the user can pin point origins by selection from the events list.

Display properties:

# Display pin to highlight a POI (Point Of Interest) on the map whenever
# an object receives a click
aemv.eventMap.paintPins = true

# Accompany pins with information boxes
aemv.eventMap.paintPinsWithBox = true

# @note Graphic effect
#       Activate this option to emphasis pins shadow, this option is not
#       to be applied on low budget CPUs...
aemv.eventMap.paintPinsWithShadow = false

# Auto clear pins from map
aemv.eventMap.clearPinsAuto = true

# Pins clearing delay (in seconds)
aemv.eventMap.clearPinsDelay = 5

Station stream

Ce widget permet d'afficher l'ensemble des flux actifs en temps réel des stations de l'inventaire.

../_images/stream.png

Widget station stream.

Widgets interactions

Each widget gets data from the main events list. Therefore, whenever the latter changes, their pool of events, origns, etc also evoluates. Most of them are able to signal events and or origins so that the matching entity could be highlighted on the map, or the events list.

Keyboard shortcuts

The following table describes available shortcuts and their actions.

Shortcut Description
F1 Displays the online help index
Shift+F1 Displays this application online help
F2 Displays the connection configuration dialog connections (db / master)
F3 Displays the application configuration dialog
F8 Shows/hides summary widget
F9 Displays the application log
Ctrl+Shift+D Displays Residual/Distance widget
Ctrl+Shift+A Displays Residual/Azimuth widget
Ctrl+Shift+R Displays Residual/TakeOffs widget
Shift+P Displays Particle Motion widget
Shift+D Displays Magnitude density widget
Ctrl+Shift+H Displays Drift to hypocenters widget
Ctrl+Shift+G Displays Gutenberg-Richter relation widget
Ctrl+Shift+W Displays Wadati relation widget
Ctrl+Shift+Z Displays Cross section widget
Ctrl+Shift+E Displays Event Energy widget
Ctrl+Shift+T Displays Event Type Variation widget
Ctrl+Shift+P Displays Event Phase Duration widget
Ctrl+Shift+V Displays Magnitude variation widget
Ctrl+Shift+U Displays Uncertainties widget
Shift+M Displays Events Map widget
Shift+T Displays Topography Map widget
Ctrl+Shift+L Displays Station stream widget

Units and decimals

scwev can be configured to display information according to user's preferences.

# If true, show distances in km. Use degree otherwise.
scheme.unit.distanceInKM = true

The same goes for the number of decimals:

# Default precision
scheme.precision.general = 2

# Precision of depth values.
scheme.precision.depth = 0

# Precision of lat/lon values.
scheme.precision.location = 2

# Distances
scheme.precision.distance = 2

# R.M.S
scheme.precision.rms = 1

# Azimuth
scheme.precision.azimuth = 0

# Precision of pick times (fractions of seconds).
scheme.precision.pickTime = 1

Map

The displayed map(s) are based upon normalized tiles (256x256 pixels). The user may choose to use simultaniously several tile designs, therfore it is possible to specify more than one tile design.

# Tile design names
map.names = "ESRI - Ocean Basemap", "Google - Hybrid Sat/Terrain",\
            "OpenStreetMap - Terrain"

# Tile design paths (ordered)
map.paths = @DATADIR@/maps/esri/Ocean_Basemap/,\
            @DATADIR@/maps/gmap-hybrid/,\
            @DATADIR@/maps/opencyclemap/

Tiles

Tiles are organized in different zoom levels, columns and lines, the user should specify the way they are stored.

# OpenStreetMap's default tile pattern is "%1/%2/%3", the tile
# engine is configured to use less sub-folders...
# map.tilePattern = "%1/osm_%1_%2_%3"
# - %1 = zoom level (0-*)
# - %2 = column (0- 2^zoom-1)
# - %3 = line (0- 2^zoom-1 in Mercator projection)
# Each parameter can be used more than once.
# @note It is not mandatory to specify the extension of the file, the
#       algorithm will try and fetch PNG and JPG files
map.tilePattern = "%1/%2/%3"

More information about tiles OpenStreetMap slippy map

Objects

Objects are organized by canvas in wich several layers and decorators are registered. Tiles are part of the background canvas whereas objects like epicenters, stations, etc, are called drawables and painted by the foreground canvas. Decorators may overpaint the foreground canvas.

Application execution

scbev can be launched by using the standard command.

seiscomp exec scaemv

Configuration

etc/defaults/global.cfg
etc/defaults/scaemv.cfg
etc/global.cfg
etc/scaemv.cfg
~/.seiscomp3/global.cfg
~/.seiscomp3/scaemv.cfg

scaemv inherits global options.

loadEventDB

Type: int

Number of days of events to pre-load when application is started. Default is 30.

recordstream.timeout

Type: int

Defines the maximum period (in seconds) over which an seedlink/arclink request is considered as being out of time if no records have been received. Default is 30.

recordstream.uri

Type: string

Defines the URI to the seeldink/arclink server(s). The standard slink/combined systems are supported. Default is slink://localhost:18000.

picker.filters

Type: list:string

Defines a list of data stream filters. Default is "BP 1 - 15 Hz 3rd order;BW(3,1,15)", "HP 1.5 3rd order;BW_HP(3,1.5)", "BP 0.7 - 2 Hz;BW(3,0.7,2)", "4 pole HP @2s;BW_HP(4,0.5)", "4 pole LP @2s;BW_LP(4,0.5)".

map.names

Type: list:string

Defines a list of tilemap's names.

map.paths

Type: list:path

Defines the paths binded with the maps tiles. Tiles folders/files have to be sensitive to this formulation: maps_directory/%zoom%/osm_%zoom%_%column%_%tile%.png. Several tiles maps can be added regarding right association of paths and names.

map.defaultLatitude

Type: double

Sets the default map latitude in decimal degrees.

map.defaultLongitude

Type: double

Sets the default map longitude in decimal degrees.

scheme.styleSheet

Type: file

Defines the stylesheet (CSS) to use for GUI customization.

scheme.precision.depth

Type: int

Defines the number of decimals that should be visible for depth values. Default is 2.

scheme.precision.distance

Type: int

Defines the number of decimals that should be visible for distance values. Default is 2.

scheme.precision.location

Type: int

Defines the number of decimals that should be visible for location values. Default is 2.

scheme.precision.rms

Type: int

Defines the number of decimals that should be visible for R.M.S. values. Default is 2.

scheme.precision.azimuth

Type: int

Defines the number of decimals that should be visible for azimuth values. Default is 0.

scheme.precision.pickTime

Type: int

Defines the number of decimals that should be visible for pickTime values. Default is 1.

scheme.unit.distanceInKM

Type: boolean

Defines the unit in which distance are displayed. Default is true.

scheme.fonts.base

Type: string

Defines the base font family to use. Default is Arial.

scheme.fonts.normal

Type: double

Defines the base font family size to use. Default is 10.

aemv.locators

Type: list:string

Defines a list of locators that will be available as filters.

aemv.global.availableMagnitudes

Type: list:string

Magnitudes types available in graphics widgets. Default is Md, Ms, mB, ML, mBc, MLv, MLh, Mwp, Mw(mB), Mw(mBc), Mjma, M.

Note

aemv.locator.$name.* Defines a list of profiles belonging to a locator. $name is a placeholder for the name to be used and needs to be added to bev.locator.@LOCATOR.profiles to become active.

bev.locator.@LOCATOR.profiles = a,b
aemv.locator.a = ...
aemv.locator.b = ...
# c is not active because it has not been added
# to the list of bev.locator.@LOCATOR.profiles
aemv.locator.c = ...
aemv.eventList.useSeparateThread

Type: boolean

Sets whether or not objects (events) should be fetched by using another thread than the GUI's one. Default is true.

aemv.eventList.useCacheEngine

Type: boolean

Sets whether or not objects (events) should be fetched and stored inside a cache. Default is true.

aemv.eventList.useNormalizedEpicenterSize

Type: boolean

Defines if epicenters should be painted by using the normalized size obtained by ratio of magnitude. If set to false, the size will be calculated by using a smaller ratio (1.5). Default is false.

aemv.eventList.fetchUnassociatedOrigins

Type: boolean

Default is false.

aemv.eventList.fetchPreferredOriginComment

Type: boolean

Default is false.

aemv.eventList.fetchSiblingOriginComment

Type: boolean

Default is false.

aemv.eventList.fetchUnassociatedOriginComment

Type: boolean

Default is false.

aemv.eventList.decorateItems

Type: boolean

Default is true.

aemv.eventList.allowAdvancedOptions

Type: boolean

Default is true.

Command-line

Generic

-h, --help

show help message.

-V, --version

show version information

--config-file arg

Use alternative configuration file. When this option is used the loading of all stages is disabled. Only the given configuration file is parsed and used. To use another name for the configuration create a symbolic link of the application or copy it, eg scautopick -> scautopick2.

--plugins arg

Load given plugins.

-D, --daemon

Run as daemon. This means the application will fork itself and doesn't need to be started with &.

--auto-shutdown arg

Enable/disable self-shutdown because a master module shutdown. This only works when messaging is enabled and the master module sends a shutdown message (enabled with --start-stop-msg for the master module).

--shutdown-master-module arg

Sets the name of the master-module used for auto-shutdown. This is the application name of the module actually started. If symlinks are used then it is the name of the symlinked application.

--shutdown-master-username arg

Sets the name of the master-username of the messaging used for auto-shutdown. If "shutdown-master-module" is given as well this parameter is ignored.

Verbosity

--verbosity arg

Verbosity level [0..4]. 0:quiet, 1:error, 2:warning, 3:info, 4:debug

-v, --v

Increase verbosity level (may be repeated, eg. -vv)

-q, --quiet

Quiet mode: no logging output

--component arg

Limits the logging to a certain component. This option can be given more than once.

-s, --syslog

Use syslog logging back end. The output usually goes to /var/lib/messages.

-l, --lockfile arg

Path to lock file.

--console arg

Send log output to stdout.

--debug

Debug mode: --verbosity=4 --console=1

--log-file arg

Use alternative log file.

Messaging

-u, --user arg

Overrides configuration parameter connection.username.

-H, --host arg

Overrides configuration parameter connection.server.

-t, --timeout arg

Overrides configuration parameter connection.timeout.

-g, --primary-group arg

Overrides configuration parameter connection.primaryGroup.

-S, --subscribe-group arg

A group to subscribe to. This option can be given more than once.

--encoding arg

Overrides configuration parameter connection.encoding.

--start-stop-msg arg

Sets sending of a start- and a stop message.

Database

--db-driver-list

List all supported database drivers.

-d, --database arg

The database connection string, format: service://user:pwd@host/database. "service" is the name of the database driver which can be queried with "--db-driver-list".

--config-module arg

The configmodule to use.

--inventory-db arg

Load the inventory from the given database or file, format: [service://]location

--db-disable

Do not use the database at all

User interface

--fullscreen arg

Starts the application in fullscreen mode

--stylesheet arg

Customize the user interface by using style from the given stylesheet