Gauss-Seidel is an iterative method for solving Systems of Linear Equations – use initial guesses and then converge on a solution. This is better for large numbers of equation. Furthermore, the effects of round-off error are reduced as it is only associated with the current iteration and does not accumulate over the solutions steps.

Method

Let’s use the system:

  1. Initial values
    • Guess initial values for the unknowns (), such as:
  1. Solve for values
    • Express equations in an explicit form by isolating each variable.
  1. Solve for new values using values from the previous steps.

  2. Repeat until the convergence criterion is met. this is basically just .

Notes

  • Diagonal terms must not be to avoid division by zero
    • Apply pivoting if required to move equations and avoid division by zero
  • Convergence is not guaranteed in all cases.

Example

Let’s say we have the system:

Guess initial values:

Rearranging (refer to equations (6), (7), (8)) to get:

Then, the first iteration is:

Note here that is immediately using the calculated value, not using the old value of .

Full iterations: