Photoacoustic Tomography: FDTD Wave-Equation Solve (2D)
A 2D companion to the 3D photoacoustic tomography simulator: instead of assuming spherical wavefronts, this engine solves the actual acoustic wave equation on a finite-difference grid, recording the real bipolar pressure signal at each transducer and reconstructing the image by delay-and-sum on those genuine time traces.
This 2D companion replaces the 3D version's analytic spherical-wavefront shortcut with the actual physics underneath it: a finite-difference time-domain (FDTD) solver advancing the real acoustic wave equation across a tissue cross-section, frame by frame. A laser pulse still sets the initial pressure at each absorbing vessel via p₀ = Γ·μₐ·F, but from there the pressure field is computed, not assumed — the bipolar "N-shaped" pulse that real photoacoustic transducers record emerges naturally from the finite size of the source, and the field's cylindrical (1/√r) spreading is a genuine, textbook consequence of solving the wave equation in two dimensions rather than three. Each transducer's time trace is read directly off the simulated field and fed into a real delay-and-sum backprojection, so the same array-density and sound-speed-mismatch artifacts that challenge real photoacoustic scanners emerge from independently-computed physics rather than being built into the reconstruction formula.
A 2D companion to the 3D photoacoustic tomography simulator: instead of assuming spherical wavefronts, this engine solves the actual acoustic wave equation on a finite-difference grid, recording the real bipolar pressure signal at each transducer and reconstructing the image by delay-and-sum on those genuine time traces.
2D · HTML5 Canvas 2D · 60 FPS target · runs fully client-side, no install