JOVANA
Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

Repeated Eigenvalues and Generalized Eigenvectors

Sometimes a 2x2 system has a double eigenvalue but only one eigenvector — the recipe seems to run out of solutions. This guide shows the elegant rescue: a generalized eigenvector that supplies the missing direction, and the t-times-a-vector term that completes the picture.

When the Recipe Runs Out of Eigenvectors

By now the eigenvalue method has felt almost mechanical. Turn the equation into the system x' = A x, find the eigenvalues of A, attach an eigenvector to each, and read off the general solution. Guide 3 handled real distinct eigenvalues (two clean straight-line solutions) and guide 4 handled complex eigenvalues (rotation, built from a conjugate pair). For a 2x2 system you expected two eigenvalues and two independent eigenvectors — exactly enough to span the plane. This guide is about the case where that bookkeeping quietly fails.

Here is the trouble in one breath. The characteristic equation det(A - lambda I) = 0 can have a repeated root — say a double eigenvalue lambda. Algebra says lambda "appears twice," so you expect two eigenvectors. But when you solve (A - lambda I) v = 0 you may find only a *single* independent eigenvector, not two. The matrix is then called defective: its eigenvalue problem gives fewer eigenvectors than the algebraic multiplicity demands. With only one eigenvector v, you can write only one solution e^(lambda t) v — and one solution is not enough to span a two-dimensional fundamental set of vector solutions.

The Missing Solution: Why t Has to Appear

Where does the second solution come from? Lean on an analogy you already trust. Back in the constant-coefficient *scalar* rung, when the repeated root case gave a double root r, the two solutions were e^(rt) and t e^(rt) — the extra factor of t patched the gap. The same instinct works here, but you cannot simply multiply by t and stop. Try the naive guess x = t e^(lambda t) v. Plug it into x' = A x and the two sides disagree: the left produces an extra e^(lambda t) v term that the right has no way to match. So a bare t e^(lambda t) v is *not* a solution.

The fix is to *add a constant vector* to absorb that leftover term. Try the corrected form x = e^(lambda t)(t v + w), where v is the one eigenvector you have and w is a new, unknown vector. Differentiate and substitute into x' = A x. After the e^(lambda t) cancels, the t-terms automatically balance (because A v = lambda v), and what remains is a clean requirement on w alone. That requirement is the heart of this whole guide: (A - lambda I) w = v.

try   x = e^(lambda t) ( t v + w )

      x' = e^(lambda t) [ lambda(t v + w) + v ]
  A x   = e^(lambda t) [ t (A v) + A w ]

  match, using A v = lambda v :
      lambda w + v  =  A w
  ------------------------------------
  (A - lambda I) w = v        <- solve for w
The constant vector w must satisfy (A - lambda I) w = v — that is the equation defining a generalized eigenvector.

Meet the Generalized Eigenvector

A vector w solving (A - lambda I) w = v is called a [[ode-generalized-eigenvector|generalized eigenvector]]. Compare the two equations side by side: an ordinary eigenvector satisfies (A - lambda I) v = 0, while the generalized eigenvector satisfies (A - lambda I) w = v — the right-hand side is the eigenvector instead of zero. You can think of it as one rung up a short ladder: v is killed in one application of (A - lambda I); w is killed in *two*, since (A - lambda I)^2 w = (A - lambda I) v = 0. That chain v <- w is exactly the structure the defective case was hiding.

Two honest cautions make this practical. First, w is not unique — if w works, so does w + (any multiple of v), because (A - lambda I) applied to a multiple of v gives zero. That freedom is harmless; any valid w produces a correct second solution, and the spare multiple of v just folds into the C1 e^(lambda t) v term you already have. Second, the system (A - lambda I) w = v *is* solvable precisely because lambda is a defective eigenvalue; do not panic when Gaussian elimination leaves a free variable — that free variable is the multiple-of-v freedom, not a contradiction.

A Worked 2x2 System, Start to Finish

Take the matrix A = [3, 1; 0, 3] (rows separated by a semicolon). Its characteristic equation is (3 - lambda)^2 = 0, a textbook [[repeated-eigenvalues-case|repeated eigenvalue]] lambda = 3 with algebraic multiplicity two. Now hunt for eigenvectors and watch the defect appear: A - 3I = [0, 1; 0, 0], so (A - 3I) v = 0 forces the second component of v to be zero. Every eigenvector is a multiple of v = (1, 0) — there is only *one* direction, confirming the matrix is defective.

  1. Eigenvalue and eigenvector: lambda = 3 (double), and (A - 3I) v = 0 gives the single eigenvector v = (1, 0).
  2. Solve for the generalized eigenvector: (A - 3I) w = v means [0, 1; 0, 0] w = (1, 0), so the second component of w is 1. Pick w = (0, 1) (any first component works — that is the multiple-of-v freedom).
  3. Assemble the two solutions: x1 = e^(3t)(1, 0) and x2 = e^(3t)[ t(1, 0) + (0, 1) ] = e^(3t)(t, 1).
  4. Write the general solution: x = C1 e^(3t)(1, 0) + C2 e^(3t)(t, 1). You can verify by substitution that both pieces satisfy x' = A x.

What does this look like in the phase plane? Because there is only one eigenvector direction, only one line through the origin is invariant — trajectories cannot fan out along two straight lines as they did in the distinct-real case. Instead every path comes in (or goes out) tangent to that single direction, curving as the t v term grows. This portrait is the improper node (also called a degenerate node): all trajectories share one tangent line at the origin. Here lambda = 3 > 0, so it is an unstable improper node; a negative repeated eigenvalue gives the same shape run backwards, a stable improper node.

The Deeper Picture: Jordan Form and the Matrix Exponential

Why must defective systems exist at all? Because not every matrix can be diagonalized. The distinct-eigenvalue and complex cases worked so smoothly because A could be written as a diagonal matrix in an eigenvector basis. A defective matrix refuses — the best you can do is the [[jordan-form-method|Jordan form]], which puts a 1 just above the diagonal in a block like [lambda, 1; 0, lambda]. That stubborn off-diagonal 1 is precisely the chain (A - lambda I) w = v in disguise, and it is exactly what forces the t into the solution. So the repeated-eigenvalue recipe is not a special trick bolted on; it is what the eigenvalue method *becomes* when diagonalization is impossible.

There is a single unifying object that ties together all three cases of this rung: the [[ode-matrix-exponential|matrix exponential]] e^(At), the solution to x' = A x with x(0) the initial vector via x(t) = e^(At) x(0). For a diagonalizable A it is built from plain e^(lambda t) factors. For a defective Jordan block, the series for e^(At) produces a *polynomial in t* multiplying e^(lambda t) — and that polynomial is exactly where your t v term comes from. The same e^(At) gives e^(lambda t) for distinct roots, rotations for complex roots, and the t-terms for repeated roots; the three cases are one formula seen through three kinds of eigenvalue.

A final honest note on scope. For a 3x3 or larger defective matrix the chain can grow longer: you might need w with (A - lambda I) w = v and then u with (A - lambda I) u = w, producing solution pieces that carry t^2/2 as well as t. The principle never changes — keep climbing the generalized-eigenvector ladder until you have enough independent vectors to span the space — but the algebra grows, which is one more reason the matrix exponential and computational tools become the practical method for big systems rather than hand-solving every chain.