Calculates amplitudes on basis of incoming origins and the associated picks.


scamp measures several different kinds of amplitudes from waveform data. It listens for origins and measures amplitudes in time windows determined from the origin. The resulting amplitude objects are sent to the “AMPLITUDE” messaging group. scamp is the counterpart of scmag. Usually, all amplitudes are computed at once by scamp and then published. Only very rarely an amplitude needs to be recomputed if the location of an origin changes significantly. The amplitude can be reused by scmag, making magnitude computation and update efficient. Currently, the automatic picker in SeisComP3, scautopick, also measures a small set of amplitudes (namely “snr” and “mb”, the signal-to-noise ratio and the amplitude used in mb magnitude computation, respectively) for each automatic pick in fixed time windows. If there already exists an amplitude, e.g. a previously determined one by scautopick, scamp will not measure it again for the respective stream.

Amplitudes are also needed, however, for manual picks. scamp does this as well. Arrivals with weight smaller than 0.5 (default) in the corresponding Origin are discarded. This minimum weight can be configured with amptool.minimumPickWeight.

Amplitudes for the following magnitudes are currently computed:

Local magnitude calculated on the vertical component using a correction term to fit with the standard ML
Local magnitude calculated on the vertical component using a correction term to fit with the standard ML
Local magnitude calculated on the horizontal components to SED specifications.
Local magnitude calculated from MLv amplitudes based on GNS/GEONET specifications for New Zealand.
Canadian Nuttli magnitude.
Narrow band body wave magnitude measured on a WWSSN-SP filtered trace
Cumulative body wave magnitude
Broad band body wave magnitude
The body wave magnitude of Tsuboi et al. (1995)
Mjma is computed on displacement data using body waves of period < 30s
Surface-wave magnitude at 20 s period
Broad band surface-wave magnitude
Duration magnitude as described in

Note that in order to be used by scmag, the input amplitude names for the various magnitude types must match exactly.


scamp can be used to reprocess and to update amplitudes, e.g. when inventory paramters had to be changed retrospectively. Updating ampitudes requires waveform access. The update can be performed in

  1. offline processing based on xml files (--ep<). --reprocess will replace exisiting amplitudes. Updated values can be dispatched to the messing by scdispatch making them available for further processing, e.g. by scmag.
  2. with messaging by setting start-time or end-time. All parameters are read from the database. --commit will send the updated parameters to the messing system making them available for further processing, e.g. by scmag. Otherwise, XML output is generated.

Offline amplitude update


seiscomp exec scamp --ep evtID.xml --inventory-db inventory.xml --config-db config.xml \
                    --reprocess --debug > evtID_update.xml
scdispatch -O merge -H host -i evtID_update.xml

Amplitude update with messaging


scamp -u testuser --inventory-db inventory.xml --config-db config.xml -H host \
      --start-time '2016-10-15 00:00:00' --end-time '2016-10-16 19:20:00' \



scamp inherits global options.


Type: list:string

Definition of magnitude types for which amplitudes are to be calculated. Default is MLv, mb, mB, Mwp.


Type: double

The minimum arrival weight within an origin to compute amplitudes for the associated pick. Default is 0.5.


Type: double

Unit: s

Timeout in seconds of the first data packet of waveform data acquisition. Default is 30.


Type: double

Unit: s

Timeout in seconds of any subsequent data packet of waveform data acquisition. Default is 2.



-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.

-x, --expiry time

Time span in hours after which objects expire.

-O, --origin-id publicID

OriginID to calculate amplitudes for and exit.


Dumps the filtered traces to ASCII when using -O.


--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 mode: –verbosity=4 –console=1

--log-file arg

Use alternative log file.


-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.


Test mode where no messages are sent.



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


Do not use the database at all



List all supported record stream drivers

-I, --record-url arg

The recordstream source URL, format: [service://]location[#type]. “service” is the name of the recordstream driver which can be queried with “–record-driver-list”. If “service” is not given “file://” is used.

--record-file arg

Specify a file as record source.

--record-type arg

Specify a type for the records being read.


--ep file

Defines an event parameters XML file to be read and processed. This implies offline mode and only processes all origins contained in that file. It computes amplitudes for all picks associated with an origin and outputs an XML file that additionally contains the amplitudes.


Reprocess and update existing amplitudes in combination with –ep. Manual amplitudes will be skipped. This option can be used, e.g. for reprocessing amplitudes with new inventory information. Waveform access is required.



Forces reprocessing of all amplitudes, even manual ones.

--start-time time
--end-time time

Send amplitude updates to the messaging otherwise an XML document will be output.