Worked examples — Systems of first-order linear ODEs — matrix method
This is a companion drill page for the parent matrix-method note. The parent showed you the machinery. Here we make sure you have fired that machinery at every kind of situation it can meet — every sign of eigenvalue, every geometry, the degenerate and the disguised.
Before we start, one honest reminder of the vocabulary, in plain words, so nothing below is a symbol you have not been handed:
The scenario matrix
Every system falls into exactly one of the cells below. The eigenvalues decide the geometry — that is the whole classification, and it is the subject of Phase Portraits and Stability.
| Cell | Eigenvalue situation | Geometry of trajectories | Stability |
|---|---|---|---|
| C1 | Real, opposite signs | Saddle | unstable |
| C2 | Real, both | Node, arrows inward | stable |
| C3 | Real, both | Node, arrows outward | unstable |
| C4 | Complex, real part () | Center — closed circles/ellipses | neutral |
| C5 | Complex, real part () | Spiral inward | stable |
| C6 | Complex, real part () | Spiral outward | unstable |
| C7 | Repeated eigenvalue, only one eigenvector (defective) | Improper node (shear) | sign of |
| C7★ | Repeated eigenvalue, two independent eigenvectors | Proper / star node (straight rays) | sign of |
| C8 | One eigenvalue | Line of equilibria (degenerate) | non-isolated |
| C9 | Word problem (mixing tanks) → lands in C2 | physical decay | stable |
| C10 | Exam twist: given a solution, reconstruct | reverse-engineering | — |
We now hit every cell.
Forecast: eigenvalues will come out one positive, one negative → this is a saddle, so the point should escape to infinity along one direction while being pulled toward the origin along another. Guess the escape direction before reading on.
- Characteristic equation. . Why this step? A nonzero eigenvector exists only when is singular, i.e. its determinant vanishes. Opposite signs → saddle, C1. ✓ matches forecast.
- Eigenvector for . , so , giving . Why this step? We solve the singular system for its null direction — the line merely stretches.
- Eigenvector for . , so , giving . Why this step? Same null-direction hunt, now for the second eigenvalue — this gives the other special line, the one along which motion decays.
- General solution + IC. At : . Why this step? Superposition (system is linear) gives the two-parameter family; the two initial numbers pin the constants.
Look at the figure: the direction (red) blows up, the direction (blue) dies — the classic saddle cross.

Verify: ✓. And ✓.
Forecast: if both eigenvalues are negative, everything is dragged to the origin — a stable node. The slower-decaying direction dominates late motion. Guess which one.
- Eigenvalues. Both negative → C2. ✓ Why this step? Same singularity condition; the signs alone already classify the picture.
- Eigenvectors. For : , . For : , . Why this step? Each singular matrix is solved for its null direction — the two lines along which decay is pure.
- Solution + IC. . At : . Why this step? vanishes faster, so for large the trajectory hugs the line — the slow eigendirection wins. Forecast confirmed.
Verify: ✓. As , (stable) ✓.
Forecast: diagonal matrix means the axes are already the eigendirections — no mixing. Both entries positive → outward node. Which axis flees faster?
- Eigenvalues/vectors read off directly. A diagonal has with , and with . Both → C3. Why this step? On a diagonal matrix each coordinate obeys its own scalar ODE — no coupling to untangle.
- Solution. , (IC gives ): Why this step? Each decoupled scalar equation solves to . The -axis (rate 5) outruns the -axis (rate 2).
Verify: ✓. ✓.
Forecast: eigenvalues will be pure imaginary (). No growth, no decay → the point should orbit forever on a closed loop. Guess: circle or ellipse?
- Eigenvalues. . So → center, C4. ✓ Why this step? Euler's Formula turns ; here , so no amplitude change — pure rotation.
- Complex eigenvector for . . Take . Why this step? One complex branch carries both real solutions; splitting separates them cleanly.
- Two real solutions (). Why this step? A complex solution has a real and an imaginary part, and for a real matrix each part is itself a real solution. Expanding via Euler's Formula and reading off the two brackets is exactly the complex-to-real conversion recipe — that is why take this form.
- Apply IC. . At : . This traces a circle of radius 2 — forecast confirmed.

Verify: (constant radius = closed orbit) ✓. ✓.
Forecast: complex eigenvalues with a negative real part → spiral that winds inward to the origin. Guess the winding direction.
- Eigenvalues. . So → stable spiral, C5. ✓ Why this step? makes shrink; makes it rotate. Shrink + rotate = inward spiral.
- Eigenvector for . ; first row: . So , giving . Why this step? We solve the (complex) singular system for its null direction, then split so the real-part/imag-part recipe can build two real solutions.
- Real solutions (). Why this step? Same real-part/imag-part recipe as C4, but now the envelope shrinks the radius each turn.
- Apply IC. .

