Schrödinger Equation: From Operators to ψ
Every quantum simulation on this site — the wave packet, the harmonic oscillator, the hydrogen atom — is a solution of one equation. Understanding how classical observables become operators, and how the Hamiltonian (the operator representing a system's total energy) generates time evolution, turns the Schrödinger equation from a memorised formula into something you can actually derive.
From classical observables to operators
In classical mechanics, the state of a particle is a pair of numbers (x, p) evolving under Hamilton's equations. Quantum mechanics replaces the state with a complex-valued wave function ψ(x, t), and replaces each observable with a linear operator acting on ψ. The two foundational substitutions are:
p̂ψ = −iℏ ∂ψ/∂x — momentum operator: differentiate
Any classical quantity built from x and p is quantised by substituting these operators. The total energy, the Hamiltonian H = p²/2m + V(x), becomes:
This single recipe — replace observables with operators, keep the functional form of the classical Hamiltonian — is the entire content of "canonical quantisation" for a single particle.
The time-dependent Schrödinger equation
Schrödinger's postulate is that the state ψ evolves in time under the action of the Hamiltonian operator, exactly as classical energy generates the flow of a system in phase space:
This is the time-dependent Schrödinger equation (TDSE). It is first-order in time (unlike the classical wave equation, which is second-order), linear, and deterministic: given ψ(x, 0), the TDSE fixes ψ(x, t) for all t. The complex factor i is essential — it is what makes stationary states oscillate in phase rather than decay, and what allows interference between quantum amplitudes.
The time-independent equation: an eigenvalue problem
When V(x) does not depend on time, we can separate variables: ψ(x, t) = φ(x)·e−iEt/ℏ. Substituting into the TDSE, the time-dependence cancels and φ(x) must satisfy:
— eigenvalue equation: Ĥ acting on φ returns φ scaled by E
This is the time-independent Schrödinger equation (TISE). Solving it means finding the eigenfunctions φₙ(x) and eigenvalues Eₙ of the Hamiltonian operator. These stationary states have time-independent probability density |ψ|² = |φ(x)|², even though ψ itself oscillates in phase. Every bound-state spectrum in this site's simulations — the particle in a box, the harmonic oscillator, the hydrogen atom — is the solution set of a TISE eigenvalue problem.
ψ(x, t) = Σₙ cₙ φₙ(x) e−iEₙt/ℏ
cₙ = ⟨φₙ|ψ(x,0)⟩ fixed by the initial state
Hermitian operators and real eigenvalues
Physical observables must correspond to operators whose eigenvalues are real numbers — you never measure an imaginary energy. Operators with this property are called Hermitian: Â is Hermitian if ⟨φ|Âψ⟩ = ⟨Âφ|ψ⟩ for all φ, ψ in the domain. Both x̂ and p̂ = −iℏ ∂/∂x are Hermitian (the minus sign and the i are exactly what's needed to cancel the sign flip from integration by parts), and so is any real polynomial combination of them — including Ĥ.
| Property | Consequence |
|---|---|
| Real eigenvalues | Measured energies/positions/momenta are real numbers |
| Orthogonal eigenstates | ⟨φₘ|φₙ⟩ = δₘₙ — distinct stationary states don't overlap |
| Complete basis | Any ψ can be expanded as Σ cₙφₙ — the basis for Fourier-like decomposition |
| Unitary time evolution | e−iĤt/ℏ preserves ⟨ψ|ψ⟩ = 1 — total probability stays 1 |
Commutators and the uncertainty principle
Unlike classical variables, quantum operators generally do not commute. The commutator [Â, B̂] = ÂB̂ − B̂Â measures the failure to commute. For position and momentum:
the canonical commutation relation
This single relation is the algebraic seed of the Heisenberg uncertainty principle: for any two Hermitian operators, the Robertson–Schrödinger inequality gives ΔA·ΔB ≥ ½|⟨[Â, B̂]⟩|. With [x̂, p̂] = iℏ this becomes the familiar
Operators that do commute — such as Ĥ with itself, or the angular momentum operator L̂² with L̂z — can be measured simultaneously with arbitrary precision and share a common set of eigenstates; this is exactly why hydrogen orbitals are labelled by the three commuting quantum numbers n, l, m.
Worked example: particle in a box
The simplest non-trivial TISE has V(x) = 0 for 0 < x < L and V(x) = ∞ outside — an infinite square well. Inside the box the equation reduces to −ℏ²/(2m) φ'' = Eφ, a simple harmonic ODE, with boundary conditions φ(0) = φ(L) = 0 forced by the infinite walls:
Eₙ = n²π²ℏ² / (2mL²)
Two features generalise to every bound system: the energy is quantised (only discrete Eₙ are allowed, because only integer n give a wave function vanishing at both walls), and the ground state (n = 1) has non-zero energy — the zero-point energy — a direct consequence of Δx·Δp ≥ ℏ/2: confining the particle to a finite box necessarily gives it non-zero momentum spread.
Representing ψ numerically
To animate ψ(x, t) in a browser simulation, discretise x on a grid, store the real and imaginary parts of ψ as two Float32Array buffers, and evolve them either by decomposing into eigenstates (if the Ĥ eigenbasis is known analytically) or by direct finite-difference time stepping (see the companion tutorial on the 1D numerical Schrödinger solver, linked below, for the full Crank-Nicolson scheme).
// Superposition of the two lowest particle-in-a-box eigenstates
function psiBox(x, t, L, m, hbar) {
const E1 = (Math.PI ** 2 * hbar ** 2) / (2 * m * L ** 2);
const E2 = 4 * E1;
const phi1 = Math.sqrt(2 / L) * Math.sin(Math.PI * x / L);
const phi2 = Math.sqrt(2 / L) * Math.sin(2 * Math.PI * x / L);
// psi = (phi1*e^{-iE1t/hbar} + phi2*e^{-iE2t/hbar}) / sqrt(2)
const re = (phi1 * Math.cos(E1 * t / hbar) + phi2 * Math.cos(E2 * t / hbar)) / Math.SQRT2;
const im = -(phi1 * Math.sin(E1 * t / hbar) + phi2 * Math.sin(E2 * t / hbar)) / Math.SQRT2;
return { re, im, prob: re * re + im * im };
}
Notice how the probability density |ψ|² of this superposition does oscillate in time (with beat frequency (E2−E1)/ℏ), unlike a single stationary state — this is the visible signature of quantum interference between energy eigenstates, and exactly what the Schrödinger equation simulation on this site animates.
🌊 Run the Schrödinger equation simulation
Watch wave packets, eigenstates, and superpositions evolve in real time