analysis.estimate_mc_maxc#

seismostats.analysis.estimate_mc_maxc(magnitudes: ndarray, fmd_bin: float, correction_factor: float = 0.2) tuple[float, dict[str, Any]]#

Returns the completeness magnitude (mc) estimate using the maximum curvature method.

Source:
  • Wiemer, S. and Wyss, M., 2000. Minimum magnitude of completeness in earthquake catalogs: Examples from Alaska, the western United States, and Japan. Bulletin of the Seismological Society of America, 90(4), pp.859-869.

  • Woessner, J. and Wiemer, S., 2005. Assessing the quality of earthquake catalogues: Estimating the magnitude of completeness and its uncertainty. Bulletin of the Seismological Society of America, 95(2), pp.684-698.

Parameters:
  • magnitudes – Array of magnitudes to test. NaN values will be ignored.

  • fmd_bin – Bin size for the maximum curvature method. This can be independent of the discretization of the magnitudes. The original value for the maximum curvature method is 0.1. However, the user can decide which value to use. The optimal value would be as small as possible while at the same time ensuring that there are enough magnitudes in each bin. If the bin size is too small, the method will not work properly.

  • correction_factor – Correction factor for the maximum curvature method (default value +0.2 after Woessner & Wiemer 2005).

Returns:
  • mc – Estimated completeness magnitude.

  • mc_info – Dictionary with additional information about the calculation of the best mc, including:

    • correction_factor: Correction factor for the maximum curvature method (default value +0.2 after Woessner & Wiemer 2005).

Examples

>>> from seismostats.analysis import estimate_mc_maxc
>>> import numpy as np
>>> magnitudes = np.array([2.3, 1.2, 1.5, 1.2, 1.7, 1.1, 1.2,
...                   1.8, 1.6, 1.2, 1.5, 1.2, 1.7, 1.6, 1.1,
...                   1.1, 1.2, 2.0, 1.1, 1.2, 1.1, 1.2, 1.6,
...                   1.9, 1.3, 1.7, 1.3, 1.0, 1.2, 1.7, 1.3,
...                   1.3, 1.1, 1.5, 1.4, 1.5]
>>> delta_m = 0.1
>>> mc, _ = estimate_mc_maxc(magnitudes, delta_m=delta_m)
>>> mc
1.4

The mc_maxc method also returns the correction factor used in the calculation of the best mc value.

>>> best_mc, mc_info = cat.estimate_mc_maxc(fmd_bin=0.1)
>>> mc_info['correction_factor']
0.2