physics2u
Tier
⌕ Search ⌘K
physics2u.com/vault/small-oscillations-eigenproblem.html
Derivation · the atom

Small oscillations as a generalised eigenvalue problem

D-003 small-oscillations-eigenproblem Home PU-201 Threads waves · symmetry Depends on D-001 · D-018 verified
Statement

Any conservative system near a stable equilibrium behaves as a set of independent harmonic oscillators, and finding them is a matrix eigenvalue problem.

Why it matters

This is the reason the harmonic oscillator is not one system among many but the universal small-amplitude behaviour of everything. It is also the first place in a physics degree where linear algebra stops being a tool and becomes the content: normal modes are eigenvectors. The same structure returns as phonons in PU-303 and as field modes in PU-402.

Assumptions
Equilibrium exists and is stable.∂V/∂qi = 0 at the point, and the matrix of second derivatives is positive definite. If it is not positive definite, at least one ω² is negative and the corresponding mode grows exponentially — a genuine instability, not a mathematical artefact.
Displacements are small enough that cubic terms are negligible.Quantitatively, the cubic term is negligible while η ≪ V″/V‴. Beyond this, modes couple and the independence is lost — this is the entry point to nonlinear dynamics and chaos.
The kinetic-energy matrix is evaluated at equilibrium.Its coordinate dependence contributes only at cubic order in the Lagrangian, so freezing it is consistent with the truncation already made.
Derivation
1
V(q) = V0 + Σi (∂V/∂qi) ηi + ½ Σij (∂²V/∂qi∂qj) ηiηj + …
Taylor-expand the potential about equilibrium, writing ηi = qi − qi(0). Every statement about "small oscillations" in physics is this line and nothing more. A
2
V ≈ ½ Σij Kij ηiηj,   Kij ≡ ∂²V/∂qi∂qj
The constant is dropped (it shifts no equation) and the linear term vanishes because we expanded about an equilibrium. K is symmetric because mixed partials commute — a fact that will matter at step 6. A
3
T = ½ Σij Mij η̇iη̇j
Kinetic energy in generalised coordinates is quadratic in the velocities, with M evaluated at equilibrium. M is symmetric and positive definite: kinetic energy cannot be negative. A
4
Σj Mij η̈j + Σj Kij ηj = 0  ⟺   M η̈ + K η = 0
Apply Euler–Lagrange (D-001) to L = T − V. In matrix form the system is coupled, linear, constant-coefficient. B
5
η(t) = a eiωt  ⟹   ( K − ω² M ) a = 0
Try a solution in which every coordinate oscillates at one common frequency with fixed relative amplitudes — that is the definition of a normal mode, imposed as an ansatz and justified by the count of solutions found. B
6
det( K − ω² M ) = 0
A non-trivial a exists only if the matrix is singular. This is a polynomial of degree n in ω², giving exactly n normal-mode frequencies for n degrees of freedom. Because K and M are symmetric and M is positive definite, the roots are real (D-018 applied to the transformed problem) and the eigenvectors can be chosen orthogonal with respect to M. C
Result
( K − ωr² M ) a(r) = 0,    η(t) = Σr Cr a(r) cos(ωrt + φr)

Reading. The general small-amplitude motion is a superposition of n independent harmonic oscillations. In the normal-coordinate basis both M and K are diagonal simultaneously, and the system is literally n uncoupled oscillators. The coupling in the original coordinates was an artefact of the basis, not of the physics.

Units check. K has units [energy]/[q]², M has [energy][time]²/[q]². Their ratio is [time]−2 = ω².

Limiting cases
  • Equal masses (M = m I) — the generalised problem collapses to the ordinary eigenproblem det(K − ω²m I) = 0.
  • Zero coupling — K is already diagonal, the modes are the coordinates themselves and no diagonalisation is needed.
  • n → ∞ on a chain — the discrete spectrum becomes the phonon dispersion relation of PU-303.
Breaks when
  • Amplitudes grow enough for cubic terms to matter — modes couple, energy leaks between them, and the pendulum period starts depending on amplitude.
  • Two ωr coincide — the eigenvectors are no longer unique and any combination within the degenerate subspace is a valid mode. Symmetry, not algebra, then picks the natural basis.
  • Damping is present — the eigenvalue problem becomes complex and modes acquire decay rates.
Failure modes
  • Solving det(K − ω²I) = 0 instead of using M. Correct only when all masses are equal; silently wrong otherwise.
  • Expanding about a point that is not an equilibrium, leaving a linear term that then gets dropped anyway.
  • Reporting n frequencies but forgetting that a zero-frequency root is a real and important solution — it is a free translation or rotation of the whole system.
Worked number — two identical pendulums coupled by a spring

With M = m I and K giving diagonal mg/ℓ + k and off-diagonal −k, the modes are the symmetric one at ω1² = g/ℓ (the spring never stretches, so it does not appear) and the antisymmetric one at ω2² = g/ℓ + 2k/m. For ℓ = 0.50 m, m = 0.20 kg, k = 2.0 N m−1: ω1 = 4.43 rad s−1 and ω2 = 6.26 rad s−1. The familiar beating occurs at the difference frequency, 1.83 rad s−1 — a beat period of 3.4 s, exactly what the classroom demonstration shows.

Run the check → scipy.linalg.eigh(K, M) on a 5-mass chain; compare to the analytic dispersion

Discussion

The single most important feature of the result ( Kω2M )a = 0 is that two matrices appear, not one. Both the potential energy and the kinetic energy are quadratic forms near equilibrium — V = ½ηTKη and T = ½η̇TMη̇ — and a normal mode is the special direction in configuration space along which these two ellipsoids share a common axis. That is exactly what a generalised eigenvalue problem finds: the vectors a(r) that are simultaneously principal axes of the stiffness form and the inertia form. In that basis the two forms are diagonal at once, the coordinates decouple, and the system is n genuinely independent oscillators. The apparent coupling in the original coordinates was never physical; it was a statement that our chosen coordinates were not aligned with the natural axes of the problem.

Read this way, the structure of the answer explains several of its own features. There are exactly n frequencies because det(Kω2M) is a degree-n polynomial in ω2. Every ωr2 is real and non-negative precisely because M is positive definite (kinetic energy is never negative) and K is positive definite at a stable equilibrium. Let one eigenvalue of K go to zero or negative — a saddle rather than a minimum — and the corresponding ω2 follows it, so the “oscillation” at imaginary frequency becomes exponential runaway. Linear-stability analysis of any equilibrium, from a spinning top to a plasma, is just the sign audit of this same spectrum.

The cleanest way to see why the roots are real is to remove M by a congruence transformation. Because M is symmetric positive definite it has a unique symmetric positive-definite square root, so writing a = M−1/2b turns the generalised problem into the ordinary symmetric one ( M−1/2KM−1/2 )b = ω2b. The mass-weighted matrix M−1/2KM−1/2 is symmetric, so D-018 (real spectrum, orthogonal eigenvectors of a symmetric matrix) applies verbatim. Transforming back, the modes are orthogonal not in the naive dot product but with respect to M: a(r)TMa(s) = 0 for ωrωs. That weighted orthogonality is what makes the total energy split into a clean sum, one uncoupled term per mode, with no cross terms — the algebraic content of “independent oscillators.”

This one calculation is a hub. Quantise each normal coordinate independently and every ωr becomes a ladder of energy quanta: in a crystal these are phonons (the N→∞ limit forwarded to PU-303), in the electromagnetic field they are photons, and the whole edifice of free quantum field theory is “small oscillations” done on infinitely many coordinates. The same eigenproblem with K the Hessian of a molecular potential gives infrared and Raman spectra; with M the inertia tensor and K absent it degenerates to the principal-axes-of-rotation problem; with K a graph Laplacian it becomes spectral graph theory. Molecular vibration, structural engineering resonance, and lattice dynamics are one theorem wearing different clothes. Common misconceptions. (i) Solving det(Kω2I) = 0 — correct only when every mass is equal, silently wrong otherwise, because it forgets M. (ii) Believing the normal modes are the original coordinates; they are eigenvectors, generally mixtures of them. (iii) Expecting the modes to be perpendicular in the ordinary sense — they are M-orthogonal. (iv) Discarding a zero-frequency root as an error: it is a real solution, a free translation or rotation carrying no restoring force. (v) Treating a degeneracy as a breakdown — it merely signals a symmetry, which then chooses the natural basis inside the degenerate subspace.

Worked examples

Example 1 — Longitudinal modes of a linear triatomic molecule (CO2). Three atoms on a line, outer mass m (oxygen, 16u) and central mass M (carbon, 12u), joined by two identical bonds of stiffness k = 1.6×103 N m−1. Take u = 1.66×10−27 kg. Find the longitudinal normal frequencies.

