Click here to go to the applet.

This java applet is a quantum mechanics simulation that shows the behavior of a single particle in bound states in one dimension. It solves the Schrödinger equation and allows you to visualize the solutions.

At the top of the applet you will see a graph of the potential, along with horizontal lines showing the energy levels. By default it is an infinite well (zero everywhere inside, infinite at the edges). Below that you will see the probability distribution of the particle's position, oscillating back and forth in a combination of two states. Below the particle's position you will see a graph of its momentum. (This is just the fourier transform of the particle's position.) At the bottom of the screen is a set of phasors showing the magnitude and phase of all the possible states.

To view a state, move the mouse over its energy level on the potential graph. To select a single state, click on it.

You may also select a single state by picking one of the phasors at the bottom and double-clicking on it. Or, you may click on the phasor and drag its value to modify the magnitude and phase. In this way, you can create a combination of states. To delete a state, click on the phasor and then drag the mouse far away from it.

Between each graph is a horizontal line which may be dragged up and down to adjust the size of each graph.

Each graph also has a red line, indicating the expectation value for that observable.

The **Setup Popup** allows you to select a predefined potential. The
choices are:

**Infinite Well**: this is the "particle in a box"; the particle is confined between two walls of infinite potential. The width of the well is adjustable. Only a finite number of the states are shown; increase the resolution to see more states.**Finite Well**: this is a square well of finite depth. Only the bound states are shown in this applet. The width and depth of the well are adjustable.**Harmonic Oscillator**: this is a harmonic oscillator potential. The "spring constant" of the oscillator and its offset are adjustable. (If you have a particle in a stationary state and then translate it in momentum space, then the particle is put in a coherent quasi-classical state that oscillates like a classical particle.)**Well Pair**: this is two square wells of finite depth. The width and separation of the two wells are adjustable.**Coupled Well Pair**: this is two square wells with an adjustable wall between them. The separation of the two wells and the potential of the wall between them are adjustable.**Asymmetric Well**: this is two attached square wells with different widths and depths.**Infinite Well + Field**: this is an infinite square well with a uniform electric field, which causes the potential to slope downward. The width of the well and the field direction and strength are adjustable.**Coupled Wells + Field**: this is two square wells with a wall between them, in an electric field.**Coulomb**: this is vaguely similar to a coulomb potential, except that it doesn't become infinite near the center, and it is bounded on the left and right sides.**Quartic Oscillator**.**Well Array (square)**: this is a series of square wells. The number of wells and their depth are adjustable.**Well Array (harmonic)**: this is a series of wells with a harmonic oscillator shape.**Well Array (coulomb)**: this is a series of wells with a coulomb shape.**Well Array + Field**: this is a series of square wells with an electric field.**Well Array w/ Impurity**: this is a series of square wells with one well which has a different depth.**Well Array w/ Dislocation**: this is a series of square wells with one well offset slightly.**Random Well Array**: this is a series of square wells with random separations.**2 Well Array**: this is a series of square wells with alternating depths.**Delta Fn Array**: this is a set of up to 30 delta function wells. (Actually they aren't true delta functions since the well width and well depth are both finite, but the resulting wave functions look like the theory predicts. The wells are as narrow as the applet's resolution will allow.) The number of wells and their separation are adjustable. If the number of wells and the well separation are both too large, then not all the wells will fit on the screen.

The **Mouse Popup** determines what happens when the mouse is
clicked. The choices are:

**Set Eigenstate**: if you click on the energy, position, or momentum graph, then the particle will be put in an eigenstate of that observable. So if you click on the energy graph, the particle will be placed in a stationary state. If you click on the position graph, the particle will be localized at that point (but will quickly spread out). If you click on the momentum graph, the particle will have the selected momentum.It may not be possible to put the particle in the eigenstate you selected, because this applet only deals with bound states, and there are a limited number of them because of finite resolution. For example, you can't put the particle outside a finite square well. If you try, then the applet will just do the best it can.

Clicking on the position graph will cause the particle to be localized as much as possible, which will often give unsatisfactory results because the momentum spectrum will be so spread out. To localize the particle with a little more uncertainty, use

**Edit Function**to sweep out an area of possible locations for the particle, or use**Create Gaussian**to create a more spread-out distribution.**Edit Function**: this allows you to edit the potential energy graph or position distribution by clicking and dragging on the appropriate graph. When editing the position distribution, it's not possible to edit the phase; the old phase is retained. (Again, it may not be possible to make the changes you specified to the particle's position distribution since it may require eigenstates which are unbound.)**Create Gaussian**: this allows you to create a gaussian distribution on either the position or momentum graph. The width of the distribution can be controlled by moving the mouse up and down. (Again, it may not be possible to make a well-formed gaussian because it may require eigenstates that are unbound.)**Translate Function**: this allows you to drag the particle from side to side, to change its position. You can also drag it in momentum space, to change its momentum.

