Eigenvalue & Eigenvector Calculator
Eigenvalues, eigenvectors, characteristic polynomial, and diagonalisation for 2×2 to 6×6 matrices. Complex eigenvalues fully supported for 2×2; real eigenvalues via QR iteration for 3×3 to 6×6.
Characteristic Polynomial det(A − λI) = 0:
λ² − 7.00λ + 10.00 = 0
Eigenvalues:
λ1 = 5.0000
λ2 = 2.0000
Eigenvectors (normalised):
v1 = [0.707, 0.707]
v2 = [-0.447, 0.894]
Need symbolic eigenvalues, Jordan form, complex eigenvalues for large matrices, or Aᵏ? Continue in CAS workspace →
What This Calculator Does
The eigenvalue and eigenvector calculator solves Av = λv for real square matrices from 2×2 up to 6×6. For 2×2 matrices it uses the exact analytic quadratic formula and fully supports complex (conjugate-pair) eigenvalues. For 3×3, it extracts the cubic characteristic polynomial and locates real roots by bisection. For 4×4, 5×5, and 6×6 matrices it applies QR iteration with Wilkinson shift — the same algorithm used by production numerical libraries — to converge on real eigenvalues, then solves (A − λᵢI)v = 0 by Gaussian elimination to produce each normalised eigenvector.
The calculator checks diagonalisability (distinct eigenvalues are sufficient) and displays the eigenvector matrix P and diagonal matrix D such that A = PDP⁻¹, enabling fast matrix powers Aᵏ = PDᵏP⁻¹.
Formula & Method
Characteristic polynomial det(A − λI) = 0
For a 2×2 matrix this gives the quadratic:
λ² − tr(A)·λ + det(A) = 0
where tr(A) = a₁₁ + a₂₂ and det(A) = a₁₁a₂₂ − a₁₂a₂₁.
Discriminant: Δ = tr(A)² − 4·det(A)
- Δ > 0: two distinct real eigenvalues
- Δ = 0: one repeated real eigenvalue
- Δ < 0: complex conjugate pair λ = α ± βi
Eigenvector equation (A − λᵢI)v = 0
For each eigenvalue λᵢ, row-reduce the augmented matrix of (A − λᵢI) by Gaussian elimination. The null-space vector of (A − λᵢI) is the eigenvector — choose the free variable to be 1 and back-substitute.
QR iteration for 4×4–6×6 (Wilkinson shift)
Each iteration computes A − μI = QR (Gram-Schmidt), then updates A ← RQ + μI, where μ = A[n−1][n−1] is the Wilkinson shift. After enough iterations the diagonal entries converge to the eigenvalues. This is the standard algorithm behind LAPACK's dgeev and NumPy's eig.
Diagonalisation A = PDP⁻¹
If A has n linearly independent eigenvectors v₁, …, vₙ, form P with those columns. D = diag(λ₁, …, λₙ). Then Aᵏ = PDᵏP⁻¹, reducing matrix powers to scalar exponentiation.
Spectral identities (sanity checks)
tr(A) = λ₁ + λ₂ + … + λₙ
det(A) = λ₁ · λ₂ · … · λₙ
The calculator displays the trace check for all matrix sizes so you can verify convergence instantly.
Worked Examples
Example 1 — 2×2, two real eigenvalues
A = [[4, 1], [2, 3]]
Characteristic polynomial: λ² − 7λ + 10 = 0
Roots: λ = (7 ± 3) / 2 → λ₁ = 5, λ₂ = 2
v₁ = [1, 1] (normalised), v₂ = [1, −2] (normalised)
Verify: tr = 5+2 = 7 ✓, det = 5×2 = 10 ✓
Example 2 — 2×2, complex eigenvalues (rotation matrix)
A = [[0, −1], [1, 0]] (90° rotation)
Characteristic polynomial: λ² + 1 = 0, Δ = −4 < 0
Eigenvalues: λ = ±i (purely imaginary — no real fixed directions)
Example 3 — 3×3, symmetric matrix
A = [[2, 1, 0], [1, 3, 1], [0, 1, 2]]
Roots of cubic characteristic polynomial: λ₁ ≈ 1, λ₂ ≈ 2, λ₃ ≈ 4
Symmetric matrices always have real eigenvalues and orthogonal eigenvectors (Spectral Theorem).
Example 4 — 5×5 upper-triangular (QR iteration)
A = diag(11, 7, 5, 3, 2) — eigenvalues are the diagonal entries
QR iteration with Wilkinson shift: λ₁=11, λ₂=7, λ₃=5, λ₄=3, λ₅=2
Trace check: 11+7+5+3+2 = 28 = tr(A) ✓. det check: 11×7×5×3×2 = 2,310 ✓
Use the 5×5 preset above — the default matrix is exactly this diagonal example.
Example 5 — 4×4, tridiagonal symmetric matrix
A = [[5, 2, 0, 0], [2, 4, 1, 0], [0, 1, 3, 1], [0, 0, 1, 2]]
All eigenvalues are real (symmetric). QR iteration converges quickly for tridiagonal structure.
Expected eigenvalues ≈ 6.56, 4.38, 2.62, 0.44 (all real and distinct → diagonalisable).
Frequently Asked Questions
- What is an eigenvalue?
- An eigenvalue λ is a scalar such that Av = λv for some non-zero vector v. Geometrically, v is a direction the linear transformation A only stretches (by λ), never rotates.
- What is a 4×4 eigenvalue calculator used for?
- 4×4 eigenvalue problems appear in structural vibration analysis (mode shapes of 4-degree-of-freedom systems), quantum mechanics (4-state systems), control theory (4th-order systems), and principal component analysis (4-feature datasets). The same QR algorithm used here is the core of MATLAB's
eigand NumPy'slinalg.eig. - How do I find the eigenvalues of a 5×5 matrix?
- Select the 5×5 option, enter your matrix entries, and the calculator applies QR iteration with Wilkinson shift. The diagonal of the converged quasi-upper-triangular matrix gives the eigenvalues. For the 5×5 case there is no closed-form formula (Abel–Ruffini theorem: degree 5 polynomials have no general radical solution), so numerical iteration is the standard approach.
- Can this calculator find 6×6 eigenvalues?
- Yes. Select the 6×6 option. The QR iteration algorithm works for any size; the implementation here is validated against NumPy
eigfor real-distinct, repeated, symmetric, and upper-triangular test cases. Complex eigenvalues in 4×4–6×6 matrices require a more specialised treatment — use the CAS workspace for those. - What does it mean for a matrix to be diagonalisable?
- A n×n matrix is diagonalisable if it has n linearly independent eigenvectors. Sufficient conditions: all eigenvalues are distinct, or the matrix is symmetric. Diagonalisability enables A = PDP⁻¹ and makes computing Aᵏ, e^A, and solving ODE systems trivial.
- When should I use the CAS workspace instead?
- Use the CAS workspace when you need symbolic eigenvalues (exact radical or algebraic expressions), Jordan normal form, complex eigenvalues for matrices larger than 2×2, or matrix exponential e^A.