wiki:ShTools/ScpToEvt
Last modified 15 years ago Last modified on 04/07/2009 03:56:56 PM

ScXML2Evt: SeisComP3 conversion utility

This tool converts the XML dump produced by SeisComP version 3 (SC3) into EVT format. So you are able to access SC3's automated picks.

How to get the XML dump

To obtain a suitable XML dump use the following command in seiscomp/bin:

./scxmldump --event eventid --database mysql://... --preferred-only --with-picks --formatted --output dump.xml

Please supply a valid SC3 eventid and you database connection string for your installation of SC3. The dump now contains picks, arrivals and event information for the most likely localisation for this specific event.

Please note: The XML output of SC3 is subject to change due to upcoming incorporation of the new QuakeML standard.

Transform into Seismic Handler's evt format

Please always use the latest version of ScXML2Evt!

Simply supply input and output file to the script:

./scxml2evt.py dump.xml event.evt

If you omit the output file, results will be written to stdout. Any existing output file will be overwritten!

Read EVT file

The resulting EVT file can be read in SHM. Access via "Save -> Recover evt..." (read more...). If you have event lists, simply add the name of the resulting EVT file as second row in the eventlist file. In this case available data streams are read automatically!

download & installation

ScXML2Evt is available via SVN repository: https://www.seismic-handler.org/svn/Tools/ScXML2evt/.

Important: You have to edit a small part of the ScXML2evt script! Since Seismic Handler cannot dynamically fetch information of unknown stations, the script comes with a filter to prevent errors while using the evt file.

Please look for the "stations" variable close to the beginning of scxml2evt.py:

# list of stations to be put in evt file
# note: stations = [] will allow all
stations = [
    "WET", "TNS",
]

In this example the stations WET and TNS will be present in the resulting evt file, all other stations will be silently rejected. If you don't need to use this filter, simply change to:

stations = []

system requirements

ScXML2Evt has been tested within following environment:

  • (K)Ubuntu 8.04
  • python 2.5.2
  • lxml library version 2.1.beta2
  • SuSE 9.3 (libxml and libxslt as prerequisities for lxml are too old, but it works)
  • python 2.4
  • lxml library version 0.7 (rpm from rpmseek)

Since the script isn't complex, it should work anywhere python's lxml module runs.