Verify: — radius shrinks, confirming inward spiral ✓. ✓.
Forecast: same as C5 but the real part is now positive → spiral flies outward. No IC needed; we just classify and give the general solution.
- Eigenvalues. . → unstable spiral, C6. ✓ Why this step? makes grow — the envelope expands as it rotates.
- Eigenvector for . ; second row: . Take , so . Why this step? We solve the singular complex system for its null direction and split , because the real and imaginary parts of the complex branch are precisely what we feed into the two-real-solution recipe.
- General real solution (). Why this step? and ; the front makes both blow up.
Verify: equals the sum of eigenvalues ✓ and equals the product ✓ (trace = sum, det = product of eigenvalues).
Forecast: a repeated eigenvalue with only one eigenvector. The extra solution must carry a factor of . Since , everything still decays — but along a sheared path, not straight.
- Eigenvalue. (double) → C7. Why this step? An upper-triangular matrix has its eigenvalues sitting on the diagonal; here both are , so we must check whether the repeated root has enough eigenvectors.
- Eigenvector. , so . Only one eigenvector → defective. Why this step? We solve the singular system for its null direction; the null space turns out to be one-dimensional, which is exactly the warning sign of a defective (shear) node.
- Generalized eigenvector. Solve : , take . Why this step? The parent note's rule: works exactly when . The supplies the missing degree of freedom.
- General solution + IC. At : .

Verify: ✓. Plug back: , and ✓.
Forecast: here is again doubled, but the matrix is a pure scalar multiple of . Every direction gets stretched by the same factor, so every vector is an eigenvector — trajectories should be perfectly straight rays into the origin, not curved. Contrast this with C7's shear.
- Eigenvalue. (double) → repeated, like C7. Why this step? We must first find the repeated root before we can count how many eigenvectors it carries — the count is what separates C7 from C7★.
- Count eigenvectors. — the zero matrix. Every nonzero vector satisfies , so we have two independent eigenvectors (e.g. ) → not defective → C7★. ✓ Why this step? The number of independent eigenvectors is exactly the dimension of the null space of ; here that null space is all of the plane, so no generalized eigenvector is needed.
- Solution + IC. With two eigenvectors no -factor is needed; the general solution is . IC gives : Why this step? Because , the whole system is just — every component decays at the same rate, so the direction never changes: a straight ray.

Verify: ✓. ✓. Direction is constant for all (straight ray) ✓.
Forecast: if then one eigenvalue is . An eigendirection with means — points there never move. So there is a whole line of equilibria, not just the origin.
- Eigenvalues. . A zero eigenvalue → C8. Why this step? warns us immediately that is singular, so is forced.
- Eigenvectors. For : — a line of rest points. For : , . Why this step? Each eigenvalue's null direction is found the usual way; the direction is special because motion there is frozen ().
- Solution + IC. (the term has , a constant part). At : . Row-solve: . Why this step? The constant part is the frozen contribution from the zero eigenvalue; only the part evolves.
Verify: ✓. And ✓ (frozen direction).
Forecast: physically, salt should redistribute and (since water is flowing out) decay toward zero — expect both eigenvalues negative → stable node (C2).
- Write the matrix. . Why this step? Reading the coupling coefficients off the two rate equations turns words into .
- Eigenvalues. Both negative → C2, stable. ✓ physical sense. Why this step? The signs of the eigenvalues decide whether salt decays or grows; both negative confirms the physical expectation of draining tanks.
- Eigenvectors. For : , . For : , . Why this step? Standard null-direction solve for each eigenvalue, giving the two decay modes.
- Solution + IC. . At : . Why this step? Superposition + the two initial salt amounts fix the mixture.
Verify (units + physics): kg ✓. As , both kg (tanks drain) ✓. Every carries units of kg ✓.
Forecast: the exponents are the eigenvalues, the constant vectors are the eigenvectors. We reverse the diagonalization — see Diagonalization.
- Read off eigenpairs. ; . Why this step? Each basic solution has the form , so the data hands us directly.
- Assemble and . , . Why this step? Put the eigenvectors as the columns of and the eigenvalues on the diagonal of ; this is exactly the recipe .
- Invert . , so . Why this step? needs the inverse to "undo" the change of basis.
- Multiply.
Verify: ✓ and ✓.
Recall Self-test: match each system to its cell
Eigenvalues → which cell? ::: C1 (saddle) Eigenvalues → which cell? ::: C5 (stable spiral, ) Eigenvalues → which cell? ::: C4 (center) Eigenvalue repeated with one eigenvector → which cell? ::: C7 (defective / improper node) (eigenvalue repeated, two eigenvectors) → which cell? ::: C7★ (star / proper node, stable) Eigenvalues and → which cell? ::: C8 (line of equilibria, degenerate)
Related building blocks: Matrix Exponential packages all of this as , and every 2×2 case above is the ODE-mirror of the Second-Order Linear ODEs characteristic-root story.