This page will help you understand how to use Dr. Bongo's Dispersion Lab. Additional help can be found on the Entering Functions help page.

Dr. Bongo's Dispersion Lab is designed to help you develop intuition for how waves travel in dispersive mediums (mediums in which sine waves of different frequency travel at different speeds). It allows you to explore the "smearing out" of a wave as it evolves in time, to understand the uncertainty relations for waves, and the difference between "phase" and "group" velocity.

*Note that all numbers in this program are assumed to be in SI units; units
should not be entered into any of the boxes, since it will just confuse the
simulation.*

The layout of the applet is divided into three columns.

The left column contains
input fields which allow you to set parameters which determine the initial
conditions of a wave packet (or pulse). This column also has a field which
allows you to set the velocity of your viewing window relative to the medium
which the wave is traveling in (allowing you to follow along with the wave
packet), as well as buttons to reset the applet, to start time moving, and to
reset time to *t*=0. Some of these fields will only accept numbers,
resetting themselves to zero if a non-numerical entry is made. Some fields
have limits and will reset themselves to the nearest allowed value if you
attempt to enter a number which is too big or too small. Each field in the left column is explained
below.

"Reset All" Button: This stops the simulation and resets
every parameter to its default value. | |

Dispersion Relation Box: This is where you set the dispersion
relation for the medium. The dispersion relation is the function which
describes how waves travel in the medium. In this box you enter a
function which describes the angular frequency of a sine wave in the medium as
a function of their wavenumber k. For example, light traveling
through a vacuum is described by a linear dispersion relation:
ω(k) = c k where c is the speed
of light in vacuum. To enter this dispersion relation, I would type
2.9979e8*k into this box. For more information on how to enter
functions, see the Entering Functions
page. | |

Pulse Width Box: This is where you set the width of the pulse.
The number you enter here is inserted as the variable w in the envelope
function. If you are using the default envelope function, w
represents the Gaussian width of the wave packet. | |

Central Wavenumber Box: A wave packet which is finite in x
must necessarily contain a spread of wavelengths and wavenumbers. In
this box you set the wavenumber (1/wavelength) about which this spread is
centered. | |

Envelope Box: In this box you enter a function which
represents the envelope of the wave packet. In other words, the wave
packet at time t=0 will be this function times a sine wave. Two
variables may be used in this function, w and x. The
variable x represents position along the x axis. The
w variable is simply the number that you enter into the "Pulse Width"
box, allowing you to quickly change the size of the envelope without having to
mess with this function box. The default envelope is a Gaussian.
For information on how to enter functions, see the
Entering Functions page. | |

x-Axis Velocity Box: As time progresses your wave packet is
likely to leave the area viewed in the plot window. By entering a
non-zero value you are telling the computer to "move the window" on the plot
to keep your pulse in view. At time passes, the axes and coordinate
labels on the plot will move backwards to indicate that your view is moving
forwards. A thin vertical blue line will remain motionless to mark the
center of your "window." note: This function is non-relativistic. If you tried to watch how a wave packet evolved in time by running along side the wave, funny things would start to happen if the wave packet were moving at or near the speed of light. What is really being simulated here is a whole string of stationary cameras at different places along the path of the pulse, and your view is simply switching from one camera to another as time passes. | |

Time Box: This is the time (in seconds) that has evolved
during the simulation. You can enter a time here to see what the wave
packet will look like at that time. This time automatically increments
itself when the simulation is running. Note that if it takes more than
about one second for the time indicated in this box to increase by one, you
might want to use a faster computer to do this lab. | |

Go!/Stop Button: Use this button to start and stop time from
moving forward. | |

Reset t=0 Button: This button resets time to t=0. |

The center column contains two plots. The upper plot is a plot of the wave packet in space. The lower plot is the spectrum of wavenumbers contained in the wave packet. In other words, the wave packet can be considered to be a sum of sine waves, and the lower plot shows the amplitude of each of the sine waves in the sum.

The right column contains the uncertainty in position and in wavenumber which the computer has calculated for the wave packet at that moment in time. It also displays the product of the two uncertainties. This column is also used to display a message to tell you when the simulation has gone as far as it can go.