# MLc — SeisComP Release documentation

6.9.0

# MLc

Custom magnitude for local events measured on horizontal components

## Description

MLc is a custom magnitude for local events based on ML but with greater flexibility. The original implementation is based on specifications by the Hessian Agency for Nature Conservation, Environment and Geology, Hessian Earthquake Service. More options have been added allowing the magnitude to be configured with great flexibility in order to account for many different conditions. The general procedures for measuring amplitudes and computing magnitudes are outlined in the “Concepts” section on magnitudes.

The MLc magnitude is very similar to the original ML, except that

- Amplitude pre-filtering is applied by default.

- Wood-Anderson simulation is optionally applied and can be deactivated.

- Measured amplitudes can be scaled accounting for expected units.

- Measured amplitudes are combined by taking the maximum instead of the average.

- A parametric magnitude calibration function applies but a correction in the form log10(A0) can be configured for converting measured amplitudes to station magnitudes.

- Hypocentral instead of epicentral distance is considered by default.

### Amplitudes

Some general conditions apply for measuring amplitudes:

- Measured amplitude type: MLc.

- Expected unit of gain-corrected input data: m/s. Activate response correction in global bindings in case data are provided in acceleration.

- Components used for amplitude measurements: both horizontal components separately.

The default parameters for measuring MLc amplitudes can be adjusted by global binding parameters:

- Filtering before instrument simulation: BW(3,0.5,12), configurable by `amplitudes.MLc.preFilter`.

- Wood-Anderson seismometer simulation: yes, can be deactivated by `amplitudes.MLc.applyWoodAnderson`.

- Characteristics of Wood-Anderson seismometer: according to IASPEI recommendations. Can be adjusted by `amplitudes.WoodAnderson.gain`, `amplitudes.WoodAnderson.T0`, `amplitudes.WoodAnderson.h` in global bindings or global module configuration.

- Amplitude scaling: 1, configure by `amplitudes.MLc.amplitudeScale` for considering non-default units by magnitude.

- Method applied for measuring amplitudes: absolute maximum, configurable in global bindings by `amplitudes.MLc.measureType`.

- Method for combining amplitude measurements: max (maximum from both horizontal components), configurable in global bindings by `amplitudes.MLc.combiner`.

Some additional parameters require you to create an amplitude-type profile for global binding parameters. Name the profile like the amplitude name, hence MLc:

- Time window for measuring signal amplitudes [s]: P pick time + 150 s by scautopick or distance [km]/3 km/s + 30 s, the relevant parameters are: `amplitudes.MLc.signalBegin`, `amplitudes.MLc.signalEnd`. Time grammar may be applied for begin and end times.

- Time window for measuring noise amplitudes [s]: 30 s before the P pick, the relevant parameters are: `amplitudes.MLc.noiseBegin`, `amplitudes.MLc.noiseEnd`. Time grammar may be applied for begin and end times.

- Minimum SNR: 0, configurable by `amplitudes.MLc.minSNR`.

- Distance range: 0 - 8 deg, configurable by `amplitudes.MLc.minDist`, `amplitudes.MLc.maxDist`, stations at distances beyond 8 deg will be strictly ignored.

- Depth range: <= 80 km, can be adjusted and extended by `amplitudes.MLc.minDepth` and `amplitudes.MLc.maxDepth`.

Most parameters controlling the amplitude measurements are configurable in global bindings or global module configuration.

The Wood-Anderson simulation will convert input velocity data to ground displacement in mm. The input data may be of a different unit after applying `amplitudes.MLc.preFilter`, e.g. when integration is applied, and / or when Wood-Anderson simulation is disabled. Configure `amplitudes.MLc.amplitudeScale` for converting the unit of the processed data to the unit expected by the station magnitude calibration for the measured amplitude.

Note

For comparing MLc amplitudes with ML amplitudes set the global bindings parameters

    amplitudes.MLc.preFilter = ""
    amplitudes.MLc.combiner = average

### Station magnitudes

Default properties, most parameters are configurable in global bindings:

- Distance type: hypocentral, epicentral can be selected by `magnitudes.MLc.distMode`.

- Distance range: 0 - 8 deg, configurable by `magnitudes.MLc.minDist`, `magnitudes.MLc.maxDist`, measurements beyond 8 deg will be strictly ignored.

- Depth range: <= 80 km, can be extended by `magnitudes.MLc.maxDepth`.

- Expected amplitude type: MLc, configurable by magnitude alias.

- Expected amplitude unit: millimeter (mm), other units can be assumed by amplitude scaling with `amplitudes.MLc.amplitudeScale`.

