Orbital angular momentum in quantum mechanics is quantized. Its magnitude and its projection on one chosen axis (conventionally z) can be known simultaneously and exactly, but the other two components (Lx, Ly) cannot — this is space quantization:
|L| = ħ√(l(l+1)), l = 0, 1, 2, …
Lz = m_l · ħ, m_l = −l, …, −1, 0, +1, …, +l (2l+1 values)
cone half-angle: θ = arccos( m_l / √(l(l+1)) )
Because Lx and Ly are not simultaneously well-defined with Lz (they don't commute: [Lx, Ly] = iħLz), the classical picture is a vector of fixed length |L| and fixed z-projection Lz, free to point anywhere on the cone of half-angle θ — its azimuth φ is completely undetermined. The left-hand diagram draws that cone in the standard textbook oblique side view (drag it to change the viewing tilt); the right-hand plot shows the same indeterminacy directly as the (Lx, Ly) pair tracing the full circle of radius |L|sin θ, and the ladder below shows the discrete Lz levels allowed for the current l.
- l slider — sets the orbital quantum number (0=s, 1=p, 2=d, 3=f, 4=g), which fixes |L| and the number of allowed cones (2l+1).
- ml pills — pick the projection quantum number; the highlighted cone updates θ and Lz instantly.
- Show all cones — renders every allowed ml cone for the current l at once, so you can see the full quantized fan from −l to +l.
- Precession — animates the vector's azimuth on the selected cone at the chosen rate; toggle off to freeze it and inspect a single orientation.
- Viewing tilt / drag on the diagram — changes the oblique projection angle used to draw the cone, purely a viewing choice (it never changes the physics).
This is the same quantization rule (with spin s = ½ instead of orbital l) behind the Stern–Gerlach experiment and the Zeeman splitting of atomic spectral lines, and it underlies why atomic orbitals (s, p, d, f) come in the specific shapes and counts they do.