Getting Through Goode's Systems Method Without Losing Your Mind
I spent three hours last week wrestling with a 3x3 system that looked perfectly fine on paper until I hit the Jordan form section and realized my eigenvectors weren't independent. This is the part of Differential Equations And Linear Algebra Goode that catches everyone out, usually around chapter 7 or 8 depending on which edition you're using. The material itself is solid, but the pacing assumes you've already internalized a lot of linear algebra that the book doesn't always review cleanly. The core approach Goode uses for solving linear systems with constant coefficients relies on finding eigenvalues and eigenvectors of the coefficient matrix. If you have x' = Ax, you look for solutions of the form x = ve^(rt). That gives you the characteristic equation det(A - rI) = 0. Simple enough. The trouble starts when eigenvalues repeat or when they're complex, and that's where most students slide off the rails.
What Actually Works When the Eigenvalues Are Repeated
Here's a specific case I ran into recently. I was working through a problem with a 3x3 matrix where the eigenvalue r = 2 had algebraic multiplicity 3 but geometric multiplicity only 1. The book shows the formula for the generalized eigenvector chain, but it doesn't emphasize enough that you need to solve (A - 2I)v_2 = v_1 and then (A - 2I)v_3 = v_2 in sequence. If you try to jump ahead or compute these out of order, the vectors won't line up and your solution blows up. I spent about forty minutes debugging because I'd swapped v_1 and v_2 in my head somewhere along the way. The general solution in that case looks like x(t) = c_1 e^(2t)v_1 + c_2 e^(2t)(tv_1 + v_2) + c_3 e^(2t)((t^2/2)v_1 + tv_2 + v_3). The t and t^2 terms are what people forget. They think the solution should still be pure exponentials and try to force three independent eigenvectors out of a defective matrix. You can't. You need the polynomial factors in t, and they come directly from the generalized eigenvector chain. One thing Goode doesn't make clear early on: the matrix exponential method e^(At) and the eigenvalue decomposition method produce the same answer, but they have different failure modes. The exponential approach via thePutzer algorithm or series expansion works even when the matrix isn't diagonalizable, but it gets computationally expensive fast. For a 3x3 it's manageable by hand. For anything larger, you're better off sticking with the eigenvalue method and accepting the extra algebra of generalized eigenvectors.
Complex Eigenvalues and the Real Solution Trap
When you get complex eigenvalues a ± bi, Goode shows you how to write the complex solution and then extract the real and imaginary parts. The trick everyone misses is that you don't just take the real part arbitrarily. You need to apply Euler's formula correctly to the entire vector expression, including the eigenvector components. If your eigenvector is [1, i]^T and your eigenvalue is 1 + 2i, the solution is e^t(cos(2t) + i sin(2t))[1, i]^T. Expand that fully before separating real and imaginary parts. The i multiplies everything, and if you drop it during expansion you'll get the wrong coefficient on half your terms. The real-valued general solution becomes x(t) = c_1 e^(at)[cos(bt)Re(v) - sin(bt)Im(v)] + c_2 e^(at)[sin(bt)Re(v) + cos(bt)Im(v)], where v is the eigenvector corresponding to a + bi. That's the formula. Memorize it, but more importantly, understand that Re(v) and Im(v) are just the component-wise real and imaginary parts of the eigenvector. Nothing mystical about it. I've seen students try to skip computing the eigenvector explicitly and just work with the eigenvalue. That doesn't work. The eigenvector determines the phase relationship between the components of x(t). Two systems can have identical eigenvalues but completely different solution trajectories because their eigenvectors point in different directions. Don't conflate the two.
A Practical Note on Computing Eigenvalues by Hand
The characteristic polynomial for a 3x3 matrix can get ugly fast. Sarrus' rule doesn't apply here, and expanding det(A - rI) by cofactors along the first row is usually the fastest manual approach. But if you spot a row or column with a lot of zeros after subtracting rI, expand along that one instead. I once wasted twelve minutes expanding along row 1 when row 3 had two zeros after the substitution, which would have cut the computation in half. It's a small thing, but in an exam setting those minutes add up. For the 4th edition of Goode and Annin, the problem sets are generally well-ordered. Start with the even-numbered problems for practice, then check your work against the odd-numbered answers in the back. The solutions manual covers the standard cases thoroughly. Where it falls short is in explaining why certain edge cases work the way they do, which is why reading the theory sections carefully matters more than just grinding through problems. The book also covers reduction of order and series solutions later on, but by that point the linear algebra machinery should already feel routine. If you're still struggling with eigenvalues and eigenvectors when you hit those chapters, go back and redo the earlier examples. The series solution methods assume you can comfortably manipulate matrices and understand what the eigenvalues are telling you about the system's behavior.