Goal is to find earthquakes. Earthquakes may be have missed previously or seismograms not saved from all stations.

Main concept: We can see where shaking starts but for an algorithm to discriminate, data needs to be normalised.

Sample time from 4 stations around Christchurch 9th April 2020, 7:50 → 8:00.

4th waveform looks clean. Standard deviations away from mean using a 3 minute window is below. Can use a 10 stdev trigger, making sure it goes higher once previous rolling window locked in place. Ends when standard deviation not exceeding 3 for 4 seconds.

Blue is the waveform (preprocessed) in arbitrary units.
Orange is standard deviations away from mean (normalised version) in rolling window or previous window once triggered, continues rolling after reset. Red ball (start) is delayed (issue), blue ball marks end.

High power of discrimination.


Other stations more difficult. Higher background noise means standard deviation trigger exceeded late, barely. "Quietens down" really fast after arrival. A higher high pass filter may be usefull.

As background noise increases, it has a relatively lower frequency that dominates which means x intercepts at y=0 are fewer / unit time than during shaking.

Below is a plot of transitions through y=0 per 4 seconds. Where the low frequency component is around y=0, the small amplitude high frequency component causes a false positive earlier. Area under the curve is more important than magnitude.

Could be used to bring back start time of detected eq.

Much higher discrimination is achieved by using the product (currently not normalised for intercept data):

Start and end markers are not updated but it is clear the trigger point would be quick and can be reversed to find actual start point. False positives would be unmarked using duration of significant shaking.

Left figure below is the combination using above components. Right figure below shows the case for the "clean" seismogram at the top of this page. Lack of normalisation (so far) visible issue (y axis is useless) but high discrimination power remains.

Main benefit is a way to remove background noise which is usually low frequency (removed in intercept plot) and high frequency (intercept plot false positives) but small magnitude (removes false positives after multiplication). The combination amplifies gains / discrimination power in high frequency shaking.

High Pass

Investigating high-pass filtering: 1s period is good for general use, 0.25s period highpass mostly unnecessary, can even detect trains at ASHS.

Below is the above station with issues showing how clear the waveform becomes with a 1s period highpass filter. Orange is standard deviations away from mean, previous filtering between 0.01 and 50s.

Able to pinpoint start of waveform by reversing until <3 standard deviations away from mean and then going further back until standard deviations from mean increases.

Network Consensus

Finding exact trigger points can be difficult. Individual stations can have passing pedestrians/trains, a lawn mower changing background levels etc. Instead of getting perfect trigger detection, we can rely on the overall network of stations.

Below is a simple trigger start time addition with a normal distribution added at each trigger start time for each station. Each earthquake distribution has a peak of 0.4. This isn't even considering the distance between stations yet is able to remove many false triggers. The plots only consider triggers which exceed 50 standard deviations from mean prior to triggering.

Left plot is for the Kaikoura earthquake, right plot is for a small earthquake on the 9th April 2020. Even though the small event is not visible in further stations, it still has a peak > 0.01.


  • No labels