70 karma · joined January 24, 2020
http://hplgit.github.io/wavebc/doc/pub/._wavebc_cyborg001.ht...
We only need to apply it to a circle and rewrite the solver in C. This will give us a visualizer for a single frequency.
Then we run FFT, run the solver for all frequencies, observe that the final solution is a linear combination of the individual solutions and apply the rainbow coloring to corresponding frequencies.
This solver needs to be kinda fast to run at 15 fps, but luckily, different frequencies can be solved in parallel. Most likely, changing the input frequency a bit will change the solution only a little, and so we could pre-solve the frequency range with sufficient density, cache them and rapidly derive actual solutions by interpolation.
Bonus points for using complex numbers. The boundary condition in a singing bowl is u(x0, t) = A sin(Bt) where x0 denotes the circular boundary. Since real numbers are boring, we could expand the problem into the complex plane: u(x0, t) = A exp(iBt). In this case the solution u(x, t) would be in complex plane also, where the absolute value |u| is the amplitude, or pixel opacity on our visualization, and the angular coordinate arg u would be maybe color of that pixel?
My advise to myself 20yo would be: learn how to deal with people, learn how organizations work, build capital and get onto the money side of things; but don't let your ego get tricked into the shiny tech lead and manager titles as those are only mirages of wealth.
So the virus slows down the economy for us. Exactly what we wanted, right? Emissions are down, folks in India can even see Himalayan mountains. Everybody should celebrate this, but no, our only concern is how to restart the economy and get to the new heights of pollution asap.