Module 6: Eigenvalues
We know eigenvectors satisfy Av=λv. But how do we find λ? That's what the characteristic polynomial does.
Rewrite the eigenvector equation:
For this to have a non-zero solution v, the matrix (A−λI) must be singular — i.e. its determinant must be zero:
For a 2×2 matrix, expanding this determinant gives a quadratic:
The two solutions are the eigenvalues. The discriminant Δ=tr(A)2−4det(A)tells you whether they're real (Δ ≥ 0) or complex (Δ < 0).
Symmetric matrices (A = Aᵀ) always have real eigenvalues.
Rotation matrices have complex eigenvalues — they rotate every direction so there's no real fixed direction.
Repeated eigenvalue: Δ = 0 means the matrix has one eigenvalue with multiplicity 2.
Edit the matrix on the right. The characteristic polynomial, discriminant, and eigenvalues all update live. Try to make the discriminant negative (complex eigenvalues) and positive (real eigenvalues).
import numpy as np
A = np.array([[3, 1], [1, 3]])
t = np.trace(A) # 6
d = np.linalg.det(A) # 8
# characteristic polynomial: λ² - 6λ + 8 = 0
roots = np.roots([1, -t, d])
print(roots) # [4. 2.]Characteristic polynomial
det(A − λI) = 0
λ² − tr(A)·λ + det(A) = 0
λ² − 6λ + 8 = 0
tr(A) = 6 · · det(A) = 8 · · Δ = 4
Real eigenvalues:
λ₁ = 4
λ₂ = 2
Edit the matrix. Watch how tr(A) and det(A) determine the eigenvalues.