Binding energy from Dirac equation as a function of Z
Date: 2016-03-05Here we shall plot the electron binding energy predicted by the Dirac equation for the hydrogen atom:
\[E_{nj}=mc^2\left\{\left[1+\left(\frac{\alpha Z}{n-(j+1/2)+\sqrt{(j+1/2)^2-(\alpha Z)^2}}\right)^2\right]^{\frac{-1}{2}}-1\right\}\]
import matplotlib as mpl
= {
params "font.family": "serif",
"text.usetex": True,
"font.serif": 'Palatino',
"figure.figsize": [5.5,4],
}
mpl.rcParams.update(params)
import numpy as np
from matplotlib import pyplot as plt
# Setting a nice plot style
'ggplot')
plt.style.use(
# Define a function to calculate E(Z) given j and n
def E(Z,j,n):
# Defining some constants
= 3*(10**8) # Speed of light
c = 9.1*(10**(-31)) # Mass of the electron
m = 137**-1 # Fine structure constant
alpha
# Defining our binding energy function, E(Z)
# derived from the Dirac equation.
= n - (j + .5) + np.sqrt((j + 0.5)**2 - (alpha*Z)**2)
denom = alpha*Z/denom
frac return m*(c**2)*((1+frac**2)**(-0.5) - 1)
# Now defining a function to plot E(Z)
def binding_energy_plot(j,n):
# Create an even spaced array of numbers in the range
# 0 - 137, in steps of 0.1.
= np.arange(0.0, 137.0, 0.1)
Z
# Plot the function
plt.plot(Z, E(Z,j,n))
# Label the x and y axies
"Z")
plt.xlabel("Binding Energy (Joules)")
plt.ylabel(
0.5,1)
binding_energy_plot(
plt.tight_layout()'dirac_binding_energy.png') plt.savefig(
We can see that the binding energy goes asymptotically to \(-\infty\) as \(Z\rightarrow 137\) (that is, as \(\alpha Z\rightarrow 1\)). In this regime, the coupling is so strong that we can have spontaneous production of electron-positron pairs from the vacuum, and we must turn to quantum field theory instead.