chapter 3 numerical solution of linear equations lecture 2

30
Chapter 3 Numerical Solution of Linear Equations Lecture 2

Upload: elaina-tuton

Post on 01-Apr-2015

229 views

Category:

Documents


0 download

TRANSCRIPT

  • Slide 1

Chapter 3 Numerical Solution of Linear Equations Lecture 2 Slide 2 In matrixvector notation Linear System of Equations Slide 3 Numerical methods for the solution of the systems of linear equations Direct Methods Cramer rule Gauss elimination Iterative Methods Jacobi Gauss-Siedel Slide 4 1- Iterative Methods start with an initial guess of the solution vector X (0), and then repeatedly refine the solution until a certain convergence criterion is reached. Advantages : have significant computational advantages if the coefficient matrix is very large and sparsely populated (most coefficients are zero). Disadvantages: less efficient than their direct counterparts due to the large number of iterations required. Slide 5 Jacobi Method The Jacobi method is an algorithm for determining the solutions of a system of linear equations with largest absolute values in each row and column dominated by the diagonal element. Slide 6 Definition: The square nonsingular matrix A is called diagonally dominant if the sum of the absolute values of its elements on the main diagonal is greater than or equal to the sum of the absolute values of the remaining elements of the analyzed row of the matrix, i.e., Example : Checking if the coefficient matrix is diagonally dominant Slide 7 Steps of Jacobi Method: 1.Rearrange system to be diagonally dominant. 2.Start with an initial vector 3.We determine the unknowns x1, x2, and x3 from the first, second, and third equation, respectively: Slide 8 4.Perform series of consecutive iterations (k) as in step 3 until the solution converges to an exact solution, i.e., In general: Slide 9 Example: Solve by Jacobi method: Start with solution guess, and start iterating on the solution Slide 10 keep on going until the desired level of accuracy is achieved Slide 11 Iterative convergence Is the (k+1) th solution better than the k th solution? Iterative process can be convergent/divergent A sufficient condition to ensure convergence is that the matrix is diagonally dominant A poor first guess will prolong the iterative process but will not make it diverge if the matrix is such that convergence is assured. Therefore better guesses will speed up the iterative process Slide 12 Criteria for ascertaining convergence Absolute convergence criteria Where a user specified tolerance or accuracy The absolute convergence criteria is best used if you have a good idea of the magnitude of the x i s Relative convergence criteria This criteria is best used if the magnitude of the s are not known. There are also problems with this criteria if Slide 13 Solution: Rearrange the system to be diagonally dominant as the following: Slide 14 Determine the unknowns x 1, x 2, and x 3 from the first, second, and third equation, respectively: Slide 15 Continuing this procedure, you obtain the sequence of approximations shown in the following table Slide 16 Because the last two rows in the table are identical, we can conclude that to three significant digits the solution is Slide 17 Gauss-Siedel Method The GaussSeidel method is similar to the Jacobi method except that the computation of x i (k) uses only the elements of X (k) that have already been computed, and only the elements of X (k-1) that have yet to be advanced to iteration (k). Slide 18 Example 4 Solve previous Example using the GaussSeidel method Start with you obtain the following new value for x 1 Now that you have a new value for x 1, however, use it to compute a new value for x 2 That is, Slide 19 So the first approximation is Continued iterations produce the sequence of approximations shown in the following table. Note that after only six iterations of the Gauss-Seidel method, you achieved the same accuracy as was obtained with eight iterations of the Jacobi method. Slide 20 Vectors, Functions, and Plots in Matlab Slide 21 Enter a matrix into Matlab with the following syntax: > A = [ 1 3 -2 5 ; -1 -1 5 4 ; 0 1 -9 0] Also enter a vector u: > u = [ 1 2 3 4] To multiply a matrix times a vector Au use *: A*u Now enter another matrix B using: > B = [3 2 1; 7 6 5; 4 3 2] You can multiply a matrix by a scalar: > 2*A Adding matrices A + A will give the same result: > A + A You can even add a number to a matrix: > A + 3.......................% This should add 3 to every entry of A. Slide 22 Special matrices: N = ones(5,5) O=zeros(2,2) I=eye(3) D=diag(A) Inv(A) Slide 23 Slide 24 Slide 25 Jacobi method in matrix form If we write D, L, and U for the diagonal, strict lower triangular and strict upper triangular and parts of A, respectively, then Jacobis Method can be written in matrix-vector notation as Slide 26 function x=Jacobi(A,b,n,x0) L=tril(A,-1) U=triu(A,1) d=diag(A) B=-(U+L); g=b; for i=1:n x=(B*x0+g)./d x0=x; end Programing of Jacobi method Slide 27 Assignment 1 1- Solve the system a- Using \ operator in Matlab. b- Using Jacobi method. Start with x (0) = (0, 0), complete a table like the one below, Slide 28 2-a) Express the Gauss-Siedel method in matrix form, (upper, lower, and diagonal). 2-b) Write a computer program that applies the Gauss- Siedel method, then solve the previous system of linear equations. Slide 29 Summary Iterative methods: 1- Jacobi method 2- Gauss-Siedel method Iterative convergence diagonally dominant Matlab programming Assignment1 Slide 30 End of Chapter 3