Context
In 2019, I developed a framework for modelling the Talbot effect on the surface of water. My interest in CUDA began with a simple question: what could I compute on the GPU in my laptop?
Problem
The model needed to combine contributions from multiple wave sources into a raster representation of the wave field.
My role
I implemented the software myself in C++ and CUDA, including its computational framework and interface. Colleagues conducted physical experiments that provided a point of comparison.
Architecture
An actor contributes a wave amplitude at a distance from its source. For each raster location, the framework combines the contributions from the relevant actors. The GPU forms the raster matrix.
Technical decisions and constraints
The framework handled contributions from tens to hundreds of actors. A difficult part was connecting the distances in the equations to the spatial scale shown on screen, so that the visualisation could be interpreted in physical units.
Validation
I compared the model with theoretical expectations and with results obtained by colleagues on physical experimental benches.
Results
The software produced interactive wave-field visualisations and cross-section plots. The code, written report, and presentation have been retained. No preserved CPU/GPU timing comparison is available, so this account makes no speedup claim.
Further use
The project was intended to support student laboratory work. I left the laboratory before that stage, so its later use in teaching is not confirmed.