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.