A heptagonal parabolic resonator, in 3D
Channel: Nils Berglund
Date: 25/04/2022

This simulation shows a three-dimensional rendering of the parabolic resonator seen in the video https://youtu.be/tCYnu_o0z18 . The boundary of the cavity is made of seven parabolas, having the same focal point. At the beginning of the simulation, a circular wave is emitted at the common focus. Parabolas have the property of transforming such a wave into a linear one. In this case, the circular wave is turned upon reflection into seven pieces of linear waves. Since they do not hit the opposite sides of the cavity head on, they are not transformed back into genuine circular waves, but the difference is not so large, so one still gets a rather stable pattern. 
The simulation has two parts, showing the same solution of the wave equation with two different color gradients:
Wave height: 0:00
Wave energy  (colors in log scale): 1:41
In both parts, the luminosity depends on the cosine of the angle between a normal vector to the surface, and a constant direction representing the position of a light source. In part 1, the  height of the surface and the color hue represent the wave height, with green corresponding to the medium at rest, red to positive heights, and blue to negative heights. In part 2, the height of the surface and color hue represent the energy of the wave. The energy is the sum of the kinetic energy (proportional to the square of the time derivative of the wave height) and of the potential energy (proportional to the norm squared of the spatial gradient). It behaves roughly like the square of the wave height, which is why it oscillates approximately with twice the spatial frequency. The 3D rendering uses a ray-tracing technique, that computes the intersection of a line between observer and points on the surface with a plane. 

Render time: 49 minutes
Color scheme: Part 1 - Turbo, by Anton Mikhailov
https://gist.github.com/mikhailov-work/6a308c20e494d9e0ccc29036b28faa7a
Part 2 - Viridis by Nathaniel J. Smith, Stefan van der Walt and Eric Firing
https://github.com/BIDS/colormap
https://github.com/yuki-koyama/tinycolormap

Music: "Awake" by Emmit Fenn@emmitfenn

See also https://images.math.cnrs.fr/Des-ondes-dans-mon-billard-partie-I.html for more explanations (in French) on  a few previous simulations of wave equations. 

The simulation solves the wave equation by discretization. The algorithm is adapted from the paper https://hplgit.github.io/fdm-book/doc/pub/wave/pdf/wave-4print.pdf 
C code: https://github.com/nilsberglund-orleans/YouTube-simulations
https://www.idpoisson.fr/berglund/software.html
Many thanks to my colleague Marco Mancini for helping me to accelerate my code!