Hydrogen atom — Schrödinger equation and radial solutions
Author
Daniel Fischer
Hydrogen atom: overview and plan
We solve the time-independent Schrödinger equation for a single electron in the Coulomb potential of a nucleus (atomic number \(Z\)). The goals of this chapter are:
Re-express the Hamiltonian using the angular-momentum operator \(\hat{\vec L}\).
Separate variables in spherical coordinates and reduce the problem to a radial ordinary differential equation (ODE).
Solve the radial ODE for bound states (\(E<0\)), perform the asymptotic analysis, obtain the quantization condition, and write the normalized eigenfunctions.
1. Hamiltonian and the angular-momentum form
The non-relativistic time-independent Hamiltonian for an electron–proton system (masses \(m\) and \(M\), respectively) interacting via the Coulomb potential is
\[
\hat H = -\frac{\hbar^2}{2m}\nabla_e^2 -\frac{\hbar^2}{2M}\nabla_p^2 + V(r).
\]
Here
- \(\nabla_e = \big(\tfrac{\partial}{\partial x_e}, \tfrac{\partial}{\partial y_e}, \tfrac{\partial}{\partial z_e}\big)\) is the gradient with respect to the electron coordinates\(\vec r_e\),
- \(\nabla_p = \big(\tfrac{\partial}{\partial x_p}, \tfrac{\partial}{\partial y_p}, \tfrac{\partial}{\partial z_p}\big)\) is the gradient with respect to the proton coordinates\(\vec r_p\).
For the hydrogen(-like) atom the potential is Coulombic:
where \(Z\) is the nuclear charge (\(Z=1\) for hydrogen), \(e\) the elementary charge, \(\varepsilon_0\) the vacuum permittivity, and \(r = |\vec r_e - \vec r_p|\) is the distance between the electron and the proton.
1.1 Center of Mass and Relative Motion
It is convenient to switch from the electron and proton coordinates \((\vec r_e, \vec r_p)\) to
the center-of-mass coordinate\[
\vec R = \frac{m \vec r_e + M \vec r_p}{m+M},
\]
and the relative coordinate\[
\vec r = \vec r_e - \vec r_p.
\]
In these new variables the Hamiltonian separates into two parts:
is the reduced mass of the electron–proton system.
The term \[
-\frac{\hbar^2}{2(m+M)}\nabla_R^2
\] describes the free motion of the atom as a whole through space. Since spectroscopy and bound-state problems are only sensitive to the internal dynamics, this center-of-mass contribution can be ignored (or factored out as a plane wave).
1.2 Effective One-Body Hamiltonian
Thus, for studying the hydrogen spectrum we keep only the relative motion:
\[
\hat H = -\frac{\hbar^2}{2\mu}\nabla_r^2
-\frac{Z e^2}{4\pi\varepsilon_0}\,\frac{1}{r}.
\]
This is the familiar hydrogen Hamiltonian, except that the electron mass \(m\) is replaced by the reduced mass \(\mu\).
For hydrogen, since \(M \gg m\), one has \(\mu \approx m\), but the correction is important for high-precision spectroscopy.
1.3 The Laplacian and \(\hat L^2\)
We will rewrite the Laplacian in spherical coordinates and express the angular part in terms of \(\hat L^2\).
In spherical coordinates \((r,\theta,\varphi)\) the Laplacian acting on a scalar \(\psi(r,\theta,\varphi)\) reads
This means that \(\hat H\), \(\hat L^2\), and \(\hat L_z\) have a common set of eigenfunctions. In particular, the wavefunction can be chosen to be a simultaneous eigenfunction of \(\hat L^2\) and \(\hat L_z\), which motivates a separation of variables into radial and angular parts:
originates from the angular part of the kinetic energy. It acts like an effective potential that depends on \(\ell\).
For \(\ell=0\), this term vanishes, and the particle can access the region near \(r=0\).
For \(\ell>0\), the term grows rapidly as \(r\to 0\), suppressing the radial wavefunction in the vicinity of the origin.
This is often called the centrifugal barrier. Classically, it reflects the fact that angular motion produces an effective outward “force.” Quantum mechanically, it makes it harder for states with high angular momentum to penetrate the central region.
This is exactly the time-independent Schrödinger equation for a one-dimensional motion of \(u(r)\) on the half-line \(r\in(0,\infty)\) with the effective potential
We seek square-integrable bound-state solutions (\(E<0\)). The standard method proceeds in three steps: (A) analyze asymptotic behavior at \(r\to 0\) and \(r\to\infty\), (B) extract the dominant factors and reduce to a power-series equation, and (C) impose termination of the series to get quantized energies.
3.1 Asymptotic behavior
As \(r\to\infty\): the Coulomb potential is negligible compared to \(E<0\), so the equation approximates
\[
-\frac{\hbar^2}{2\mu}\frac{d^2 u}{dr^2} \approx E\, u .
\]
and \(u(r)\sim e^{-\kappa r}\) as \(r\to\infty\) (the exponentially growing solution is discarded for normalizability).
As \(r\to 0\): the dominant term is the centrifugal term \(\propto 1/r^2\). Neglecting the Coulomb term for small \(r\) gives
\[
-\frac{\hbar^2}{2\mu}\frac{d^2 u}{dr^2} + \frac{\hbar^2\ell(\ell+1)}{2\mu r^2} u \approx 0.
\]
Solving the indicial equation yields the leading behavior \(u(r)\sim r^{\ell+1}\) (the second independent solution behaves like \(r^{-\ell}\) and is non-physical because it is not regular at the origin). Therefore
If the series does not terminate, the coefficients \(a_j\) fall off too slowly and \(v(\rho)\) grows exponentially, which spoils normalizability.
Normalizable solutions exist only if the numerator vanishes for some finite \(j=n_r\) (the radial quantum number). This forces the series to terminate, producing a polynomial.
Thus the termination condition is:
\[
\frac{\mu Z e^2}{2\pi \varepsilon_0 \hbar^2 \kappa} = n_r + \ell + 1 \equiv n, \qquad n=1,2,3,\dots
\]
where \(n\) is the principal quantum number.
3.3 Energy quantization and the principal quantum number
The requirement that the power-series solution terminates at a finite order fixes the parameter \(\kappa\). Using \(\kappa^2 = \tfrac{-2\mu E}{\hbar^2}\), the allowed bound-state energies are
These explicit forms are obtained by substituting \(n,\ell\) into the general hydrogen radial wavefunction formula and using the associated Laguerre polynomials for small \(n\).
Figure 2: Radial wave functions and probability densities for low-\(n\) states.
Code
import numpy as npimport matplotlib.pyplot as pltfrom scipy.constants import physical_constantsfrom scipy.special import genlaguerre, factorial# Constantsa0 = physical_constants["Bohr radius"][0] # Bohr radius [m]Eh = physical_constants["Hartree energy"][0] # Hartree energy [J]eV = physical_constants["electron volt"][0] # 1 eV in Jnmax =4# General hydrogen radial wavefunction R_{nl}(r)def R_nl(r, n, l):if l >= n or l <0:raiseValueError("Quantum number l must satisfy 0 <= l < n") rho =2* r / (n * a0) norm = np.sqrt((2/(n*a0))**3* factorial(n-l-1)/(2*n*factorial(n+l)))return norm * rho**l * np.exp(-rho/2) * genlaguerre(n-l-1, 2*l+1)(rho)# Radial probability densities P(r) = r^2 |R_{nl}(r)|^2def P_n(r, n, l): R = R_nl(r, n, l)return r**2* np.abs(R)**2# Energy levels [J]def energy_n(n):return-Eh / (2* n**2)# Effective potential (Coulomb + centrifugal)def V_r(r, l):return-Eh * a0 / r + Eh * a0**2* l*(l+1) / (2* r**2)# Prepare datar = np.linspace(0.01*a0, 60*a0, 2000) # radial range# Colorsprop_cycle = plt.rcParams['axes.prop_cycle']colors = prop_cycle.by_key()['color']# Set up 2x2 subplotsfig, axes = plt.subplots(2, 2, figsize=(11, 10), sharex=True, sharey=True)axes = axes.flatten()for idx, myell inenumerate(range(4)): # l = 0,1,2,3 ax = axes[idx]# Effective potential V = V_r(r, myell) / eV ax.plot(r/a0, V, 'k', label="Effective potential")# Energy levels + radial probabilitiesfor i, n inenumerate(range(myell+1, nmax+1)): E = energy_n(n)/eV ax.hlines(E, 0, 40, colors=colors[n-1], linestyles='--', label=f"n={n} level") P = P_n(r, n, myell) P_scaled = (P/np.max(P)) *5+ E # scale & shift to energy level ax.plot(r/a0, P_scaled, colors[n-1], label=f"$P(r)$ for n={n}")# E=0 line ax.axhline(0, color='gray', linewidth=1.2) ax.set_xlim(0, 45) ax.set_ylim(-20, 10) ax.set_title(fr"$\ell={myell}$", pad=10) ax.grid(True)# Force ticks to show up only where wantedfor ax in axes: ax.tick_params(labelbottom=False, labelleft=False) # start blank# left column: y labelsaxes[0].tick_params(labelleft=True)axes[2].tick_params(labelleft=True)# bottom row: x labelsaxes[2].tick_params(labelbottom=True)axes[3].tick_params(labelbottom=True)# Shared axis labels (outside the plots)fig.text(0.5, 0.01, r"$r/a_0$(Bohr radii)", ha="center", fontsize=12)fig.text(0.01, 0.5, "Energy (eV)", va="center", rotation="vertical", fontsize=12)# Legend only in bottom-left subplothandles, labels = axes[0].get_legend_handles_labels()axes[2].legend(handles, labels, loc="lower left", fontsize=10)fig.suptitle("Effective Potential and Hydrogen Atom Radial Probabilities", fontsize=16)plt.tight_layout(rect=[0.04,0.04,1,0.95])plt.show()
Figure 3: Radial wave probability densities in the effective potential for different \(\ell\).
5. Remarks on degeneracy and physical interpretation
The energy \(E_n\) depends only on \(n\) (not on \(\ell\) or \(m\)) for the non-relativistic Coulomb problem.
Thus each energy level has the well-known degeneracy \(n^2\), meaning there are \(n^2\) orthonormal eigenstates of the Hamiltonian with the same eigenvalue:
The accidental degeneracy with respect to \(\ell\) (states of different orbital angular momentum but the same \(n\) having equal energy) is related to the existence of an additional conserved vector in the Coulomb problem, the Runge–Lenz vector.
The centrifugal term \(\hbar^2\ell(\ell+1)/(2 m r^2)\) explains qualitative radial behavior:
Larger \(\ell\) suppresses probability density near the nucleus (nodes and behavior near \(r=0\)).
For \(\ell=0\) (s-states) the wavefunction is nonzero at the origin.
The quantization condition emerged here from the requirement of normalizable solutions (polynomial termination of a confluent hypergeometric series). This is the standard quantum analogue of Bohr’s quantization in the old theory and yields the same energy formula.
6. Atomic states in Dirac notation
In the hydrogen atom, the solutions of the Schrödinger equation are labeled by the three quantum numbers:
TipAtomic quantum numbers
the principal quantum number\(n = 1,2,3,\dots\),
the orbital angular momentum quantum number\(\ell = 0,1,\dots,n-1\),
the magnetic quantum number\(m = -\ell, -\ell+1, \dots, \ell\).
A complete set of eigenstates of the Hamiltonian can therefore be denoted as
\[
|n,\ell,m\rangle.
\]
These states satisfy the following eigenvalue equations:
TipEigenvalue equations
\[
\hat H |n,\ell,m\rangle = E_n |n,\ell,m\rangle,
\]
where \(R_{n\ell}(r)\) is the radial wavefunction and \(Y_\ell^m(\theta,\varphi)\) are the spherical harmonics.
Why Dirac notation?
We will use the compact ket notation \(|n,\ell,m\rangle\) throughout the following discussions, since it highlights the algebraic properties (eigenvalues, degeneracies, operator actions) without always writing out the full coordinate-space wavefunctions.
7. Orbital Naming Conventions
In quantum mechanics, the orbital angular momentum quantum number \(\ell\) dictates the shape of an electron’s orbital and gives rise to a specific naming convention. These are the common designations for the first few values of \(\ell\):
\(\ell = 0\): s-state (from “sharp”)
\(\ell = 1\): p-state (from “principal”)
\(\ell = 2\): d-state (from “diffuse”)
\(\ell = 3\): f-state (from “fundamental”)
This nomenclature is a historical convention from early spectroscopy, where these letters corresponded to the appearance of certain series of spectral lines: sharp, principal, diffuse, and fundamental.