Gauss Seidel
Gauss Seidel
1
Gauss-Seidel Method
An iterative method.
Basic Procedure:
-Algebraically solve each linear equation for xi
-Assume an initial guess solution array
-Solve for each xi and repeat
-Use absolute relative approximate error after each iteration
to check if error is within a pre-specified tolerance.
2
Gauss-Seidel Method
Why?
The Gauss-Seidel Method allows the user to control round-off error.
3
Gauss-Seidel Method
Algorithm
A set of n equations and n unknowns:
If: the diagonal elements are
a11 x1 a12 x2 a13 x3 ... a1n xn b1 non-zero
a21 x1 a22 x2 a23 x3 ... a2n xn b2 Rewrite each equation solving
. .
. . for the corresponding unknown
. .
ex:
an1 x1 an 2 x2 an 3 x3 ... ann xn bn
First equation, solve for x1
Second equation, solve for x2
4
Gauss-Seidel Method
Algorithm
Rewriting each equation
c a12 x 2 a13 x3 a1n x n From Equation 1
x1 1
a11
c2 a21 x1 a23 x3 a2 n xn
x2 From equation 2
a22
cn 1 an 1,1 x1 an 1, 2 x2 an 1,n 2 xn 2 an 1,n xn From equation n-1
xn 1
an 1,n 1
cn an1 x1 an 2 x2 an ,n 1 xn 1 From equation n
xn
ann
5
Gauss-Seidel Method
Algorithm
General Form of each equation
n n
c1 a 1j xj cn 1 a
j 1
n 1, j xj
j 1
j n 1
x1
j 1 xn 1
a11 an 1,n 1
n
c2
n
a2 j x j cn a j 1
nj xj
j 1
j n
x2
j 2
xn
a 22 a nn
6
Gauss-Seidel Method
Algorithm
General Form for any row ‘i’
n
ci a
j 1
ij xj
j i
xi , i 1,2, , n.
aii
7
Gauss-Seidel Method
Solve for the unknowns
8
Gauss-Seidel Method
Calculate the Absolute Relative Approximate Error
x inew x iold
a i
new
100
xi
9
Gauss-Seidel Method: Example 1
The upward velocity of a rocket
is given at three different times
Time, t Velocity, v
s m/s
5 106.8
8 177.2
12 279.2
10
Gauss-Seidel Method: Example 1
t12 t1 1 a1 v1
2
Using a Matrix template of the form
t2 t 2 1 a2 v2
t32 t3 1 a3 v3
25 5 1 a1 106.8
64 8 1 a 177.2
The system of equations becomes 2
144 12 1 a3 279.2
a1 1
a 2
Initial Guess: Assume an initial guess of
2
a3 5
11
Gauss-Seidel Method: Example 1
12
Gauss-Seidel Method: Example 1
Applying the initial guess and solving for ai
When solving for a2, how many of the initial guess values were used?
13
Gauss-Seidel Method: Example 1
Finding the absolute relative approximate error
155.36 5.0000
a 3 x100 103.22%
155.36
14
Gauss-Seidel Method: Example 1
Iteration #2
Using
a1 3.6720 the values of ai are found:
a 7.8510 106.8 5 7.8510 155.36
2 a1 12.056
a3 155.36 25
from iteration #1
177.2 6412.056 155.36
a2 54.882
8
15
Gauss-Seidel Method: Example 1
Finding the absolute relative approximate error
16
Gauss-Seidel Method: Example 1
Repeating more iterations, the following values are obtained
Iteration
a1 a 1 % a2 a 2 % a3 a 3 %
1 3.672 72.767 -7.8510 125.47 -155.36 103.22
2 12.056 67.542 -54.882 85.695 -798.34 80.540
3 47.182 74.448 -255.51 78.521 -3448.9 76.852
4 193.33 75.595 -1093.4 76.632 -14440 76.116
5 800.53 75.850 -4577.2 76.112 -60072 75.962
6 3322.6 75.907 -19049 75.971 -249580 75.931
! Notice – The relative errors are not decreasing at any significant rate
a1 0.29048
Also, the solution is not converging to the true solution of a 19.690
2
a3 1.0858
17
Gauss-Seidel Method: Pitfall
What went wrong?
Even though done correctly, the answer is not converging to the
correct answer
This example illustrates a pitfall of the Gauss-Siedel method: not all
systems of equations will converge.
Is there a fix?
One class of system of equations always converges: One with a diagonally
dominant coefficient matrix.
19
Gauss-Seidel Method: Example 2
20
Gauss-Seidel Method: Example 2
Checking if the coefficient matrix is diagonally dominant
The inequalities are all true and at least one row is strictly greater than:
Therefore: The solution should converge using the Gauss-Siedel Method
21
Gauss-Seidel Method: Example 2
1 3 x 2 5 x3 1 30 51
x1 x1 0.50000
12 12
28 x1 3 x3 28 0.5 31
x2 x2 4.9000
5 5
76 3 x1 7 x 2
x3 76 30.50000 74.9000
13 x3 3.0923
13
22
Gauss-Seidel Method: Example 2
The absolute relative approximate error
0.50000 1.0000
a 1 100 67.662%
0.50000
4.9000 0
a 2
100 100.00%
4.9000
3.0923 1.0000
a 3
100 67.662%
3.0923
The maximum absolute relative error after the first iteration is 100%
23
Gauss-Seidel Method: Example 2
After Iteration #1
x1 0.5000
x 4.9000
2
x3 3.0923
Substituting the x values into the equations After Iteration #2
1 34.9000 53.0923 x1 0.14679
x1 0.14679 x 3.7153
12 2
x3 3.8118
28 0.14679 33.0923
x2 3.7153
5
76 30.14679 74.900
x3 3.8118
13
24
Gauss-Seidel Method: Example 2
Iteration #2 absolute relative approximate error
0.14679 0.50000
a 1 100 240.62%
0.14679
3.7153 4.9000
a 2 100 31.887%
3.7153
3.8118 3.0923
a 3 100 18.876%
3.8118
The maximum absolute relative error after the first iteration is 240.62%
This is much larger than the maximum absolute relative error obtained in
iteration #1. Is this a problem?
25
Gauss-Seidel Method: Example 2
Repeating more iterations, the following values are obtained
Iteration a1 a2 a3
a 1 a a
2 3
x1 0.99919
The solution obtained
x
2 3.0001
x3 4.0001
x1 1
x 3
is close to the exact solution of 2
x3 4 26
Gauss-Seidel Method: Example 3
Given the system of equations Rewriting the equations
3x1 7x2 13x3 76
76 7 x2 13 x3
x1 5x2 3x3 28 x1
3
12x1 3x2 - 5x3 1
28 x1 3 x3
With an initial guess of
x2
5
x1 1
x 0 1 12 x1 3 x 2
2
x3 1 x3
5
27
Gauss-Seidel Method: Example 3
Conducting six iterations
Iteration a1 a a2 a a3 a
1 2 3
28
Gauss-Seidel Method
The Gauss-Seidel Method can still be used
3 7 13
The coefficient matrix is not
diagonally dominant
A 1 5 3
12 3 5
29
Gauss-Seidel Method
Not every system of equations can be rearranged to have a
diagonally dominant coefficient matrix.
x1 x 2 x3 3
2 x1 3 x2 4 x3 9
x1 7 x 2 x3 9
second iteration
32
Gauss-Seidel Method
Summary
33