1
V = ½k(x2x1)2 + ½k(x3x2)2 ⇒  K = k[[1,−1,0],[−1,2,−1],[0,−1,1]]M = diag(m,M,m)
Build the stiffness Hessian and the inertia matrix. M is diagonal but not a multiple of I, so the full generalised problem is unavoidable.
2
(Kω2M)a = 0,   det(Kω2M) = 0
Translational invariance guarantees a root ω12 = 0 with a(1) = (1,1,1): rigidly sliding the molecule stretches no bond.
3
a(2) = (1,0,−1):  ω22 = k/m = (1.6×103)/(2.66×10−26) = 6.02×1028 s−2
Symmetric stretch: the carbon stays fixed by symmetry, each oxygen sees a single bond. m = 16×1.66×10−27 = 2.66×10−26 kg. So ω2 = 2.45×1014 rad s−1.
4
a(3) = (1,−2m/M,1):  ω32 = kM+2mmM = (1.6×103) 7.30×10−265.29×10−52 = 2.21×1029 s−2
Asymmetric stretch: the oxygens move together, the carbon recoils oppositely so total momentum stays zero (m·1 + M·(−2m/M) + m·1 = 0). Then ω3 = 4.70×1014 rad s−1.
5
ν̃ = ω/(2πc),  c = 3.0×1010 cm s−1 ⇒  ν̃2 ≈ 1.30×103 cm−1ν̃3 ≈ 2.49×103 cm−1
Convert to spectroscopic wavenumbers — the units an infrared spectrum is read in.
ω1 = 0,  ω2 = 2.45×1014 rad s−1ω3 = 4.70×1014 rad s−1

Answer. The three longitudinal modes are a zero-frequency translation, a symmetric stretch at 2.45×1014 rad s−1 (≈ 1300 cm−1), and an asymmetric stretch at 4.70×1014 rad s−1 (≈ 2490 cm−1) — the right order of magnitude for the real CO2 stretching bands. The asymmetric mode is higher because the light oxygens drive the light-carbon reduced mass; note ω3 depends on M, which is exactly the information that solving with I instead of M would throw away.

Example 2 — The double pendulum in the small-angle limit. Two equal masses m on massless rods of equal length = 0.30 m, hanging in gravity g = 9.81 m s−2. Generalised coordinates are the angles θ1, θ2. Find the normal frequencies and mode shapes. This is the canonical case where M is genuinely non-diagonal.

1
T = ½mℓ2(2θ̇12 + 2θ̇1θ̇2 + θ̇22),  V = ½mgℓ(2θ12 + θ22)
Expand kinetic and potential energy to quadratic order (cos θ → 1 in the cross term, 1−cos θθ2/2 in V).
2
M = mℓ2[[2,1],[1,1]]K = mgℓ[[2,0],[0,1]]
Read the inertia and stiffness matrices off the quadratic forms. The off-diagonal 1 in M is the inertial coupling — the lower bob’s motion carries the upper one.
3
det(Kω2M) = 0,  xω2/g ⇒  x2 − 4x + 2 = 0
The common factor mℓ2 divides out; the determinant (2−2x)(1−x) − x2 collapses to a clean quadratic in the dimensionless x.
4
x = 2 ± √2 ⇒  ω2 = 0.586 g/ = 19.2 s−2ω+2 = 3.414 g/ = 111.6 s−2
With g/ = 9.81/0.30 = 32.7 s−2. So ω = 4.38 rad s−1 and ω+ = 10.6 rad s−1.
5
(2−2x)a1 = xa2 ⇒  a2/a1 = ±√2
Slow mode (x=2−√2): a2/a1 = +√2, both bobs swing the same way, the lower one further. Fast mode (x=2+√2): a2/a1 = −√2, the bobs swing in opposition.
ω = 4.38 rad s−1  (a ∝ (1, +√2)),   ω+ = 10.6 rad s−1  (a ∝ (1, −√2))

Answer. The small double pendulum has an in-phase mode at 4.38 rad s−1 and an out-of-phase mode at 10.6 rad s−1. Had we ignored the inertial coupling and set M = mℓ2I, the characteristic equation would have been x2−3x+2=0 giving x = 1, 2 — both frequencies wrong. The generalised M is doing real work here.

