Numerical Analysis Part 2 L U 25 LU

  • Slides: 61
Download presentation
수치해석 (Numerical Analysis) 행렬과 연립 방정식 (Part 2)

수치해석 (Numerical Analysis) 행렬과 연립 방정식 (Part 2)

행렬 L과 U의 계산 (2/5) LU Decomposition & Simultaneous Equation 행렬 U의 첫 번째

행렬 L과 U의 계산 (2/5) LU Decomposition & Simultaneous Equation 행렬 U의 첫 번째 행의 원소 값 구하기 Page 6

행렬 L과 U의 계산 (3/5) LU Decomposition & Simultaneous Equation 행렬 L의 두 번째

행렬 L과 U의 계산 (3/5) LU Decomposition & Simultaneous Equation 행렬 L의 두 번째 열의 원소 값 구하기 Page 7

행렬 L과 U의 계산 (4/5) LU Decomposition & Simultaneous Equation 행렬 U의 두 번째

행렬 L과 U의 계산 (4/5) LU Decomposition & Simultaneous Equation 행렬 U의 두 번째 행의 원소 값 구하기 Page 8

삼각 분해 예제 (2/4) LU Decomposition & Simultaneous Equation 다음으로, li 2과 u 2

삼각 분해 예제 (2/4) LU Decomposition & Simultaneous Equation 다음으로, li 2과 u 2 j를 구한다. Page 11

삼각 분해 예제 (3/4) LU Decomposition & Simultaneous Equation 그리고, li 3과 u 3

삼각 분해 예제 (3/4) LU Decomposition & Simultaneous Equation 그리고, li 3과 u 3 j를 구한다. 마지막으로, li 4를 구한다. Page 12