- Magnitude calibration type: parametric, parametric and non-parametric are available through `magnitudes.MLc.calibrationType`.

- Calibration function (see below for the equations), configurable by global bindings depending on the actual calibration type:

  - parametric: `magnitudes.MLc.parametric.c0`, `magnitudes.MLc.parametric.c1`, `magnitudes.MLc.parametric.c2`, `magnitudes.MLc.parametric.c3`, `magnitudes.MLc.parametric.c4`, `magnitudes.MLc.parametric.c5`

  - A0: `magnitudes.MLc.A0.logA0`

- Station correction: none, configurable by a magnitude-type profile in global bindings with `magnitudes.MLc.offset` or the equivalent in global module configuration as `module.trunk.NET.STA.magnitudes.MLc.offset`. The latter is not supported by scconfig but it reduces the amount of required bindings.

The calibration function is considered in one of the forms

- parametric when `magnitudes.MLc.calibrationType` = “parametric”`:

  where

  - A: displacement amplitude measured in unit of mm or as per configuration

  - r: hypocentral (default) or epicentral distance

  - c1, c2, c3, c4, c5: general calibration parameters

  - c0: station-specific correction

  - r: Hypocentral (default) or epicentral distance as configured by `magnitudes.MLc.distMode`.

  The default values are valid for SW-Germany (Stange [62]), c6 and H have been added for supporting dependency on depth (Rhoades et al. [56]).

- log10(A0)-based non-parametric when `magnitudes.MLc.calibrationType` = “A0”`:

  where

  - : distance-dependent correction value. Read MLv for the details.

Note

The magnitude calibration function can be regionalized by adjusting global module configuration parameters in MLc region profiles of `magnitudes.MLc.region.*` and in a MLc Magnitude type profile e.g. in `global.cfg`.

The flexibility of the amplitude and magnitude processing allows for MLc to be applied in various use cases. Examples are given below.

- Default: Pre-filtered and gain-corrected amplitudes, Wood-Anderson corrected and measured in mm for Southwestern Germany, Stange [62]:

- Wood-Anderson-corrected displacement amplitudes measured in mm for Southern California, Hutton and Boore [45]:

- Pre-filtered velocity amplitudes in units of mym/s (requiring to set `amplitudes.MLc.amplitudeScale`), no Wood-Anderson correction, for West Bohemia, e.g. Hiemer and Roessler [44]:

MLc magnitudes for measured amplitude of 1 mm with default magnitude calibration (MLc_s, Stange [62]) and calibration values for Southern California (MLc_hb, Hutton and Boore [45]).

### Network magnitude

The network magnitude is computed from station magnitudes automatically by scmag or interactively by scolv. Originally the median was computed from all station MLc to form the network magnitude MLc. Here, the trimmed mean is applied. Outliers beyond the outer 12.5% percentiles are removed before forming the mean. The method can be adjusted in scmag by `magnitudes.average`.

### Moment magnitude

MLc can be scaled to a moment magnitude, Mw(MLc), by a magnitude-type profile in global module configuration. Read the Tutorial on moment magnitudes for the details.

### Magnitude aliases

Magnitude aliases can be created by `magnitudes.aliases` in global module configuration in order to derive other magnitude types from original amplitudes and magnitudes. The actual amplitude and magnitude parameters of the aliases will be configured in global bindings or by magnitude-type profiles in global module configuration. Read the Tutorial on magnitude aliases for the details.

### Regionalization

Regionalization may be achieved by a magnitude-type profile in global module configuration. Read the Tutorial on regionalization for the details.

## Setup

1. Set the configuration and calibration parameters in the global bindings similar to ML. Instead of configuring lots of global bindings profiles or station bindings one line per parameter can be added to the global module configuration (`global.cfg`) which takes the form

       module.trunk.NET.STA.amplitudes.MLc.preFilter = value
       module.trunk.NET.STA.magnitudes.MLc.parametric.c0 = value

2. Add MLc to the list of default amplitudes and magnitudes if MLc is to be computed by automatic modules, e.g. of scamp, scmag.

3. Configure scmag (`magnitudes.average` in `scmag.cfg`) for choosing the method to form the network magnitude from station magnitudes, e.g.

       magnitudes.average = MLc:median

4. Add MLc to the list of magnitudes preferred by scevent (`eventAssociation.magTypes` in `scevent.cfg`) in order to let MLc become the preferred magnitude.

5. Set defaults/visibility of MLc in GUI modules, e.g. scolv or scesv.

Note

All default values for bindings configuration parameters are from Stange [62].