Problems
  1. Two masses, three springs. Equal masses m = 0.40 kg sit between two fixed walls, linked by three identical springs of stiffness k = 25 N m−1. Find the normal-mode frequencies and describe the mode shapes.
    Solution

    Here M = mI and K = [[2k,−k],[−k,2k]]. Because M is a multiple of the identity the generalised problem reduces to an ordinary one: det(K2I) = (2k2)2k2 = 0, so 2 = 2kk. Thus ω12 = k/m with a = (1,1) (in-phase; the central spring never changes length so only the wall springs act) and ω22 = 3k/m with a = (1,−1) (out-of-phase; the central spring is worked hardest). Numerically ω1 = √(25/0.40) = 7.91 rad s−1 and ω2 = √(75/0.40) = 13.7 rad s−1.

  2. A numerical generalised eigenproblem. A two-degree-of-freedom system has M = diag(2,1) kg and K = [[6,−2],[−2,3]] N m−1. Find both frequencies and mode vectors, then verify the two modes are M-orthogonal.
    Solution

    det(Kω2M) = (6−2ω2)(3−ω2) − 4 = 2ω4 − 12ω2 + 14 = 0, i.e. ω4 − 6ω2 + 7 = 0, giving ω2 = 3 ± √2 = 1.586 or 4.414 s−2, so ω = 1.26 and 2.10 rad s−1. For each, the first row (6−2ω2)a1 = 2a2 gives a2/a1 = +√2 for the lower mode and −√2 for the upper. Take a(1) = (1,√2), a(2) = (1,−√2). Then a(1)TMa(2) = 2(1)(1) + 1(√2)(−√2) = 2 − 2 = 0: the modes are orthogonal through M, though their ordinary dot product 1 − 2 = −1 is not zero.

  3. Coupled pendulums and beats. Two identical pendulums ( = 0.50 m, m = 0.20 kg) are joined by a weak spring k = 2.0 N m−1, as in the derivation. (a) Confirm the two mode frequencies. (b) Explain why the symmetric mode is independent of k. (c) If one pendulum is displaced and released, find the period over which the energy sloshes fully to the other and back.
    Solution

    (a) The modes are ω12 = g/ = 19.6 s−2 and ω22 = g/ + 2k/m = 19.6 + 20.0 = 39.6 s−2, so ω1 = 4.43 rad s−1 and ω2 = 6.29 rad s−1. (b) In the symmetric mode a = (1,1) the two bobs move identically, the connecting spring keeps its natural length and exerts no force, so k drops out entirely. (c) A single-pendulum start is an equal superposition of both modes; the two cosines beat at the difference frequency ω2ω1 = 1.87 rad s−1. Energy returns to the original pendulum after the beat period T = 2π/(ω2ω1) = 3.4 s. (A full energy exchange to the neighbour and back is one such period; the one-way transfer takes half of it, 1.7 s.)

  4. Why the frequencies are real. Given only that K and M are real symmetric and that M is positive definite, prove that every root ω2 of ( Kω2M )a = 0 is real, and that eigenvectors belonging to distinct ω2 are M-orthogonal.
    Solution

    Let Ka = λMa with λ = ω2 and a possibly complex. Left-multiply by the conjugate transpose a: λ = (aKa)/(aMa). Both quadratic forms are real (a real symmetric matrix satisfies (aAa)* = aAa), and the denominator is strictly positive because M is positive definite, so λ is real — and non-negative whenever K is positive definite. This ratio is the Rayleigh quotient, whose stationary values are exactly the ωr2. For orthogonality, take two modes Ka(r) = λrMa(r) and Ka(s) = λsMa(s). Form a(s)TKa(r) two ways using symmetry: it equals λra(s)TMa(r) and also λsa(s)TMa(r). Subtracting, (λrλs)a(s)TMa(r) = 0, so for λrλs the modes satisfy a(s)TMa(r) = 0. Equivalently, the substitution a = M−1/2b turns the problem into the ordinary symmetric eigenproblem for M−1/2KM−1/2, and D-018 finishes it.

  5. From modes to phonons: the monatomic chain. An infinite line of equal masses m, spacing a, each joined to its neighbours by springs k. Using the travelling-wave ansatz ηn = Aei(qnaωt), derive the dispersion relation ω(q). Identify the long-wavelength sound speed, the maximum frequency, and the mode at q = 0, and say how this connects to D-003.
    Solution

    Newton’s law for site n is mη̈n = k(ηn+1 − 2ηn + ηn−1). This is the N→∞ version of Mη̈ + Kη = 0 with a circulant K; translational symmetry lets us diagonalise it with the plane-wave ansatz instead of a determinant. Substituting ηn = Aei(qnaωt): −2 = k(eiqa − 2 + eiqa) = 2k(cos qa − 1) = −4k sin2(qa/2). Hence

    ω(q) = 2√(k/m) |sin(qa/2)|.

    For q → 0, sin(qa/2) ≈ qa/2, so ωa√(k/m) q = vsq: the chain carries sound at speed vs = a√(k/m). The spectrum saturates at the Brillouin-zone boundary q = π/a, where ωmax = 2√(k/m). At q = 0 the frequency is zero and every mass moves in unison — the free-translation zero mode of D-003, now appearing as the q=0 limit of an acoustic branch. Quantising each of these travelling modes independently gives phonons, which is precisely the forward link to PU-303.