Skip to content
Stephen Hicks edited this page Sep 28, 2017 · 24 revisions

Warning: Unfortunately, the wiki might not be up to date..

Description

ObsPyck is a GUI application that is intended to cover the tasks in a standard analysis workflow for seismic events in seismological observatory practice. To achieve this ObsPyck heavily relies on several ObsPy modules.

Data Retrieval

ObsPyck can connect to different servers (via obspy.seishub, obspy.arclink and obspy.fissures), automatically fetches waveforms and metadata (instrument responses, station coordinates) for given time span and network/station IDs and shows all fetched data in a fully interactive screen. Waveform data can also be visualized in form of spectrograms. There is also support for local files (all file formats recognized by ObsPy, metadata has to be supplied in either Dataless SEED or XSEED).

Data Analysis

ObsPyck can then be used to set P and S wave picks as well as set amplitude maxima/minima for magnitude estimation. These pick data can then be used to run various external programs (e.g. Hypo Inverse 2000, NLLoc, FocMec) that are addressed via system calls. Local magnitudes are calculated using ObsPy (including instrument corrections with fetched response information). The resulting event location and additional information is displayed together with station magnitudes and locations and in an interactive map. It is also possible to fetch and visualize event data for all events that are already present in the SeisHub database (see also SeishubExplorer).

Upload of Results

Finally the event results can be transformed to a XML document (structurally close to QuakeML) and uploaded to the connected SeisHub server.

Installation

Installation of stable versions from pypi is done with:

$ pip install obspyck

To install a current master version of obspyck, clone the repository and install using pip..

$ git clone https://github.com/megies/obspyck.git /path/to/my/obspyck
$ pip install /path/to/my/obspyck  # optionally add option '-e' for a linked installation, being able to update by simply pulling in new commits the git checkout

.. or install from a zipball, using e.g. this link for current master: Simply download the complete repository and run obspyck.py.

$ git clone https://github.com/megies/obspyck.git /path/to/my/obspyck
$ pip install /path/to/my/obspyck  # optionally add option '-e' for a linked installation, being able to update by simply pulling in new commits the git checkout

Once Obspyck is installed, edit the file setup.py and comment out the following line:

obspy>=1.1.0

Note: As of March 20th 2017, current master of obspyck needs a current obspy master, see https://github.com/megies/obspyck/issues/40. See https://github.com/obspy/obspy/wiki/Developer-Installation for full details on installing the development version of obspy.

In the future (when obspy 1.1.0 is out), there will be conda packages for an even easier installation, see https://github.com/conda-forge/obspyck-feedstock and https://anaconda.org/conda-forge/obspyck.

Obspyck also needs pyqt4 to be installed. This can be done with Anaconda (existing packages may need to be downgraded - this is okay - accept and continue):

$ conda install pyqt=4 

Running obspyck

Make sure that you are ‘inside’ your Anaconda Obspy development environment.

$ obspyck [waveform files] [dataless SEED file] –t [time start] –d [time length of window] –config [config file]

Notes:

  • obspyck -h displays usage details
  • Waveform files are a space-delimited set of filenames and paths. These files can be any Obspy-readable format – e.g. SAC, miniSEED, GCF. Can also be a single multiplexed miniSEED file.
  • A single dataless SEED volume file containing metadata for all stations to be analysed needs to be provided so station locations can be determined (and instrument response correction, if required).
  • Time start in the typical obspy UTCDateTime object format: yyyy-mm-ddThh:mm:ss
  • -d in seconds (optional). Default is defined in the config file.
  • Config file: path and filename. Example is given in the Obspyck installation directory Obspyck/Obspyck/example.cfg

Integrating with Hypoinverse (hypo2000)

  • Need to make a directory for location of Obspyck plugins (e.g. Hypoinverse, Nonlinloc, Focmec) - directory name is defined in the .cfg file – ‘pluginpath’
  • In the plug-in directory, you need the following: crustal velocity model (e.g. .crh); HypoInverse control file (e.g. .inp); hypoInverse binary executable file (see below)
  • Binary executable: source code available from ftp://ehzftp.wr.usgs.gov/klein/hyp1.40/; pre-compiled Linux version from http://faldersons.net/Software/Hypoinverse/Hypoinverse.html; Linux binary should be named “hyp2000__Linux__64bit” for Linux 64-bit or “hyp2000__Darwin__64bit” for Mac OSX
  • Hypoinverse working files are stored in temp directory determined by Python (normally /var/)

Screenshots

Clicking 'Overview' plots the Z trace of every stream. https://raw.github.com/megies/misc/master/images/obspyck_overview.png

After zooming in using the mouse wheel (shift + mouse wheel to zoom amplitude) picks can be set using the mouse buttons (or at the mouse position with user-defined keys). https://raw.github.com/megies/misc/master/images/obspyck_picking.png

After setting all picks the external location algorithm can be run e.g. by clicking 'do NLLoc'. The event location and information on residuals and magnitudes are displayed in an interactively zoomable map. https://raw.github.com/megies/misc/master/images/obspyck_map.png

After locating, the synthetic picks from the residuals are shown in the stream view. This enables convenient refining of picks. https://raw.github.com/megies/misc/master/images/obspyck_refine.png

Waveform data can also be visualized in form of spectrograms. https://raw.github.com/megies/misc/master/images/obspyck_spectrogram.png

Focal mechanisms determined by FocMec can be visualized indicating alternative solutions. https://raw.github.com/megies/misc/master/images/obspyck_focmec.png

A Wadati diagram can be plotted to estimate local Vp/Vs ratios. https://raw.github.com/megies/misc/master/images/obspyck_wadati.png

At the moment ObsPyck is tested on Linux and Mac. https://raw.github.com/megies/misc/master/images/obspyck_startup.png

The debugging mode allows access to all internal variables and data. https://raw.github.com/megies/misc/master/images/obspyck_debug.png

Dependencies

Necessary

Recommended

Clone this wiki locally