4.8.20 · D5Numerical Methods
Question bank — Iterative methods — Jacobi, Gauss-Seidel, convergence
Before we start, a one-line refresher of every symbol so nothing here is a mystery:
Recall The objects every question below leans on
- — the linear system we want to solve.
- Splitting with easy to invert.
- The decomposition: = the diagonal of ; = the strictly lower part (so holds the negatives of below-diagonal entries); = the strictly upper part. Thus . Jacobi uses , ; Gauss-Seidel uses , .
- Iteration , where is the iteration matrix and is the fixed constant term (it carries into the loop).
- Error obeys and .
- Spectral radius — biggest absolute eigenvalue of (see Spectral Radius).
- SDD (strictly diagonally dominant): in every row.
- nnz = number of nonzero entries of — for Sparse Matrices this is far below .


True or false — justify
Convergence of from every start requires .
True. Since , the error dies for all exactly when . Diagonalizing gives with , and every iff every , i.e. (figure s01). This is the one non-negotiable law.
If is strictly diagonally dominant, both Jacobi and Gauss-Seidel converge.
True. SDD is a sufficient condition guaranteeing for both methods (the Gershgorin picture, figure s02, shows why), for any starting guess. It is a gift, not a requirement.
If is not diagonally dominant, both methods diverge.
False. SDD is sufficient, not necessary. A non-SDD matrix can still have ; the only honest test is the spectral radius itself.
Gauss-Seidel always converges faster than Jacobi.
False. It is usually faster (fresher data), and for many model problems , but there exist matrices where Jacobi converges while Gauss-Seidel diverges and vice-versa. "Usually," never "always."
The iteration matrix depends on .
False. is built only from 's splitting. The vector only enters the constant term , which affects where you converge, not whether you converge.
A larger (still below 1) means faster convergence.
False. The asymptotic error shrinks by a factor per step, so smaller means faster. crushes the error tenfold each sweep; barely moves it.
If exactly, the iteration still converges, just slowly.
False. At the error component along the dominant eigenvector neither grows nor shrinks — it sits on the unit circle (figure s01) and never reaches the origin. You need strict .
A single sweep of Jacobi and a single sweep of Gauss-Seidel cost roughly the same.
True. Both touch every nonzero of once, so each sweep is . GS's advantage is fewer sweeps, not cheaper sweeps.
Convergence is guaranteed independent of the starting guess when .
True. for any , since . A good guess only reduces the number of steps, not the fate.
If Jacobi diverges for , swapping two rows can make it converge.
True in spirit. Row permutation changes which entries sit on the diagonal, which can turn a non-SDD matrix SDD (parent Example 3). It changes 's splitting, hence , hence .
Spot the error
" has a zero on the diagonal, so I'll just start iterating and hope never matters."
Error. Both formulas divide by ; a zero diagonal entry gives division by zero on step one. Fix: permute rows first to place nonzeros on the diagonal.
"I coded Gauss-Seidel by keeping the full old vector and reading from it for every term."
Error. Reading lower-index terms from the old vector is Jacobi. GS must overwrite in place so later components in the same sweep see the fresh value.
"Jacobi's iteration matrix is ."
Error. That is Gauss-Seidel (recall , ). Jacobi uses , giving . The mix-up swaps which method you're actually running.
"I found one eigenvalue of equal to , so — converges."
Error. is the maximum absolute eigenvalue; one small eigenvalue tells you nothing. Another eigenvalue could be (outside the unit circle). You must bound all of them.
" is SDD, so I'll compute before trusting convergence."
Error (of effort, not logic). SDD already guarantees convergence via Gershgorin — the eigenvalue computation is wasted work. The whole point of the SDD shortcut is to avoid eigenvalues (see Eigenvalues and Eigenvectors).
"To split , I set equal to the lower-triangular entries of directly."
Error. The convention is , so is the strictly lower part; hence holds the negatives of the below-diagonal entries. Getting the sign wrong flips terms in .
"Diagonal dominance with in some row still counts as SDD."
Error. Strict dominance needs a strict inequality in every row. Equality is only "weakly" diagonally dominant (a Gershgorin disk that just touches the origin) and does not by itself guarantee convergence.
Why questions
Why does only , and not or , decide whether we converge?
Because the error recurrence multiplies the error by alone each step; the constant cancels out of the error equation when you subtract the true-solution identity .
Why does (not or trace ) govern convergence?
Diagonalizing gives , and requires each . The determinant (a product) or trace (a sum) can be small even when one eigenvalue exceeds 1, which alone causes divergence.
Why does Gauss-Seidel usually beat Jacobi even though each sweep costs the same?
GS injects freshly-updated components immediately, so information propagates across the vector within a single sweep. This typically lowers below , needing fewer sweeps for the same accuracy.
Why do we iterate at all instead of using Gaussian Elimination?
Elimination costs and destroys sparsity (fill-in). For huge Sparse Matrices each iterative sweep is only , so many cheap steps beat one crushing direct solve.
Why does strict diagonal dominance "feel" like it should force convergence?
If dominates its row, each variable is governed mainly by its own equation, so updating it perturbs the others only weakly — the coupling that could amplify errors is too small to let reach 1. Geometrically, Gershgorin's disks stay small and clear of the unit circle.
Why is the whole framework an instance of Fixed-Point Iteration?
Rewriting as makes the true solution a fixed point ; iterating the map converges when the map is contractive, which for linear maps means .
Why can SOR — Successive Over-Relaxation converge faster than Gauss-Seidel?
SOR blends the GS update with an over-relaxation factor that pushes each step further along its direction, and a well-chosen can shrink below the Gauss-Seidel value, accelerating convergence.
Edge cases
What happens if is not diagonalizable (a defective eigenvalue)?
The clean argument fails, but the theorem still holds: via the Jordan form, where polynomial-in- factors appear but are crushed by when .
What if the matrix is , say ?
, , so and : it "converges" in one step to — provided , which is the trivial edge of the divide-by-diagonal rule.
What if happens to equal the exact solution ?
Then , so for all : you sit exactly on the answer. A stopping test triggers immediately.
What if but some intermediate iterates get larger before shrinking?
Perfectly possible. guarantees eventual decay, but non-normal can cause transient growth in early sweeps; the norm may rise briefly before the asymptotic rate takes over.
What does a stopping rule based on risk when is close to 1?
Consecutive iterates barely move each step, so the difference looks tiny while the true error is still large — you may stop prematurely far from . Checking the residual guards against this.
What if is symmetric positive definite but not SDD?
Gauss-Seidel still converges (SPD is its own sufficient condition), even though the SDD shortcut does not apply. This is a headline example of "SDD fails yet convergence holds."
What happens to Jacobi's parallelism versus Gauss-Seidel's on a huge grid?
Jacobi uses only the old vector, so every computes independently and in parallel; Gauss-Seidel's in-place updates are inherently sequential, trading parallel speed for fewer sweeps — a real design tension in Finite Difference Methods for PDEs.