.. _scautomt-algorithm: Algorithms ========== :ref:`scautomt` and :ref:`scmtv` invert processed waveforms from :ref:`muliple seismic phases ` for seismic moment tensors in the time domain. Either the deviatoric or the full moment tensor can be computed as controlled by :confval:`automt.invertFor6Components`. Inversion for deviatoric and full moment tensors require 8 and 10 component :ref:`Green's functions `, respectively. .. note :: Inverting for the full moment tensor is unsupported in SeisComP3 in version Jakarta-2018.327 or earlier. .. _sec-scautomt-work-flow: Work flow --------- The data processing is configured specfically for :ref:`seismic phases ` and for different frequency ranges. The basic inversion algorithm with given profiles works as follows: #. Acquire waveform data of all three components of configured stations with respect to P onset and the configured signal length (see above) including a configurable margin and a maximum epicentral distance (:confval:`automt.maximumDistance`) #. :ref:`Time windowing ` and :ref:`waveform quality control `. #. Restitute data to displacement #. Load Green's functions for each station #. The data are resampled at the sampling frequency of the :ref:`Green's functions`. #. Rotate 3 components into ZRT system and downsample it to match the Green's function sampling frequency #. Cut configured wave types and filter with bandpass #. Align waveform data with Green's functions by cross correlation to obtain the best phase match. The maximum shift allowed for the entire dataset is given by :confval:`automt.profiles.$name.maxShift` in steps of :confval:`automt.profiles.$name.shiftStep` to account for differences of the centroid with respect to the source time. An additionally time shift is allowed for each individual component to account for relative phase shifts. The maximum is defined by the magnitude-dependent inversion profiles. #. Create inversion matrix and solve for moment tensor Optionally, the :ref:`3D Centroid location ` can be sought. By command-line parameters, further constraints can be made for the location. This :ref:`basic algorithm ` does not account for bad data quality or incorrect timing. To accomplish that several tests are being made in advance to the final inversion. .. _sec-scautomt-mt-phases: Seismic phases -------------- The basis for the waveform inversion algorithm are waveforms. To define what part of the waveform after an event to use different wave types are actually supported: - Body waves: P wave (Z), S wave (R,T) - Surface waves: Rayleigh wave (Z,R), Love wave (T) - Mantle waves: Rayleigh wave (Z,R), Love wave (T) - W-phase (Z,R,T) - full waveform (Z,R,T) The letters in brackets denote the seismogram components actually used for inversion of the considered wave type. The algorithm itself does not take notice of the different wave types and their characteristics itself. Almost any wave type parameter need to be configured in so called profiles. .. _sec-scautomt-time-windows: Time windows ------------ The waveforms of seismic phases used for inversion are searched in time windows with respect to origin time. The start and the end of these phase-dependent time windows is defined individually per phase and separately for every profile, e.g. :confval:`automt.profiles.$name.signalBegin.body.P` and :confval:`automt.profiles.$name.signalEnd.body.P` for P waves. If undefined :ref:`standard values` apply. * *Time windowing:* The time window for initially reading the data equals the time window used for the :ref:`Green's functions`. It is determined by * :confval:`automt.data.maxDistanceTimeWindows` time windows from P-wave onset for extracting data and Green's functions based on distances (linear interpolartion in between). * :confval:`automt.data.safetyMargin`, :confval:`automt.data.leftNoiseLength`, :confval:`automt.data.rightNoiseLength` adding to :confval:`automt.data.maxDistanceTimeWindows` to account for travel-time uncertainties and artefacts from data processing at the edges of the windowed data, e.g. filtering. .. _fig-automt-data: .. figure:: ../apps/media/scmtv/mt_distance_time_window.png :width: 18cm :align: center Configuration parameters and time window (red area) with default values used for extracting waveform data and Green's functions. * *Phase-dependent time windowing:* The waveforms of seismic phases used for inversion are searched within the initial time window. The start and the end of the phase time windows relative to origin time can be defined per phase individually separately for every profile, e.g., :confval:`automt.profiles.$name.signalBegin.body.P` and :confval:`automt.profiles.$name.signalEnd.body.P` for P waves. If the times are undefined, :ref:`standard values` apply. If the times are defined, they are either read from actual phase picks or from a travel-time table. Read the section :ref:`data-alignment` for the details. The following table shows the standard values relative to origin time for each wave type. .. _scautomt-phase-time-windows: ========== ============= =============== Type Start time End time ========== ============= =============== P P-maxShift sP+90s+maxShift S S-maxShift S+200s+maxShift Rayleigh Lr-maxShift END OF SIGNAL Love Lq-maxShift END OF SIGNAL W-phase P-30s P+15*distance Full custom(0) custom(300) ========== ============= =============== The END OF SIGNAL time is defined by a configurable function of distance. The default function is as follows: ============= ============= Distance (km) End time (s) ============= ============= 0 80 200 100 2050 832.5 4050 1617 6050 2392.5 8050 3164 10050 3953 12050 4720 14050 5506.5 16050 6234.5 18050 7011 20500 8000 ============= ============= .. _sec-scautomt-centroid: CMT: 3D-Centroid search ----------------------- During processing the 3D Centroid moment tensor (CMT) and its location are determined if :confval:`automt.centroid.enabled` is enabled. The depth search is defined by :confval:`automt.depthSearchGrid` and :confval:`automt.depthFineSearchIncrements`. The Centroid location with the highest :ref:`fit ` is selected. For inspecting the Centroid depth graphically, start the :ref:`Centroid search in scmtv `. Single inversion quality ------------------------ An inversion is made for each waveform snippet/item (data of a certain wavetype on a certain component) on the vertical and radial component. If the best :ref:`Fit ` is below the configured minimum item fit (profile.*.minItemFit) it is removed from further processing. Tangential items are removed along with radial components of the same wave type. .. _sec-solution_fit: Solution Fit ------------ The goodness of an inversion is measured by the Fit (goodness of fit, GOF). Two different methods are available for computing the FIT. The method can be configured by :confval:`automt.GOF`: #. *internal* (:confval:`automt.GOF` = internal): .. math:: Fit = 2 * \frac{\sum_i d_i * s_i}{\sum_i d_i^2 + \sum_i s_i^2} * 100 \text{\%} #. *variance reduction* (:confval:`automt.GOF` = varred): The fit function according to Minson and Dreger, 2008. .. math:: Fit = \left( 1 - \frac{\sum_i (d_i - s_i)^2}{\sum_i d_i^2 } \right) * 100 \text{\%} with * :math:`d_i`: data sample * :math:`s_i`: samples of synthetics (Green's functions). .. note:: *Fit* is used as a measure of goodness in the :ref:`Centroid depth search of scmtv `. .. _sec-solution_quality: Solution Quality ---------------- In addition to the :ref:`Fit `, the *Quality* parameter as shown in the depth search widget of :ref:`scmtv` is measured as the product of :math:`Fit` and the ratio of the number of used stations :math:`N_{used}` vs. the number of stations available :math:`N_{available}` for the inversion: .. math:: Quality = Fit * \frac{N_{used}}{N_{available}} Due to optional optimization during inversion stations with insufficient station fit can be removed and the number of used stations can be removed. When leaving only very few stations after optimization, the :ref:`Fit ` may become high while the *Quality* increases. .. note:: Quality of used as a measure of goodness in 3D-Centroid search. .. _sec-scautomt-mt-decomp: Moment-tensor decomposition --------------------------- The moment tensor can be decomposed into components representing physical processes: * **DC**, double-couple: shear sources, e.g. tectonic earthquakes * **ISO**, isotropic: sources of volume changes, e.g. explosions or implosions * **CLVD**, compensated linear vector dipole: complicated sources, e.g. ring faulting, rupturing bent faults, collapse of caveties. DC and CLVD form the deviatoric moment tensor (DEV). The magnitude of the components is typically given as a percentage (%). For the decomposition different methods are available: * :ref:`Default `: Decomposition by :cite:t:`silver-1982`. This is the default. * :ref:`MTDecomp100 `: Decomposition by :cite:t:`knopoff-1970`. relating all components separately to the :term:`total seismic moment ` of the event. .. _sec-mt-decomp-default: Default ....... By default the moment tensor is decomposed into the deviatoric (DEV) and isotropic (ISO) components where DEV is related to the total seismic moment according to Silver & Jordan (1982). The deviatoric part contains the double-couple (DC) and the compensated linear vector dipole (CLVD) such that .. math:: 100 \text{\%} = DEV + ISO and .. math:: DEV:100 \text{\%} = DC + CLVD .. _sec-mt-decomp-100: MTDecomp100 ........... Another type of decomposition relates all components individually to the total seismic moment (:cite:t:`knopoff-1970`): .. math:: 100 \text{\%} = |DC| + |ISO| + |CLVD| Activate :confval:`automt.MTDecomp100` for using this type of decomposition in addition. In :ref:`scmtv ` this decomposition can be optionally selected from the *Options* menu. .. note:: This method exists currently only for testing. The calculated moment-tensor components are not included in the resulting focal mechanism parameters which are saved. .. _scautomt-qc: Quality Control =============== Before and during :ref:`inversion of waveforms for moment tensors `, measures of waveform and solution quality are taken and applied. Waveforms are evaluated per trace or station. Clipping detection ------------------ A trace is marked as clipped if its maximum raw amplitude exceeds 90% of 2\ :sup:`23` assuming a 24bit datalogger. Clipped traces are removed from further processing. Incomplete data --------------- A trace is removed from processing if its data length (according to the signal length function) is less than its lower filter period. Signal to noise ratio --------------------- The signal to noise ratio for each wave type with all three components is computed and if it falls below the configured minimum SNR (:confval:`automt.profile.$name.minSNR.[type]`) all station items of that wave type are removed from further processing. Amplitude outliers ------------------ For all remaining stations the maximum raw amplitude (across all available components) is used to compute a normalized amplitude. For this the formula of the broadband surface magnitude (:term:`Ms(BB) `) formula is used: .. math:: Ms(BB) = log_{10}\left(\frac{A}{2\pi}\right)+1.66*log_{10}(\Delta) + 3.3 with * :math:`A`: amplitude in micrometer per second * :math:`\Delta`: epicentral distance in degrees. The median is computed for all normalized amplitudes and station are removed where the absolute difference of the normalized amplitude and the median is larger than twice the variance.