QuantumHarmonicOscillatorAnimation.gif(300 × 373 pixels, file size: 759 KB, MIME type: image/gif, looped, 97 frames)


English: A harmonic oscillator in classical mechanics (A-B) and quantum mechanics (C-H). In (A-B), a ball, attached to a spring (gray line), oscillates back and forth. In (C-H), wavefunction solutions to the Time-Dependent Schrödinger Equation are shown for the same potential. The horizontal axis is position, the vertical axis is the real part (blue) or imaginary part (red) of the wavefunction. (C,D,E,F) are stationary states (energy eigenstates), which come from solutions to the Time-Independent Schrodinger Equation. (G-H) are non-stationary states, solutions to the Time-Dependent but not Time-Independent Schrödinger Equation. (G) is a randomly-generated superposition of the four states (E-F). H is a "coherent state" ("Glauber state") which somewhat resembles the classical state B.
Source Own work
Author Sbyrnes321
(* Source code written in Mathematica 6.0 by Steve Byrnes, Feb. 2011. This source code is public domain. *)
(* Shows classical and quantum trajectory animations for a harmonic potential. Assume m=w=hbar=1. *)
(*** Wavefunctions of the energy eigenstates ***)
psi[n_, x_] := (2^n*n!)^(-1/2)*Pi^(-1/4)*Exp[-x^2/2]*HermiteH[n, x];
energy[n_] := n + 1/2;
psit[n_, x_, t_] := psi[n, x] Exp[-I*energy[n]*t];
(*** A random time-dependent state ***)
CoefList = Table[Random[]*Exp[2 Pi I Random[]], {n, 0, 4}];
CoefList = CoefList/Norm[CoefList];
Randpsi[x_, t_] := Sum[CoefList[[n + 1]]*psit[n, x, t], {n, 0, 4}];
(*** A coherent state (or "Glauber state") ***)
CoherentState[b_, x_, t_] := Exp[-Abs[b]^2/2] Sum[b^n*(n!)^(-1/2)*psit[n, x, t], {n, 0, 15}];
(*** Make the classical plots...a red ball anchored to the origin by a gray spring. ***)
classical1[t_, max_] := ListPlot[{{max Cos[t], 0}}, PlotStyle -> Directive[Red, AbsolutePointSize[15]]];
zigzag[x_] := Abs[(x + 0.25) - Round[x + 0.25]] - .25;
spring[x_, left_, right_] := (.9 zigzag[3 (x - left)/(right - left)])/(1 + Abs[right - left]);
classical2[t_, max_] := Plot[spring[x, -5, max Cos[t]], {x, -5, max Cos[t]}, PlotStyle -> Directive[Gray, Thick]];
classical3 = ListPlot[{{-5, 0}}, PlotStyle -> Directive[Black, AbsolutePointSize[7]]];
classical[t_, max_, label_] := Show[classical2[t, max], classical1[t, max], classical3, 
   PlotRange -> {{-5, 5}, {-1, 1}}, Ticks -> None, Axes -> {False, True}, PlotLabel -> label, AxesOrigin -> {0, 0}];
(*** Put all the plots together ***)
SetOptions[Plot, {PlotRange -> {-1, 1}, Ticks -> None, PlotStyle -> {Directive[Thick, Blue], Directive[Thick, Pink]}}];
MakeFrame[t_] := GraphicsGrid[
   {{classical[t + 2, 1.5, "A"], classical[t, 3, "B"]},
    {Plot[{Re[psit[0, x, t]], Im[psit[0, x, t]]}, {x, -5, 5}, PlotLabel -> "C"], 
     Plot[{Re[psit[1, x, t]], Im[psit[1, x, t]]}, {x, -5, 5}, PlotLabel -> "D"]},
    {Plot[{Re[psit[2, x, t]], Im[psit[2, x, t]]}, {x, -5, 5}, PlotLabel -> "E"], 
     Plot[{Re[psit[3, x, t]], Im[psit[3, x, t]]}, {x, -5, 5}, PlotLabel -> "F"]},
    {Plot[{Re[Randpsi[x, t]], Im[Randpsi[x, t]]}, {x, -5, 5}, PlotLabel -> "G"], 
     Plot[{Re[CoherentState[1, x, t]], Im[CoherentState[1, x, t]]}, {x, -5, 5}, PlotLabel -> "H"]}
    }, Frame -> All, ImageSize -> 300];
output = Table[MakeFrame[t], {t, 0, 4 Pi*96/97, 4 Pi/97}];
Export["test.gif", output]


I, the copyright holder of this work, hereby publish it under the following license:
Creative Commons CC-Zero This file is made available under the Creative Commons CC0 1.0 Universal Public Domain Dedication.
The person who associated a work with this deed has dedicated the work to the public domain by waiving all of his or her rights to the work worldwide under copyright law, including all related and neighboring rights, to the extent allowed by law. You can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission.

File history

Click on a date/time to view the file as it appeared at that time.

current09:16, 2 March 2011Thumbnail for version as of 09:16, 2 March 2011300 × 373 (759 KB)Sbyrnes321Alter spring, to avoid the visual impression that the ball is rotating in a circle around the y-axis through the third dimension.
22:55, 1 March 2011Thumbnail for version as of 22:55, 1 March 2011300 × 373 (733 KB)Sbyrnes321Add zigzag spring; shrink image to 300px width; increase frame count to 97.
23:58, 27 February 2011Thumbnail for version as of 23:58, 27 February 2011347 × 432 (707 KB)Sbyrnes321Switched from 100 frames to 80 frames, to be under the 12.5-million-pixel limit for animations in wikipedia articles.
23:06, 27 February 2011Thumbnail for version as of 23:06, 27 February 2011347 × 432 (887 KB)Sbyrnes321{{Information |Description ={{en|1=A harmonic oscillator in classical mechanics (A-B) and quantum mechanics (C-H). In (A-B), a ball, attached to a spring (gray line), oscillates back and forth. In (C-H), wavefunction solutions to the Time-Dependent Sch

Global file usage

The following other wikis use this file: