the actual PDE this time — waves that travel, not a pattern that shimmers
everything a bounded pool knows how to do
Acceleration equals curvature
Each cell accelerates toward the average of its neighbours. That single local rule — no rays, no reflection code — produces travel, bouncing, diffraction, everything on this page.
Walls for free
Reflection isn't programmed. Mirror the edge cells and the maths turns waves around by itself.
Aim is two timestamps
To throw a packet, write the same bump into "now" and, slightly upstream, into "a moment ago". The solver reads that as velocity and carries it off in your direction.
Echoes pass through echoes
Two returning wavefronts meet, brighten where crests agree, cancel where they don't, and continue unharmed — 03's superposition, now in motion.
The speed limit
Information may cross at most one cell per step. Break Courant and the sim doesn't drift — it detonates.
Why courtyards stop shouting
Each pass costs a little energy. Set damping low and one tap keeps the pool ringing for a dozen wall trips; set it high and echoes die at the first return. The slider is the room's furniture.
tap = drop a pulse · flick = throw a packet where you aim · damping slider quiets the hero pool too