행렬의 삼각 분해 - 알고리즘 procedure LUmatrices(aij: real numbers, n: integer) { [aij] is

행렬의 삼각 분해 - 알고리즘 procedure LUmatrices(aij: real numbers, n: integer) { [aij] is an nxn matrix. (1 i, j n)} { n is # of columns(= # of rows). } Initialize every lij in [lij] and every uij in [uij] to 0; for m : = 1 to n j : = m; for i : = j to n lij : = end i : = m; for j : = i to n uij : = end return [lij] and [uij]; Page 15 LU Decomposition & Simultaneous Equation

행렬의 삼각 분해 – 프로그램 (1/3) Page 16 LU Decomposition & Simultaneous Equation

행렬의 삼각 분해 – 프로그램 (1/3) Page 16 LU Decomposition & Simultaneous Equation

행렬의 삼각 분해 – 프로그램 (2/3) Page 17 LU Decomposition & Simultaneous Equation

행렬의 삼각 분해 – 프로그램 (2/3) Page 17 LU Decomposition & Simultaneous Equation

행렬의 삼각 분해 – 프로그램 (3/3) Page 18 LU Decomposition & Simultaneous Equation

행렬의 삼각 분해 – 프로그램 (3/3) Page 18 LU Decomposition & Simultaneous Equation

행렬의 삼각 분해 – 실행 결과 I (1/2) 사용한 행렬 입력 파일 구성 Page

행렬의 삼각 분해 – 실행 결과 I (1/2) 사용한 행렬 입력 파일 구성 Page 19 LU Decomposition & Simultaneous Equation

행렬의 삼각 분해 – 실행 결과 I (2/2) 프로그램 실행 결과 (교재 p. 153

행렬의 삼각 분해 – 실행 결과 I (2/2) 프로그램 실행 결과 (교재 p. 153 참조) Page 20 LU Decomposition & Simultaneous Equation

행렬의 삼각 분해 – 실행 결과 II (1/2) 사용한 행렬 입력 파일 구성 Page

행렬의 삼각 분해 – 실행 결과 II (1/2) 사용한 행렬 입력 파일 구성 Page 21 LU Decomposition & Simultaneous Equation

행렬의 삼각 분해 – 실행 결과 II (2/2) 프로그램 실행 결과 (교재 p. 161

행렬의 삼각 분해 – 실행 결과 II (2/2) 프로그램 실행 결과 (교재 p. 161 참조) Page 22 LU Decomposition & Simultaneous Equation

삼각 분해를 이용한 방정식 풀이 – 알고리즘 LU Decomposition & Simultaneous Equation procedure LUequation(aij,

삼각 분해를 이용한 방정식 풀이 – 알고리즘 LU Decomposition & Simultaneous Equation procedure LUequation(aij, bi: real numbers, n: integer) { [aij] is an nxn matrix for coefficients. (1 i, j n)} { [bi] is an nx 1 matrix for results. (1 i n)} { n is # of columns(= # of rows). } [lij], [uij] : = LUmatrices(aij, n); // get matrices L and U for i : = 1 to n yi : = for i : = n to 1 xi : = return [xi]; Page 32

삼각 분해를 이용한 방정식 풀이 – 프로그램 (1/5) LU Decomposition & Simultaneous Equation Page

삼각 분해를 이용한 방정식 풀이 – 프로그램 (1/5) LU Decomposition & Simultaneous Equation Page 33

삼각 분해를 이용한 방정식 풀이 – 프로그램 (2/5) LU Decomposition & Simultaneous Equation Page

삼각 분해를 이용한 방정식 풀이 – 프로그램 (2/5) LU Decomposition & Simultaneous Equation Page 34

삼각 분해를 이용한 방정식 풀이 – 프로그램 (3/5) LU Decomposition & Simultaneous Equation Page

삼각 분해를 이용한 방정식 풀이 – 프로그램 (3/5) LU Decomposition & Simultaneous Equation Page 35

삼각 분해를 이용한 방정식 풀이 – 프로그램 (4/5) LU Decomposition & Simultaneous Equation Page

삼각 분해를 이용한 방정식 풀이 – 프로그램 (4/5) LU Decomposition & Simultaneous Equation Page 36

삼각 분해를 이용한 방정식 풀이 – 프로그램 (5/5) LU Decomposition & Simultaneous Equation Page

삼각 분해를 이용한 방정식 풀이 – 프로그램 (5/5) LU Decomposition & Simultaneous Equation Page 37

삼각 분해를 이용한 방정식 풀이 – 실행 결과 I (2/2) LU Decomposition & Simultaneous

삼각 분해를 이용한 방정식 풀이 – 실행 결과 I (2/2) LU Decomposition & Simultaneous Equation 역행렬 이용 Page 39

삼각 분해를 이용한 방정식 풀이 – 실행 결과 II (2/2) LU Decomposition & Simultaneous

삼각 분해를 이용한 방정식 풀이 – 실행 결과 II (2/2) LU Decomposition & Simultaneous Equation 역행렬 이용 Page 41

삼각 분해를 이용한 역행렬 구하기 – 알고리즘 LU Decomposition & Simultaneous Equation procedure LUinverse(aij:

삼각 분해를 이용한 역행렬 구하기 – 알고리즘 LU Decomposition & Simultaneous Equation procedure LUinverse(aij: real numbers, n: integer) { [aij] is an nxn matrix for coefficients. (1 i, j n)} { n is # of columns(= # of rows). } [lij], [uij] : = LUmatrices(aij, n); // get matrices L and U Set zij and vij to 0 for every i and j; for j : = 1 to n zjj : = 1/ljj; for i : = j+1 to n zij : = for i : = 1 to n vii : = 1 for j : = i+1 to n vij : = return [vij][zij]; Page 51

삼각 분해를 이용한 역행렬 구하기 – 프로그램 (1/5) LU Decomposition & Simultaneous Equation Page

삼각 분해를 이용한 역행렬 구하기 – 프로그램 (1/5) LU Decomposition & Simultaneous Equation Page 52

삼각 분해를 이용한 역행렬 구하기 – 프로그램 (2/5) LU Decomposition & Simultaneous Equation Page

삼각 분해를 이용한 역행렬 구하기 – 프로그램 (2/5) LU Decomposition & Simultaneous Equation Page 53

삼각 분해를 이용한 역행렬 구하기 – 프로그램 (3/5) LU Decomposition & Simultaneous Equation Page

삼각 분해를 이용한 역행렬 구하기 – 프로그램 (3/5) LU Decomposition & Simultaneous Equation Page 54

삼각 분해를 이용한 역행렬 구하기 – 프로그램 (4/5) LU Decomposition & Simultaneous Equation Page

삼각 분해를 이용한 역행렬 구하기 – 프로그램 (4/5) LU Decomposition & Simultaneous Equation Page 55

삼각 분해를 이용한 역행렬 구하기 – 프로그램 (5/5) LU Decomposition & Simultaneous Equation Page

삼각 분해를 이용한 역행렬 구하기 – 프로그램 (5/5) LU Decomposition & Simultaneous Equation Page 56

Homework #3 LU Decomposition & Simultaneous Equation Page 61

Homework #3 LU Decomposition & Simultaneous Equation Page 61