The **Clear** button clears out all states.

The **Normalize** button normalizes the set of particle
states. (By default, the states are not shown normalized because the
interface is easier to use if they are not. They are normalized internally
when calculating the wave functions, however.)

The **Maximize** button changes the magnitude of the
particle states so that they are all as large as possible. This makes
them easier to see. (It won't change the wave function at all
because the states are normalized internally.)

The **Ground State** button selects the ground state wave function.

The **Rescale Graphs** button changes the scale of all the graphs
so that everything is as large as possible. Normally, the scale is
adjusted only when necessary, so click this button if the wave functions
are too small to see clearly.

The **Stopped** checkbox stops the evolution of the wave function.

The **Simulation Speed** slider changes the speed of the wave
function evolution.

The **Resolution** slider changes the resolution of the applet.
The higher the resolution, the more accurate the wave functions and
energy levels will be.

The **Particle Mass** slider changes the mass of the particle.

The **View Menu** has the following items:

**Energy**: show the energy/potential graph (on by default)**Position**: show the position graph (on by default)**Momentum**: show the momentum graph (on by default)**Sum All States**: show the sum of the probability distributions of all states.**Parity**: show a graph of parity.**Probability Current**: show the probability current. This is zero for stationary states. For states that are not stationary, the probability current is positive where the wave function is moving to the right and negative where it is moving to the left.**Left/Right Waves**: show the wave function decomposed into two separate waves, one moving to the left (negative momentum) and one moving to the right (positive momentum). This option only works with the unmodified infinite well and harmonic oscillator potentials. For best results, select the**Wave Function -> Magnitude and Phase**menu item.**Values/Dimensions**: show some quantitative detail about the potential and the wave function.**State Phasors**: show the set of state phasors (on by default)**Expectation Values**: show expectation values as red lines**Uncertainties**: show uncertainties as blue lines to the left and right of the expectation value. The distance from the blue lines to the red line is the uncertainty. This is not available on the probability current graph, because that is not an observable.**Wave Function**: display the wave function in one of four ways: as a probability (magnitude squared), as a probability with the phase shown using colors, as real and imaginary parts graphed separately, or as a magnitude with the phase shown using colors.

The **Measure Menu** has the following items:

**Measure Energy**: take a measurement of the energy by picking a random state (using the state coefficients to determine probability) and putting the particle in that state.**Measure Position**: take a measurement of the position by picking a random position (using the probability distribution) and locating the particle at that point.

The **Options Menu** has the following items:

**Always Normalize**: always normalize the state coefficients.**Always Maximize**: always maximize the state coefficients.If neither one of these items is selected, then the applet will maximize the state coefficients whenever major changes are made, and leave them alone otherwise.

**Adiabatic Changes**: this option determines what happens when you make a change to the potential. Let's say the particle is in the ground state. If you make a change (like making the potential well wider), and this option is checked, the particle will be in the ground state of the new potential. If it's not checked, then the particle will remain in the ground state of the old potential, and evolve from there (spreading out to fill the well).

If you like this applet you may be interested in the book Visual Quantum Mechanics.

Click here to go to the applet.