📡 2D Active Sonar — Ping Propagation

A real expanding wavefront reflects off objects — range comes from the actual round-trip echo time R = ct/2

ACTIVE SONAR — WAVEFRONT MODEL

Controls

Live Stats

0
Active pings
0
Contacts
550 m
Scope range
1500
Sound m/s

Contact Log

No echoes yet — press Ping

Legend

Outgoing ping wavefront
Return echo wavefront
Detected contact (fades ~3 s)
Actual object position (verify)
Ship (center, range 0)

About This Simulation

What It Demonstrates

Unlike a rotating-beam sonar sweep, this scope models the physical propagation of sound. A ping fired at t₀ expands as a real circular wavefront, radius(t) = c·(t−t₀), at c = 1,500 m/s in seawater. The instant that radius reaches an object's true range, the object re-radiates its own expanding wavefront; when that return wave reaches range 0 (the ship), a contact is logged from the measured round-trip time trt: R = c·trt/2. Echo strength falls off with the real inverse-square spreading loss over the total path length 2R, so faint or distant targets can drop below the detection threshold.

How to Use

Press Ping (or enable Auto-ping) and watch the cyan wavefront expand outward. Where it crosses an object, a second, orange wavefront grows outward from that object — the echo. When the orange ring reaches the ship, a yellow contact blip appears and a row is added to the Contact Log comparing the computed range/bearing to the actual placement. Time scale slows propagation for study; Ping power raises the source level and therefore the maximum detection range.

Verifying the Physics

Toggle "Show actual positions" to overlay the true object locations as dim grey markers. Because range and bearing are derived purely from wavefront-crossing times and directions, a correctly modelled simulation places every yellow contact blip exactly on top of its grey marker — the Contact Log's Δ column reports that error directly, and it stays at (or extremely near) zero.