Interactive simulations & visualizations

Visualizing the beauty in physics and mathematics


Project maintained by zhendrikse Hosted on GitHub Pages — Theme by mattgraham

Free wave packet


To create a wavefunction that has a finite extent one can multiply a free particle wavefunction with a precise momentum (e.g., $\psi(x) = Ae^{ikx}$) by a Gaussian envelope (e.g., $e^{−x2/2a}$) function that “clips” the wavefunction in space. The product of these two is a wavefunction whose momentum is “smeared” out around the original momentum value by an amount that depends on the size of the Gaussian envelope. If the Gaussian envelope is large, then the momentum smears only a little, but if the envelope is small, the momentum will smear a lot. This is intuitively clear from the Heisenberg uncertainty principle since the uncertainty in the particle’s position is determined by the width of the Gaussian. As the width of the Gaussian grows larger the uncertainty in the momentum decreases.

[…]

Note that when the width of the wave packet in real space becomes narrower, the distribution in the Fourier transform (momentum) space becomes broader, and vice versa. This is consistent with the Heisenberg uncertainty principle and is a consequence of the behavior of the Fourier transform between real space and momentum space. What effect does this have on the propagation of the wave packet in space? We’ll see that a wave packet has no choice but to broaden over time. Note that the wave packet must be constructed of momentum components with different wavelengths and speeds. As a result, some components will propagate more slowly, and others will propagate more quickly.

Visualizing Quantum Mechanics with Python

⭐ Idea taken from the book Visualizing Quantum Mechanics with Python
📌 Ported to JavaScript and Three.js in free_wave_packet_3d.js


Share on: