IntRoduction to solid state physics
Practice Course
Sheng Yun Wu
Practice Course
Sheng Yun Wu
Week 5: Free Electron Theory of Metals
This example calculates the electrical conductivity of a metal using the Drude model formula σ=(ne^2)τ/m.
In the Drude model, electrical conductivity depends on the number of free electrons per unit volume n, the electron charge e, relaxation time τ\tauτ, and the electron mass m. This example calculates the electrical conductivity of a metal based on these parameters, providing insights into the free electron model in metals.
def electrical_conductivity(n, e, tau, m):
return (n * e**2 * tau) / m
# Example: Electron density n = 8.5e28 m⁻³, relaxation time tau = 1e-14 s, electron mass m = 9.11e-31 kg, charge e = 1.6e-19 C
n = 8.5e28 # m⁻³
tau = 1e-14 # s
m = 9.11e-31 # kg
e = 1.6e-19 # C
sigma = electrical_conductivity(n, e, tau, m)
print(f"Electrical Conductivity: {sigma:.2e} S/m")
This example calculates the Fermi energy using the formula EF={(ℏ^2)/2m)}x(3π^2n)^(2/3)
The Fermi energy is the energy of the highest occupied state at absolute zero in a free electron gas model. This example calculates the Fermi energy for a given electron density, a key parameter for understanding electron behavior in metals.
h_bar = 1.0545718e-34 # Reduced Planck's constant, J·s
m_e = 9.11e-31 # Mass of an electron in kg
def fermi_energy(n):
return (h_bar**2 * (3 * np.pi**2 * n)**(2/3)) / (2 * m_e)
# Example: Electron density n = 8.5e28 electrons/m³
n = 8.5e28 # m⁻³
E_F = fermi_energy(n)
print(f"Fermi Energy: {E_F:.2e} Joules")
This example calculates the Fermi temperature using the formula TF=EF/kB, where kB is Boltzmann’s constant.
The Fermi temperature TF is related to the Fermi energy and represents the temperature at which thermal effects would be comparable to the quantum effects of electrons. This example calculates the Fermi temperature for a metal based on its Fermi energy.
k_B = 1.38e-23 # Boltzmann constant, J/K
def fermi_temperature(E_F):
return E_F / k_B
# Example: Fermi energy E_F = 5.5 eV (converted to Joules)
E_F = 5.5 * 1.6e-19 # Joules
T_F = fermi_temperature(E_F)
print(f"Fermi Temperature: {T_F:.2f} K")
This example calculates the mean free path λ=vF⋅τ, where vF is the Fermi velocity and τ\tauτ is the relaxation time.
The mean free path represents the average distance an electron travels between collisions in a metal. This example calculates the mean free path based on the Fermi velocity and relaxation time, providing insight into electron transport properties.
def mean_free_path(v_F, tau):
return v_F * tau
# Example: Fermi velocity v_F = 1e6 m/s, relaxation time tau = 1e-14 s
v_F = 1e6 # m/s
tau = 1e-14 # s
lambda_mfp = mean_free_path(v_F, tau)
print(f"Mean Free Path: {lambda_mfp:.2e} meters")
This example calculates the drift velocity of electrons in a metal using vd=J/ne, where J is the current density.
The drift velocity is the average velocity of electrons in response to an applied electric field. This example calculates the drift velocity based on the current density and electron concentration, giving students insight into electron mobility in metals.
def drift_velocity(J, n, e):
return J / (n * e)
# Example: Current density J = 1e6 A/m², electron density n = 8.5e28 m⁻³, charge e = 1.6e-19 C
J = 1e6 # A/m²
n = 8.5e28 # m⁻³
e = 1.6e-19 # C
v_d = drift_velocity(J, n, e)
print(f"Drift Velocity: {v_d:.2e} m/s")
This example calculates the electronic contribution to the heat capacity at low temperatures using the Sommerfeld model Ce=γT,
The Sommerfeld model is used to calculate the electronic contribution to the heat capacity in metals at low temperatures. This example shows how to compute the heat capacity based on electron density, Fermi energy, and temperature.
def heat_capacity_sommerfeld(n, E_F, T):
gamma = (np.pi**2 / 2) * (k_B**2 * n) / E_F
return gamma * T
# Example: Electron density n = 8.5e28 m⁻³, Fermi energy E_F = 5.5 eV, temperature T = 300 K
n = 8.5e28 # m⁻³
E_F = 5.5 * 1.6e-19 # Joules
T = 300 # Kelvin
C_e = heat_capacity_sommerfeld(n, E_F, T)
print(f"Electronic Heat Capacity: {C_e:.2e} J/K")
This example calculates the Fermi velocity using the formula vF=square (2EF/m)
The Fermi velocity represents the speed of electrons at the Fermi surface. This example calculates the Fermi velocity for a given Fermi energy, helping students understand the speed at which electrons move in a metal.
def fermi_velocity(E_F, m):
return np.sqrt(2 * E_F / m)
# Example: Fermi energy E_F = 5.5 eV (converted to Joules), electron mass m = 9.11e-31 kg
E_F = 5.5 * 1.6e-19 # Joules
m = 9.11e-31 # kg
v_F = fermi_velocity(E_F, m)
print(f"Fermi Velocity: {v_F:.2e} m/s")
This example calculates the thermal conductivity κ\kappaκ using the Wiedemann-Franz law κ=LσT, where LLL is the Lorenz number.
The Wiedemann-Franz law relates thermal conductivity and electrical conductivity in metals. This example calculates the thermal conductivity for copper based on its electrical conductivity and temperature.
L = 2.44e-8 # Lorenz number, W·ohm/K²
def thermal_conductivity(sigma, T):
return L * sigma * T
# Example: Electrical conductivity sigma = 5.8e7 S/m (for copper), temperature T = 300 K
sigma = 5.8e7 # S/m
T = 300 # Kelvin
kappa = thermal_conductivity(sigma, T)
print(f"Thermal Conductivity: {kappa:.2e} W/m·K")
This example estimates the relaxation time τ of electrons using the Drude model and the given electrical conductivity.
The relaxation time is the average time between collisions for electrons in a metal. This example estimates the relaxation time using the Drude model, electrical conductivity, and electron properties, helping students understand how scattering affects electron transport.
def relaxation_time(sigma, n, e, m):
return (sigma * m) / (n * e**2)
# Example: Electrical conductivity sigma = 5.8e7 S/m (for copper), electron density n = 8.5e28 m⁻³, electron mass m = 9.11e-31 kg, charge e = 1.6e-19 C
sigma = 5.8e7 # S/m
n = 8.5e28 # m⁻³
m = 9.11e-31 # kg
e = 1.6e-19 # C
tau = relaxation_time(sigma, n, e, m)
print(f"Relaxation Time: {tau:.2e} seconds")
This example calculates the resistivity of a metal using ρ=m/(ne^2τ), the inverse of the Drude model for conductivity.
Resistivity is the inverse of electrical conductivity and represents the material's resistance to the flow of electrons. This example calculates the resistivity based on electron properties and relaxation time, giving insights into how collisions affect electrical resistance in metals.
def electrical_resistivity(n, e, tau, m):
return m / (n * e**2 * tau)
# Example: Electron density n = 8.5e28 m⁻³, relaxation time tau = 1e-14 s, electron mass m = 9.11e-31 kg, charge e = 1.6e-19 C
n = 8.5e28 # m⁻³
tau = 1e-14 # s
m = 9.11e-31 # kg
e = 1.6e-19 # C
resistivity = electrical_resistivity(n, e, tau, m)
print(f"Electrical Resistivity: {resistivity:.2e} ohm·m")
These Python examples cover important concepts related to Week 5: Free Electron Theory of Metals, such as Fermi energy, Fermi velocity, drift velocity, electrical conductivity, thermal conductivity, heat capacity, relaxation time, and resistivity. By exploring both the Drude and Sommerfeld models, these examples help students understand electron behavior and transport properties in metals.