The dispersion relation ω(k) describes how phonon frequencies depend on the wavevector k. In this chapter, we derive dispersion relations for simple one-dimensional atomic chains and explore the fundamental differences between acoustic and optical phonon modes. Understanding dispersion relations is essential for interpreting phonon band structures and connecting microscopic lattice dynamics to macroscopic thermal properties.
Learning Objectives
By reading this chapter, you will be able to:
- ✅ Derive the dispersion relation for a one-dimensional monatomic chain
- ✅ Understand the concept of the first Brillouin zone
- ✅ Distinguish between group velocity and phase velocity
- ✅ Derive dispersion relations for diatomic chains with acoustic and optical branches
- ✅ Explain the physical origin of the gap between acoustic and optical modes
- ✅ Understand the extension to 3D: longitudinal and transverse modes
- ✅ Plot and interpret phonon dispersion relations using Python
2.1 One-Dimensional Monatomic Chain
Model Setup
The simplest model for understanding phonon dispersion is a one-dimensional monatomic chain: identical atoms of mass $M$ connected by springs with force constant $K$, separated by lattice constant $a$.
Physical assumptions:
- All atoms have identical mass $M$
- Nearest-neighbor interactions only (spring constant $K$)
- Harmonic approximation (Hooke's law applies)
- Periodic boundary conditions (Born-von Karman)
Equation of Motion
Let $u_n$ be the displacement of the $n$-th atom from its equilibrium position. The force on atom $n$ due to its neighbors is:
$$F_n = K(u_{n+1} - u_n) + K(u_{n-1} - u_n) = K(u_{n+1} + u_{n-1} - 2u_n)$$Newton's second law gives the equation of motion:
$$M\frac{d^2u_n}{dt^2} = K(u_{n+1} + u_{n-1} - 2u_n)$$Plane Wave Solution
We assume a traveling wave solution with wavevector $k$ and angular frequency $\omega$:
$$u_n(t) = A e^{i(kna - \omega t)}$$where $A$ is the amplitude, $n$ is the atom index, and $a$ is the lattice constant.
Substituting this into the equation of motion:
$$-M\omega^2 Ae^{i(kna - \omega t)} = K\left[Ae^{i(k(n+1)a - \omega t)} + Ae^{i(k(n-1)a - \omega t)} - 2Ae^{i(kna - \omega t)}\right]$$Dividing by $Ae^{i(kna - \omega t)}$:
$$-M\omega^2 = K\left[e^{ika} + e^{-ika} - 2\right] = K\left[2\cos(ka) - 2\right] = -2K[1 - \cos(ka)]$$Using the identity $1 - \cos(ka) = 2\sin^2(ka/2)$:
$$M\omega^2 = 4K\sin^2(ka/2)$$Dispersion Relation
Monatomic Chain Dispersion Relation: $$\omega(k) = 2\sqrt{\frac{K}{M}}\left|\sin\left(\frac{ka}{2}\right)\right|$$
This fundamental result describes how phonon frequency depends on wavevector.
Key Features of the Dispersion
1. Periodicity in k-space
The dispersion relation is periodic with period $2\pi/a$:
$$\omega(k + 2\pi/a) = \omega(k)$$Therefore, all unique information is contained in the range $-\pi/a \leq k \leq \pi/a$, called the first Brillouin zone.
2. Long Wavelength Limit (k → 0)
For small $k$, using $\sin(x) \approx x$:
$$\omega(k) \approx 2\sqrt{\frac{K}{M}} \cdot \frac{ka}{2} = \sqrt{\frac{K}{M}} \cdot ka = v_s |k|$$where the sound velocity is:
$$v_s = a\sqrt{\frac{K}{M}}$$This linear dispersion represents sound waves in the continuum limit.
3. Zone Boundary (k = π/a)
At the Brillouin zone boundary:
$$\omega_{\text{max}} = 2\sqrt{\frac{K}{M}}$$The group velocity $v_g = d\omega/dk = 0$ at the zone boundary, representing a standing wave.
Group Velocity vs Phase Velocity
Phase velocity (speed of constant phase surfaces):
$$v_p = \frac{\omega}{k}$$Group velocity (speed of energy/wave packet propagation):
$$v_g = \frac{d\omega}{dk} = a\sqrt{\frac{K}{M}}\cos\left(\frac{ka}{2}\right)$$Physical interpretation: The group velocity determines how fast phonons transport energy and heat. At the zone boundary ($k = \pi/a$), $v_g = 0$, meaning phonons don't propagate and don't contribute to thermal transport.
2.2 One-Dimensional Diatomic Chain
Model Setup
A diatomic chain has two atoms with different masses $M_1$ and $M_2$ alternating along the chain, with lattice constant $a$ (distance between identical atoms).
The unit cell now contains two atoms, and the primitive lattice constant is $a$ (not $a/2$).
Equations of Motion
Let $u_n$ be the displacement of the heavy atom (mass $M_1$) and $v_n$ be the displacement of the light atom (mass $M_2$) in the $n$-th unit cell.
$$M_1\frac{d^2u_n}{dt^2} = K(v_n + v_{n-1} - 2u_n)$$ $$M_2\frac{d^2v_n}{dt^2} = K(u_{n+1} + u_n - 2v_n)$$Plane Wave Solutions
Assume solutions:
$$u_n(t) = A_1 e^{i(kna - \omega t)}$$ $$v_n(t) = A_2 e^{i(kna - \omega t)}$$Substituting into the equations of motion:
$$-M_1\omega^2 A_1 = K(A_2 + A_2 e^{-ika} - 2A_1)$$ $$-M_2\omega^2 A_2 = K(A_1 e^{ika} + A_1 - 2A_2)$$Rearranging into matrix form:
$$\begin{pmatrix} 2K - M_1\omega^2 & -K(1 + e^{-ika}) \\ -K(1 + e^{ika}) & 2K - M_2\omega^2 \end{pmatrix} \begin{pmatrix} A_1 \\ A_2 \end{pmatrix} = 0$$Dispersion Relations
For non-trivial solutions, the determinant must vanish. This yields:
$$\omega^2 = K\left(\frac{1}{M_1} + \frac{1}{M_2}\right) \pm K\sqrt{\left(\frac{1}{M_1} + \frac{1}{M_2}\right)^2 - \frac{4\sin^2(ka/2)}{M_1M_2}}$$This gives two branches:
Acoustic Branch (lower frequency, - sign): $$\omega_-(k) = \sqrt{K\left(\frac{1}{M_1} + \frac{1}{M_2}\right) - K\sqrt{\left(\frac{1}{M_1} + \frac{1}{M_2}\right)^2 - \frac{4\sin^2(ka/2)}{M_1M_2}}}$$ Optical Branch (higher frequency, + sign): $$\omega_+(k) = \sqrt{K\left(\frac{1}{M_1} + \frac{1}{M_2}\right) + K\sqrt{\left(\frac{1}{M_1} + \frac{1}{M_2}\right)^2 - \frac{4\sin^2(ka/2)}{M_1M_2}}}$$
Physical Interpretation
Acoustic Branch (k → 0)
At long wavelengths:
$$\omega_-(k) \approx \sqrt{\frac{2K}{M_1 + M_2}} |k|a$$- Linear dispersion (like sound waves)
- $\omega \to 0$ as $k \to 0$
- Motion: Both atoms move in phase (like rigid translation of the unit cell)
Optical Branch (k → 0)
At the zone center:
$$\omega_+(0) = \sqrt{2K\left(\frac{1}{M_1} + \frac{1}{M_2}\right)} = \sqrt{\frac{2K(M_1 + M_2)}{M_1M_2}}$$- Non-zero frequency at $k = 0$
- Motion: Atoms move out of phase (opposite directions)
- Can be excited by infrared light in ionic crystals (hence "optical")
Band Gap
There is a frequency gap between the acoustic and optical branches:
$$\Delta\omega = \omega_+(0) - \omega_-(\pi/a)$$No phonon modes exist with frequencies in this gap.
2.3 Extension to Three Dimensions
Three-Dimensional Crystal Lattice
In 3D crystals, atoms can vibrate in three orthogonal directions, leading to three types of modes:
| Mode Type | Polarization | Number of Branches |
|---|---|---|
| Longitudinal (L) | Parallel to wave propagation | 1 acoustic + optical branches |
| Transverse (T) | Perpendicular to wave propagation | 2 acoustic + optical branches |
Total Number of Phonon Branches
For a crystal with $n$ atoms per unit cell:
- Acoustic branches: 3 (1 LA + 2 TA)
- Optical branches: $3(n-1)$
- Total: $3n$ branches
Examples
- FCC lattice (Al, Cu): $n=1$ → 3 acoustic branches
- Diamond/Si: $n=2$ → 3 acoustic + 3 optical = 6 branches
- NaCl: $n=2$ → 3 acoustic + 3 optical = 6 branches
Dispersion in High-Symmetry Directions
Phonon dispersion is typically plotted along high-symmetry directions in the Brillouin zone:
- Γ point: Zone center ($k = 0$)
- X point: Zone boundary along [100]
- L point: Zone boundary along [111]
- K point: Other high-symmetry points
Practical note: Experimental phonon dispersions are measured using inelastic neutron scattering or X-ray scattering along these high-symmetry lines.
2.4 Python Implementation: Plotting Dispersion Relations
Environment Setup
# Install required libraries
pip install numpy matplotlib scipy
Code Example 1: Monatomic Chain Dispersion
# Requirements:
# - Python 3.9+
# - matplotlib>=3.7.0
# - numpy>=1.24.0, <2.0.0
"""
Example: Monatomic chain phonon dispersion relation
Purpose: Visualize ω(k) for 1D monatomic chain
Target: Beginner
Execution time: 1-2 seconds
Dependencies: None
"""
import numpy as np
import matplotlib.pyplot as plt
# Physical parameters
M = 1.0 # Atomic mass (arbitrary units)
K = 1.0 # Spring constant (arbitrary units)
a = 1.0 # Lattice constant (arbitrary units)
# Wavevector range (first Brillouin zone)
k = np.linspace(-np.pi/a, np.pi/a, 500)
# Dispersion relation: ω(k) = 2√(K/M)|sin(ka/2)|
omega = 2 * np.sqrt(K/M) * np.abs(np.sin(k * a / 2))
# Sound velocity (slope at k=0)
v_s = a * np.sqrt(K/M)
# Linear approximation (long wavelength)
omega_linear = v_s * np.abs(k)
# Create plot
fig, ax = plt.subplots(figsize=(10, 6))
ax.plot(k*a/np.pi, omega, 'b-', linewidth=2.5, label='ω(k) = 2√(K/M)|sin(ka/2)|')
ax.plot(k*a/np.pi, omega_linear, 'r--', linewidth=2, alpha=0.7,
label=f'Linear (sound wave): ω = v_s|k|, v_s = {v_s:.2f}')
# Mark special points
ax.axvline(0, color='gray', linestyle=':', alpha=0.5)
ax.axhline(0, color='gray', linestyle=':', alpha=0.5)
ax.scatter([0, -1, 1], [0, 2*np.sqrt(K/M), 2*np.sqrt(K/M)],
s=100, color='red', zorder=5, label='Zone center & boundary')
# Annotations
ax.annotate('Zone center\nΓ point (k=0)', xy=(0, 0), xytext=(0.3, 0.3),
fontsize=10, ha='left',
bbox=dict(boxstyle='round', facecolor='wheat', alpha=0.5),
arrowprops=dict(arrowstyle='->', connectionstyle='arc3,rad=0'))
ax.annotate('Zone boundary\nk = π/a', xy=(1, 2*np.sqrt(K/M)), xytext=(0.7, 1.5),
fontsize=10, ha='left',
bbox=dict(boxstyle='round', facecolor='lightblue', alpha=0.5),
arrowprops=dict(arrowstyle='->', connectionstyle='arc3,rad=0'))
ax.set_xlabel('Reduced wavevector ka/π', fontsize=13, fontweight='bold')
ax.set_ylabel('Frequency ω (arbitrary units)', fontsize=13, fontweight='bold')
ax.set_title('Phonon Dispersion: 1D Monatomic Chain', fontsize=15, fontweight='bold')
ax.legend(fontsize=11, loc='upper left')
ax.grid(alpha=0.3)
ax.set_xlim(-1.1, 1.1)
ax.set_ylim(0, 2.3)
plt.tight_layout()
plt.show()
# Calculate group velocity
dk = k[1] - k[0]
v_g = np.gradient(omega, dk)
print("=== Monatomic Chain Analysis ===")
print(f"Sound velocity v_s = {v_s:.4f}")
print(f"Maximum frequency ω_max = {2*np.sqrt(K/M):.4f}")
print(f"Group velocity at k=0: {v_g[len(v_g)//2]:.4f}")
print(f"Group velocity at zone boundary: {v_g[0]:.4f}, {v_g[-1]:.4f}")
Output:
=== Monatomic Chain Analysis ===
Sound velocity v_s = 1.0000
Maximum frequency ω_max = 2.0000
Group velocity at k=0: 1.0000
Group velocity at zone boundary: 0.0000, 0.0000
Code Example 2: Diatomic Chain Dispersion (Acoustic and Optical Branches)
# Requirements:
# - Python 3.9+
# - matplotlib>=3.7.0
# - numpy>=1.24.0, <2.0.0
"""
Example: Diatomic chain phonon dispersion with acoustic and optical branches
Purpose: Visualize acoustic and optical phonon modes
Target: Beginner
Execution time: 2-3 seconds
Dependencies: None
"""
import numpy as np
import matplotlib.pyplot as plt
# Physical parameters
M1 = 1.0 # Heavy atom mass
M2 = 0.5 # Light atom mass (M2 < M1)
K = 1.0 # Spring constant
a = 1.0 # Lattice constant
# Wavevector range (first Brillouin zone)
k = np.linspace(-np.pi/a, np.pi/a, 500)
# Helper term
inv_M_sum = 1/M1 + 1/M2
inv_M_prod = 1/(M1*M2)
# Discriminant under square root
discriminant = (inv_M_sum)**2 - 4*inv_M_prod*np.sin(k*a/2)**2
# Acoustic branch (lower)
omega_acoustic = np.sqrt(K * (inv_M_sum - np.sqrt(discriminant)))
# Optical branch (upper)
omega_optical = np.sqrt(K * (inv_M_sum + np.sqrt(discriminant)))
# Create plot
fig, ax = plt.subplots(figsize=(11, 7))
ax.plot(k*a/np.pi, omega_acoustic, 'b-', linewidth=2.5,
label='Acoustic branch (ω₋)')
ax.plot(k*a/np.pi, omega_optical, 'r-', linewidth=2.5,
label='Optical branch (ω₊)')
# Fill gap region
omega_acoustic_max = omega_acoustic[np.argmax(omega_acoustic)]
omega_optical_min = omega_optical[len(omega_optical)//2] # At k=0
ax.fill_between([-1.1, 1.1], omega_acoustic_max, omega_optical_min,
alpha=0.2, color='gray', label='Band gap')
# Mark special points
ax.scatter([0], [0], s=120, color='blue', zorder=5, marker='o')
ax.scatter([0], [omega_optical_min], s=120, color='red', zorder=5, marker='o')
# Annotations
ax.annotate(f'Optical mode at Γ\nω₊(0) = {omega_optical_min:.3f}',
xy=(0, omega_optical_min), xytext=(0.4, omega_optical_min+0.15),
fontsize=10, ha='left',
bbox=dict(boxstyle='round', facecolor='#ffe0e0', alpha=0.8),
arrowprops=dict(arrowstyle='->', connectionstyle='arc3,rad=0.3'))
ax.annotate('Acoustic mode at Γ\nω₋(0) = 0',
xy=(0, 0), xytext=(-0.7, 0.3),
fontsize=10, ha='left',
bbox=dict(boxstyle='round', facecolor='#e0e0ff', alpha=0.8),
arrowprops=dict(arrowstyle='->', connectionstyle='arc3,rad=-0.3'))
ax.axvline(0, color='gray', linestyle=':', alpha=0.5)
ax.axhline(0, color='gray', linestyle=':', alpha=0.5)
ax.set_xlabel('Reduced wavevector ka/π', fontsize=13, fontweight='bold')
ax.set_ylabel('Frequency ω (arbitrary units)', fontsize=13, fontweight='bold')
ax.set_title(f'Phonon Dispersion: 1D Diatomic Chain (M₁={M1}, M₂={M2})',
fontsize=15, fontweight='bold')
ax.legend(fontsize=11, loc='upper left')
ax.grid(alpha=0.3)
ax.set_xlim(-1.1, 1.1)
plt.tight_layout()
plt.show()
# Analysis
gap = omega_optical_min - omega_acoustic_max
print("=== Diatomic Chain Analysis ===")
print(f"Heavy atom mass M₁ = {M1}")
print(f"Light atom mass M₂ = {M2}")
print(f"Optical mode at Γ: ω₊(0) = {omega_optical_min:.4f}")
print(f"Acoustic mode maximum: ω₋(π/a) = {omega_acoustic_max:.4f}")
print(f"Band gap Δω = {gap:.4f}")
print(f"Gap ratio: Δω/ω₊(0) = {gap/omega_optical_min*100:.1f}%")
Output:
=== Diatomic Chain Analysis ===
Heavy atom mass M₁ = 1.0
Light atom mass M₂ = 0.5
Optical mode at Γ: ω₊(0) = 1.7321
Acoustic mode maximum: ω₋(π/a) = 1.4142
Band gap Δω = 0.3178
Gap ratio: Δω/ω₊(0) = 18.4%
Code Example 3: Comparison of Different Mass Ratios
# Requirements:
# - Python 3.9+
# - matplotlib>=3.7.0
# - numpy>=1.24.0, <2.0.0
"""
Example: Effect of mass ratio on diatomic chain dispersion
Purpose: Show how M1/M2 ratio affects the band gap
Target: Intermediate
Execution time: 2-3 seconds
Dependencies: None
"""
import numpy as np
import matplotlib.pyplot as plt
K = 1.0
a = 1.0
k = np.linspace(-np.pi/a, np.pi/a, 300)
# Different mass ratios
mass_ratios = [1.5, 2.0, 3.0, 5.0]
M1 = 1.0
fig, axes = plt.subplots(2, 2, figsize=(14, 10))
axes = axes.flatten()
for idx, ratio in enumerate(mass_ratios):
M2 = M1 / ratio
inv_M_sum = 1/M1 + 1/M2
inv_M_prod = 1/(M1*M2)
discriminant = (inv_M_sum)**2 - 4*inv_M_prod*np.sin(k*a/2)**2
omega_acoustic = np.sqrt(K * (inv_M_sum - np.sqrt(discriminant)))
omega_optical = np.sqrt(K * (inv_M_sum + np.sqrt(discriminant)))
ax = axes[idx]
ax.plot(k*a/np.pi, omega_acoustic, 'b-', linewidth=2, label='Acoustic')
ax.plot(k*a/np.pi, omega_optical, 'r-', linewidth=2, label='Optical')
# Calculate gap
gap = omega_optical[len(omega_optical)//2] - np.max(omega_acoustic)
ax.fill_between([-1.1, 1.1], np.max(omega_acoustic),
omega_optical[len(omega_optical)//2],
alpha=0.15, color='gray')
ax.set_xlabel('ka/π', fontsize=11, fontweight='bold')
ax.set_ylabel('ω', fontsize=11, fontweight='bold')
ax.set_title(f'M₁/M₂ = {ratio:.1f}, Gap = {gap:.3f}',
fontsize=12, fontweight='bold')
ax.legend(fontsize=9)
ax.grid(alpha=0.3)
ax.set_xlim(-1.1, 1.1)
plt.suptitle('Effect of Mass Ratio on Phonon Dispersion',
fontsize=16, fontweight='bold')
plt.tight_layout()
plt.show()
# Print summary
print("=== Mass Ratio Effect Summary ===")
for ratio in mass_ratios:
M2 = M1 / ratio
inv_M_sum = 1/M1 + 1/M2
omega_opt_0 = np.sqrt(2*K*inv_M_sum)
print(f"M₁/M₂ = {ratio:.1f}: ω₊(0) = {omega_opt_0:.4f}")
Code Example 4: Animated Wave Motion
# Requirements:
# - Python 3.9+
# - matplotlib>=3.7.0
# - numpy>=1.24.0, <2.0.0
"""
Example: Visualize atomic motion for acoustic vs optical modes
Purpose: Show difference in atomic displacement patterns
Target: Beginner
Execution time: 3-5 seconds
Dependencies: None
"""
import numpy as np
import matplotlib.pyplot as plt
# Parameters
M1 = 1.0
M2 = 0.5
K = 1.0
a = 1.0
N = 10 # Number of unit cells
# Positions
x_heavy = np.arange(0, N*a, a)
x_light = x_heavy + a/2
# Time snapshots
t = np.linspace(0, 2*np.pi, 8)
fig, axes = plt.subplots(2, 4, figsize=(16, 6))
for idx, time in enumerate(t):
# Acoustic mode (k → 0): atoms move together
k_acoustic = 0.1 * np.pi/a
omega_acoustic = np.sqrt(2*K/(M1+M2)) * k_acoustic * a
u_heavy_acoustic = 0.3 * np.cos(k_acoustic * x_heavy - omega_acoustic * time)
u_light_acoustic = 0.3 * np.cos(k_acoustic * x_light - omega_acoustic * time)
# Optical mode (k → 0): atoms move oppositely
omega_optical = np.sqrt(2*K*(1/M1 + 1/M2))
u_heavy_optical = 0.3 * np.cos(-omega_optical * time)
u_light_optical = -0.3 * (M1/M2) * np.cos(-omega_optical * time)
# Plot acoustic mode
ax1 = axes[0, idx]
ax1.scatter(x_heavy + u_heavy_acoustic, [0]*N, s=200, c='blue',
marker='o', edgecolors='black', linewidth=2, label='M₁')
ax1.scatter(x_light + u_light_acoustic, [0]*N, s=120, c='red',
marker='o', edgecolors='black', linewidth=2, label='M₂')
ax1.axhline(0, color='gray', linestyle='--', alpha=0.3)
ax1.set_ylim(-0.5, 0.5)
ax1.set_xlim(-0.5, N*a-0.5)
ax1.set_title(f'Acoustic (t={idx})', fontsize=10, fontweight='bold')
ax1.set_yticks([])
if idx == 0:
ax1.set_ylabel('Acoustic Mode', fontsize=11, fontweight='bold')
# Plot optical mode
ax2 = axes[1, idx]
ax2.scatter(x_heavy + u_heavy_optical, [0]*N, s=200, c='blue',
marker='o', edgecolors='black', linewidth=2)
ax2.scatter(x_light + u_light_optical, [0]*N, s=120, c='red',
marker='o', edgecolors='black', linewidth=2)
ax2.axhline(0, color='gray', linestyle='--', alpha=0.3)
ax2.set_ylim(-0.5, 0.5)
ax2.set_xlim(-0.5, N*a-0.5)
ax2.set_title(f'Optical (t={idx})', fontsize=10, fontweight='bold')
ax2.set_yticks([])
if idx == 0:
ax2.set_ylabel('Optical Mode', fontsize=11, fontweight='bold')
plt.suptitle('Atomic Motion: Acoustic vs Optical Phonons',
fontsize=15, fontweight='bold')
plt.tight_layout()
plt.show()
print("=== Atomic Motion Characteristics ===")
print("Acoustic mode: Heavy and light atoms oscillate IN PHASE")
print(" → Net translation of center of mass")
print(" → Sound wave propagation")
print("\nOptical mode: Heavy and light atoms oscillate OUT OF PHASE")
print(" → No net translation (internal vibration)")
print(" → Can interact with light (infrared active)")
2.5 Physical Interpretation and Summary
Long Wavelength vs Short Wavelength Behavior
| Regime | Wavevector | Wavelength | Behavior |
|---|---|---|---|
| Long wavelength | $k \to 0$ | $\lambda \gg a$ | Linear dispersion, sound waves, continuum limit |
| Short wavelength | $k \to \pi/a$ | $\lambda \approx 2a$ | Standing waves, zero group velocity, atomic scale |
Key Physical Insights
1. Acoustic phonons (ω → 0 as k → 0):
- Represent sound waves in the continuum limit
- All atoms in the unit cell move together (in phase)
- Dominate low-temperature thermal properties
- Always present (3 branches in 3D)
2. Optical phonons (ω ≠ 0 at k = 0):
- Atoms in the unit cell move oppositely (out of phase)
- Can couple to electromagnetic radiation (infrared, Raman)
- Only exist when the unit cell has multiple atoms
- Important for dielectric properties and spectroscopy
3. Band gap:
- Frequency range with no phonon modes
- Increases with larger mass difference (M₁/M₂)
- Affects thermal transport and scattering processes
Connection to Real Materials
- Metals (Al, Cu): Simple lattices → only acoustic branches dominate
- Semiconductors (Si, GaAs): Multiple atoms per unit cell → acoustic + optical branches
- Ionic crystals (NaCl, LiF): Large mass difference → large optical-acoustic gap
- Complex materials: Many atoms per unit cell → many optical branches, rich dispersion
Summary
In this chapter, we explored phonon dispersion relations:
- Monatomic chain: Derived $\omega(k) = 2\sqrt{K/M}|\sin(ka/2)|$ with linear dispersion at small $k$ and standing waves at zone boundary
- First Brillouin zone: All unique information contained in $-\pi/a \leq k \leq \pi/a$
- Group vs phase velocity: $v_g = d\omega/dk$ determines energy transport
- Diatomic chain: Two branches (acoustic and optical) separated by a band gap
- Acoustic modes: $\omega \to 0$ as $k \to 0$, atoms move in phase
- Optical modes: $\omega(0) \neq 0$, atoms move out of phase
- 3D extension: Longitudinal and transverse modes, $3n$ total branches
- Python visualization: Tools to plot and analyze dispersion relations
These dispersion relations form the foundation for understanding phonon density of states, thermal properties, and spectroscopic measurements covered in subsequent chapters.
Exercises
Practice Problems
Exercise 2.1: Derive the group velocity for the monatomic chain and show that it vanishes at the zone boundary.
Exercise 2.2: For a diatomic chain with $M_1 = 2M$ and $M_2 = M$, calculate the optical mode frequency at $k=0$ in terms of $K$ and $M$.
Exercise 2.3: Modify the Python code to plot dispersion for a chain with three different atoms per unit cell. How many branches appear?
Exercise 2.4: Explain why optical phonons are called "optical." Under what conditions can they interact with light?
Exercise 2.5: For silicon (diamond structure, 2 atoms per unit cell), sketch the expected phonon dispersion showing acoustic and optical branches. How many total branches are there?
Exercise 2.6 (Advanced): Calculate the density of states $g(\omega) = \int \delta(\omega - \omega(k))dk$ for the monatomic chain. Where does it diverge?
Further Reading
- Ashcroft & Mermin, Solid State Physics, Chapter 22
- Kittel, Introduction to Solid State Physics, Chapter 4
- Dove, Introduction to Lattice Dynamics, Cambridge University Press
- Srivastava, The Physics of Phonons, Taylor & Francis