Introduction and Scope

SeisComP is likely the most widely distributed software package for real-time monitoring of earthquakes and other seismic events. It provides automatic and interactive seismological data acquisition, processing and data exchange over the internet. Its data transmission protocol SeedLink has become a de facto world standard.

SeisComP convinces many seismologists and earthquake specialists at data and research centers, companies and governmental agencies world-wide by:

  • Powerful and reliable automatic data processing in real time or during post-processing

  • User-friendly and comprehensive graphical interfaces

  • Modern and well-maintained OpenSource software on GitHub [1] welcoming community contributions.

The first work on what became SeisComP today began nearly two decades ago with developments at GFZ of plugins for digitizers. It is now continued by gempa GmbH and GFZ. The section on historical information provides details on the past and current releases.

Features

Today SeisComP includes the following features:

  • Data acquisition

  • Waveform archiving

  • Waveform data distribution

  • Data quality control

  • Data recording

  • Real-time data exchange

  • Network status monitoring

  • Real-time data processing

  • Automatic event detection and location

  • Interactive event detection and location

  • Automatic and interactive magnitude calculation

  • Interactive determination of focal mechanisms

  • Issuing event alerts

  • Event parameter archiving

  • Easy access to relevant information about stations, waveforms and recent earthquakes through graphical user interface and command-line tools

  • Python interface for developing custom scripts and modules.

Software Design

The guidelines for the design of SeisComP are:

  • Implementation of critical functions as standalone modules to guarantee the independence from other functions (e.g. picker, magnitude calculation, interactive analysis)

  • Easy implementation of custom modules

  • Independence of hard- and software

  • Ability of data exchange between different automatic real-time systems

  • Distribution of modules on several systems

  • Robust system for rapid and reliable earthquake solutions (especially during seismic crises)

These design principles have given SeisComP much robustness and flexibility to respond to new developments. The SeisComP community is encouraged to contribute their SeisComP source code on GitHub [1]. Examples and guidelines for generating code are given in the developer section.

This Documentation

This documentation begins with an Overview and a Concepts section necessary for understanding and using SeisComP successfully. The Glossary section introduces technical terms. All important code changes are listed in the change log. When using SeisComP or contributing source code, you should understand the license terms. If you actually make use of SeisComP and publish the results, we ask you to give appropriate reference as set out on the Citation section.

In the following section the documentation covers the installation and how to configure and operate a working SeisComP system. A few Tutorials will guide you through a first example set up and further operations.

The tutorials are followed by detailed technical descriptions of each individual SeisComP module, grouped by their general functionality:

  • Interactive analysis

  • Data acquisition

  • Inventory management

  • Automatic processing

  • Utilities

and many more extensions like descriptions of the RecordStream, magnitude types, locators, GUI customizations, waveform filters or plugins.

The final part of the documentation relates to contributing your own source code to SeisComP. This requires a deeper knowledge of the SeisComP data model and other details. This part also includes guidelines for developers such as coding conventions, unit tests and a guide for contributing documentation. Some Python examples help you to get started quickly with programming for SeisComP.

SeisComP is developed and distributed under the terms of the GNU Affero General Public License [2], as set out in the License section.