Solid State Physics · Lattice Dynamics Simulation · Spring 2026
N = 10 atomsK = m = a = 1Velocity VerletMaxwell-Boltzmann ICβ = 0.1, 1, 2
§ Animation — Lattice Dynamics (β = 1.0)
Top: atom displacements in real time. Colored dots = atoms; grey lines = springs. Horizontal axis = equilibrium position na, vertical = displacement un.
Middle: Re(Qp) — real part of each normal mode. Blue positive, dark blue negative.
Bottom: Im(Qp) — imaginary part. Red positive, dark red negative.
ωp labelled below each bar. Mode p = 0 is the acoustic (zero-frequency) mode.
§ Numerical Parameters
10
Atoms N
0.05
Time step dt
20
Total time
800
Steps (×3 stride)
§ Dispersion Relation ωp = 2 |sin(pπ/N)|
p
k = 2πp/Na
ωp
Period 2π/ω
Note
0
0.0000
0.0000
∞
Acoustic — uniform translation
1
0.6283
0.6180
10.17
2
1.2566
1.1756
5.34
3
1.8850
1.6180
3.88
4
2.5133
1.9021
3.30
5
3.1416
2.0000
3.14
Zone boundary — maximum frequency
6–9
—
—
—
Mirror of 4–1 by time-reversal symmetry
§ (a) Displacement & Velocity vs Time
§ (b) Normal Coordinates & Momenta
§ Physical Background
Equations of Motion
Nearest-neighbor harmonic coupling with periodic BC:
m ü_n = K(u_{n+1} − 2u_n + u_{n−1})
Integrated with Velocity Verlet — a symplectic algorithm that exactly conserves energy for harmonic systems. Maximum phonon frequency ω_max = 2 at zone boundary.
Normal Mode Transform
Discrete Fourier transform diagonalizes the equations:
Q_p = (1/√N) Σ_n u_n exp(−ik_p na)
Each Q_p evolves as an independent harmonic oscillator at ωp.
Implemented as np.fft.fft(u) / √N.
Initial Conditions
Displacements: u_n ~ Uniform[−0.1, 0.1]
Velocities: v_n ~ N(0, √(k_BT))
Center-of-mass drift removed
KE rescaled to exact equipartition Nk_BT/2
Temperature Effects
β = 0.1 (high T): large amplitudes, all modes strongly excited