Note that this raytrace applet is in rectangular coordinates, while the one in the Helioseismology section is in polar coordinates. Someday it'd be nice to combine them and choose between solar, solid earth, and ocean acoustic scenarios in addition to geometry (...someday). Meanwhile...

One approximation to the propagation of waves in a spherical medium is with a technique called raytracing. We specify a set of rays, normal to the wavefronts, and we can set properties of the environment like dimensions and wavespeeds, and then we can watch where the wave energy goes by watching where the rays go. If the wave velocity is a non-constant function of the radius these rays will curve, sometimes overlapping each other, sometimes leaving wide gaps in where they return to the surface. These behaviors affect how well we can try to resolve a velocity profile by only analyzing signals we receive at the surface.

This raytracing approach can be used for seismic waves in the Earth, for acoustic waves in the ocean (an "ocean" option will be available before too long on this applet), and even for acoustic waves traveling through the Sun. It turns out this raytracing approach does have limitations however. It assumes that the wavelength is much smaller than features in the velocity profile. As frequencies get lower the wavelengths get longer, and at some point this assumption breaks down. But raytracing works fine for higher frequencies, and for the lower frequencies there are exact or normal mode solutions that can be used. Meanwhile the raytracing makes for a much cooler demonstration applet!

Compact Version:

Click a screen size to begin the applet:
Sm (750x350), Med (950x400), Lrg (1200x500)


Or the version with the T/X plot:

Click a screen size to begin the applet:
Sm (750x660), Med (950x760), Lrg (1200x960)


To run the applet: click the link for the size appropriate for your screen. The green question-mark on the top right offers a brief help listing, but the most immediate way to start is to :
• right-click the WaveVel-vs-Depth plot on the left
• pick some premade velocity profile off the menu
• click the swirling-arrows ("run") button at the top to create the rays in the plot on the right.
• after the rays appear click the "extra plots" button in the middle of the toolbar to see plots between travel time, P, and range.
• once you get the hang of it be sure to try clicking in some of your own velocity profiles!

This applet is also available in the Java "jarfile" called raydemo.jar in the Downloads section if you would like to be able to run the thing while offline. Please note however that this will also require your copying the small or medium or large applet webpage (not this one!) to your local machine and modifying the path in its HTML to reflect the folder on your machine where you saved the jarfile.

Do please feel free to contact me if you have problems getting this applet to run in your browser, after you have been sure to download that latest (1.4.0 or later) Java plug-in above, and have checked to see that you can run one of Sun's Java example applets A, or Java example applets B. (These two pages look the same but have slightly different code for different browser types.)