On 3/27/07, Frank Barknecht fbar@footils.org wrote:
Hallo, padawan12 hat gesagt: // padawan12 wrote:
Amazing idea for a project Carl.
Yeah. Cool!
The way I see it you have two routes.
- Do a full finite element physical model of a circular lamina
and measure the amplitude at many points on the surface. The sand falls into minima nodes iirc .
This might be overkill. How about finite-difference methods instead? Instead of doing the precise finite element method, use a fixed grid of points (say arranged in a circular pattern), and use an update equation. The visual difference should be negligible, since people would not be able to verify the frequency of the simulation. In either case, the solutions of finite-element or finite-difference methods are given as solutions to a matrix equation, dependent on boundary conditions. Instead of solving matrix equations, you can just use update equations, which will be faster and less precise. It will still represent the standing waves pretty well.
- Cheat. Create the visuals by mapping the known standing
waves of various modes but missing out the "actually building a physical model" part.
Actually approach 2) might be less cheating than approach 1) because with a finite element simulation, maybe made with msd, your grid topology may introduce unwanted distortions, especially with a circular membrane. Interesting question.
Sort of like having a couple of band-pass filters to break up the speech frequencies, and then map them onto the corresponding Chaladni figures super-imposed on each other.
The sand still could be tricky... you would maybe have the individual particles at random locations, initially, and compute a gradient of the vibrations to determine movements. A different visual effect would be to move the sand particles in random directions, by an amount proportional to the amplitude. The sand would still seem to move randomly, just faster over the vibrating surfaces.
Chuck