This java applet is a simulation of a ripple tank. It demonstrates waves in two dimensions, including such wave phenomena as interference, diffraction (single slit, double slit, etc.), refraction, resonance, phased arrays, and the Doppler effect.
To get started with the applet, just go through the items in the Setup menu in the upper right. You can also draw on the screen with the mouse. The predefined setups are just starting points; you can modify the sources and walls as you desire.
Also see the 2-D Waves applet.
Click the 3-D View checkbox to see a 3-D view.
Zip archive of this applet.
Version 1.7c, posted 7/7/05