Diagonalization and normal modes
Decouple linear systems and read independent modes. Theory, formulas, worked examples and interactive graphs.
What it is
Diagonalizing a matrix A means finding a matrix P, made of its eigenvectors as columns, such that P^-1 A P = D, where D is a diagonal matrix with the eigenvalues of A on the diagonal. This operation changes the basis in which the system is described: in the eigenvector basis, the transformation that used to mix all the coordinates now acts independently on each one.
When A describes a coupled physical system, its eigenvectors are precisely the normal modes: specific combinations of the original coordinates that behave as if they were independent variables, each evolving with its own associated eigenvalue without interfering with the others.
Why it appears in physics
It appears because many physical systems of interest (coupled oscillators, vibrating solids, circuits with several elements, multi-level quantum systems) are described by equations where each coordinate depends on all the others. Solving that coupled system directly is complicated, but if the matrix describing it is diagonalized, the problem becomes several independent problems, one per normal mode, each as simple as an isolated oscillator.
It also appears when simplifying the calculation of matrix powers (A^n = P D^n P^-1, much simpler than multiplying A by itself n times) and in solving coupled systems of linear differential equations, where diagonalizing decouples the equations and allows each one to be solved separately.
Visual or geometric idea
The visual idea is this: imagine a rotated, and possibly deformed, coordinate system aligned exactly with the eigen-directions of the matrix. In that special basis, the transformation stops mixing directions: each axis stretches or compresses independently, according to its corresponding eigenvalue. It is like finding the "natural axes" of the problem, the ones in which the physics looks simplest.
In a mass-spring system, each normal mode is a specific way of moving all the masses at once, such that, if the system starts exactly in that configuration, it oscillates at a single frequency without changing shape, even though the amplitude may grow or shrink.
Minimal symbolic language
If A has linearly independent eigenvectors v1, ..., vn with eigenvalues λ1, ..., λn, then P = [v1 | v2 | ... | vn] and D = diag(λ1, ..., λn) satisfy AP = PD, that is, A = P D P^-1. Any vector x can be written in the eigenvector basis as x = c1 v1 + ... + cn vn, and the action of A on x reduces to Ax = c1 λ1 v1 + ... + cn λn vn.
For a system of linear differential equations dx/dt = Ax, changing to the eigenvector basis separates the system into n independent equations dy_i/dt = λ_i y_i, each with exponential solution y_i(t) = y_i(0) e^(λ_i t).
What the result means
The result means that the complete and apparently complicated behavior of the coupled system can be written as a superposition of simple independent behaviors: each normal mode evolves at its own rate, set by its eigenvalue, without exchanging energy or information with the other modes as long as the system remains linear.
Physically, any initial state of the system can be decomposed into a combination of normal modes, and the full time evolution is obtained by evolving each mode separately and adding up the result at the end, back in the original basis.
When not to use it
Do not try to diagonalize a matrix that does not have enough independent eigenvectors (defective matrices): in that case, simple diagonalization does not exist and the Jordan canonical form is needed, which includes non-diagonal blocks.
It also makes no sense to look for normal modes if the system is nonlinear: the superposition of independent modes only works because the equation is linear, and once quadratic or higher-order terms appear, the modes stop evolving independently and start exchanging energy with each other.
Operational summary
Find the eigenvalues and eigenvectors of the matrix describing the coupled system, build the change-of-basis matrix P from those eigenvectors, and use the relation A = P D P^-1 to turn the original problem into a set of independent problems in the normal-mode basis. Solve each mode separately and, if needed, transform the result back to the original coordinates.
Procedure
Before calculating
First check that the matrix has enough linearly independent eigenvectors to be diagonalized: if it is symmetric, this is guaranteed; if it is not, check the multiplicity of each eigenvalue before proceeding.
Also decide whether the final goal is to simplify a calculation (matrix powers), solve a system of differential equations, or interpret the normal modes of a coupled physical system, since this guides how to interpret the final result.
Step 1: identify the mathematical object
The central object is the change-of-basis matrix P, made of the eigenvectors as columns, and the diagonal matrix D made of the eigenvalues in the same order. Before building them, make sure all eigenvalues and their associated eigenvectors have already been calculated.
Order the eigenvalues consistently: position i on the diagonal of D must correspond exactly to column i of P.
Step 2: choose the operation
If the goal is to diagonalize, build P and D, and check the relation AP = PD before inverting P. If the goal is to solve a system dx/dt = Ax, change variables to y = P^-1 x, solve each independent equation dy_i/dt = λ_i y_i, and then undo the change with x = Py.
If the goal is to calculate a power A^n, use A^n = P D^n P^-1, calculating D^n simply by raising each eigenvalue to the power n, much simpler than multiplying A repeatedly.
Step 3: preserve units and signs
Keep the exact correspondence between each column of P and its corresponding eigenvalue in D: swapping the order in one without changing it in the other invalidates the entire downstream calculation.
If the eigenvectors represent physical quantities with units, check that matrix P mixes those units correctly and that the final result, after undoing the change of basis, recovers the expected units.
Step 4: calculate
Calculate P^-1 explicitly if you need to express a vector in the normal-mode basis; if the matrix is symmetric, take advantage of the fact that P can be chosen orthogonal, so that P^-1 = P^T, which greatly simplifies the calculation.
Solve the decoupled system in the eigenvector basis, one mode at a time, before recombining the result in the original basis.
Step 5: interpret the result
Interpret each component in the eigenvector basis as the amplitude of an independent normal mode. A positive real eigenvalue indicates exponential growth of that mode, a negative one indicates decay, and a complex one indicates oscillation combined with growth or decay depending on its real part.
When returning to the original basis, describe the state of the system as a superposition of those modes, stating what fraction of each mode is present in the given initial state.
Self-check checklist
Check that the correspondence between the columns of P and the entries of D is correct, that AP = PD holds, that the number of independent eigenvectors matches the size of the matrix, and that you can describe in words what each obtained normal mode represents physically.
Guided example
Physical situation
A system of two equal masses connected by springs has coupling matrix A = [[2, −1], [−1, 2]] (see the eigenvalues and eigenvectors leaf for the detailed calculation). Its eigenvalues are known to be λ1 = 1, λ2 = 3 with eigenvectors v1 = (1, 1), v2 = (1, −1). The task is to describe the full evolution of the system from an arbitrary initial condition.
Mathematical translation
Diagonalizing A allows any initial state x(0) to be written as a combination of the normal modes: x(0) = c1 v1 + c2 v2. Each mode evolves independently according to its own eigenvalue, and the full solution is the superposition of both.
Step-by-step calculation
If the initial condition is x(0) = (2, 0), solving c1 (1,1) + c2 (1,−1) = (2, 0) gives c1 = 1, c2 = 1. Each mode oscillates at a frequency proportional to the square root of its eigenvalue: mode v1 with frequency proportional to √1 and mode v2 with frequency proportional to √3. The full solution is x(t) = 1·v1·cos(√1 t) + 1·v2·cos(√3 t) (assuming zero initial velocity).
Reading the result
The initial state (2, 0), which is neither purely symmetric nor purely antisymmetric, decomposes into equal parts of both normal modes. Over time, both modes oscillate at different frequencies, so the combined motion loses a fixed shape and becomes a changing combination of both patterns.
Common error avoided
This avoids trying to solve the two coupled equations directly without changing basis, which would require handling both coordinates simultaneously at every step. By diagonalizing, each mode is solved as an independent simple oscillator.
Inverse example
Given result
A system has a single excited normal mode, with negative eigenvalue λ = −2.
What physical question it can answer
A negative eigenvalue in this context (for a first-order time-evolution equation) indicates that mode decays exponentially with time, not that it oscillates. This allows one to anticipate that, regardless of that mode's initial amplitude, its contribution to the state of the system disappears in the long run, leaving the modes with slower decay or positive eigenvalues, if any, to dominate.
Common errors
Error 1: mismatching the correspondence between the columns of P and the entries of D
It seems reasonable to write eigenvalues and eigenvectors in any order, as long as they are all present. It fails because column i of P must correspond exactly to the eigenvalue at position i of D; swapping the order in one without the other produces a matrix that does not satisfy AP = PD. Detect it by checking that equality directly. Correct it by explicitly pairing each eigenvector with its eigenvalue before building the matrices. Mini-example: if λ1 = 1 with v1 and λ2 = 3 with v2, writing P = [v2 | v1] also requires D = diag(3, 1), not diag(1, 3).
Error 2: assuming every coupled system has simple normal modes
It seems reasonable to expect any linear system to diagonalize without trouble. It fails if the matrix is defective, that is, if it does not have as many independent eigenvectors as its size. Detect it by counting the obtained eigenvectors and comparing them with the size of the matrix. Correct it by recognizing that such cases need a different treatment (Jordan form) instead of forcing a diagonalization that does not exist. Mini-example: a matrix with a double eigenvalue may have only one independent eigenvector, not two.
Error 3: superposing modes as if the system were nonlinear
It seems reasonable to apply the same normal-mode superposition to any system. It fails if the system has nonlinear terms, where modes stop evolving independently and start exchanging energy with each other. Detect it by checking whether the system's equations are truly linear in the coordinates used. Correct it by explicitly linearizing before diagonalizing, and stating the validity range of that approximation. Mini-example: a double pendulum with large oscillations does not have exact normal modes, only approximate ones for small amplitudes.
Error 4: forgetting to undo the change of basis at the end
It seems reasonable to leave the solution expressed in the eigenvector basis. It fails because the original physical problem is usually posed in the original coordinates, and the result in the normal-mode basis does not always have a direct component-by-component physical interpretation. Detect it by asking whether the final result answers the original question of the problem. Correct it by applying x = Py to return to physical coordinates before giving the answer. Mini-example: the amplitude of a normal mode is not directly the position of a specific mass, but a combination of several.
Error 5: confusing complex eigenvalues with a calculation error
It seems reasonable to think a complex eigenvalue indicates a mistake in the setup. It fails because in systems with rotation or oscillation, complex eigenvalues are physically expected and describe oscillatory behavior, not an error. Detect it by checking whether the system's matrix is symmetric (which guarantees real eigenvalues) or not. Correct it by interpreting the real part as growth or decay and the imaginary part as frequency, instead of dismissing the result. Mini-example: a damped, oscillating system has complex eigenvalues with negative real part, which describes decaying oscillation.
Quick detection rule
If AP does not exactly match PD, if fewer independent eigenvectors are counted than the matrix has dimensions, or if the change of basis is forgotten before interpreting the result physically, the error is probably in the setup of the diagonalization, not in the final arithmetic.
Physical applications
1. Coupled oscillators and molecules
It appears when describing the vibrations of a set of connected masses or of the atoms in a molecule. The coupling matrix is diagonalized to find the normal vibration modes. The result gives the natural frequencies and independent vibration shapes. The dangerous error is trying to excite a normal mode while ignoring that in practice an arbitrary initial state contains a mixture of several modes. As a final control, the learner must explain into which combination of modes a given initial state decomposes.
2. Solid vibrations and crystal lattices
It appears when studying how a lattice of atoms vibrates in a solid. The matrix describing forces between neighboring atoms is diagonalized. The result gives the normal modes of the lattice, related to phonons in the quantum description. The dangerous error is treating each atom in isolation, ignoring that its motion is coupled to its neighbors. As a final control, the learner must explain why the frequency of each mode depends on its associated wavelength.
3. Multi-level quantum systems
It appears when diagonalizing the Hamiltonian operator of a system described by a finite matrix. The result gives the possible energy levels (eigenvalues) and the associated eigenstates (eigenvectors). The dangerous error is forgetting that a general quantum state is a superposition of eigenstates, not a single eigenstate. As a final control, the learner must explain what it means to measure the energy of a system that is in a superposition of eigenstates.
4. Stability of equilibrium points
It appears when linearizing a dynamical system near an equilibrium point and diagonalizing the resulting Jacobian matrix. The result classifies the equilibrium as stable, unstable, or mixed depending on the sign of the eigenvalues. The dangerous error is ignoring a small positive eigenvalue, assuming its effect is negligible in the short term. As a final control, the learner must explain what happens to a perturbation along each normal mode of the linearized system.
5. Coupled electric circuits
It appears when describing several loops of a circuit connected to each other through mutual inductances or capacitances. The coupling matrix is diagonalized to find the independent oscillation modes of current or charge. The result simplifies the analysis of the circuit's transient response. The dangerous error is analyzing each loop separately without considering mutual coupling with the others. As a final control, the learner must explain how the frequency of each normal mode relates to the circuit's inductance and capacitance values.
Practice
Level 1: recognition
Identify, given a matrix with its eigenvalues and eigenvectors already calculated, what the columns of P and the entries of D would be before explicitly building them.
Exercise: for a 2×2 matrix with eigenvalues 2 and 5 and their corresponding eigenvectors, write P and D respecting the correct correspondence.
Level 2: direct application
Build P and D for a simple matrix and verify that AP = PD by direct substitution.
Exercise: diagonalize the matrix of a two-mass coupled system and check the result with the verification AP = PD.
Level 3: choosing the tool
Decide whether the problem requires diagonalizing to solve a system of differential equations, to calculate a matrix power, or to interpret physical normal modes, and adapt the procedure to that goal.
Exercise: outline how you would use diagonalization to calculate A^10 without multiplying the matrix ten times.
Level 4: physical interpretation
Interpret a given initial condition as a combination of normal modes and describe how each mode evolves separately.
Exercise: given an initial state of a two-mass coupled system, decompose it into the two known normal modes and describe the evolution of each.
Level 5: intentional error
Analyze a calculation where the correspondence between eigenvalues and eigenvectors was scrambled when building P and D, or where undoing the change of basis was forgotten. Detect the error, correct it, and explain the physical consequence.
Exercise: invent a plausible error when pairing eigenvalues with eigenvectors, show why it seems reasonable, correct it, and state what incorrect result it would have produced.