Seismic Array Lab

2D companion of the seismic sensor-network simulator: a wavefront, noisy clocks and a least-squares fix on the source.

Switch to 3D

Presets

Playback

Apparatus

Model checks

The science

What is modelled

A seismic event at an unknown place and unknown time sends a wave at constant speed. Each sensor records when the wave reaches it, with a small random clock error. From three or more arrival times the location and the start time can be found by least squares.

Equations

  • Arrival time ti = t0 + di / v + εi, di = |x − xi|, εi ~ N(0, σ2).
  • Gauss-Newton step on (x, y, t0) with Jacobian rows [(x−xi)/(v di), (y−yi)/(v di), 1].
  • Cramer-Rao bound cov = σ2 (JTJ)−1; the rms position error is the square root of its first two diagonal terms.
  • The residual sum of squares divided by σ2 follows a chi-square law with N − 3 degrees of freedom.

Checks run in the page

  • Exact recovery from noise-free arrival times.
  • Analytic Jacobian against a finite difference.
  • 400-trial Monte Carlo rms error against the Cramer-Rao bound.
  • Mean residual chi-square against N - 3.

Honest simplifications

One uniform wave speed, straight rays, a flat map, Gaussian clock noise and one wave type. Real ground has layers, refraction and several wave phases. When the array is one-sided or the noise is large the linear bound stops being valid and the page says so.

What to try
  • Press Bare minimum (3) and see the scatter explode compared with Dense network (12).
  • Press One-sided array and watch the error grow along the direction pointing away from the sensors.
  • Raise the wave speed: the same clock noise then corresponds to a larger distance error.
Error bound against number of sensors
Error bound against timing noise
Error of each trial
Arrival time against distance