Divide and Conquer

LU 분해 LU decomposition 본문

성장캐/수치해석

LU 분해 LU decomposition

10살 2022. 6. 21. 01:27
728x90
  • 선형 연립방정식의 해를 구하는 방법 중 하나
  • 행렬 A를 보다 간단한 행렬인 두 개의 행렬의 곱으로 분해하여 해를 구하는 것(Echelone 형태가 풀기 쉽다)
  • A=LU의 형태로 진행
    • L은 아래 삼각 행렬로 주대각이 모두 1, 나머지는 0이 아닌 수
    • U는 주대각 아래 모두 0, 나머지는 0이 아닌 수

import numpy as np
from scipy.linalg import lu

A = np.array([행렬])

(p, l, u) = lu(A)
print('p = ' , p) # 피보팅
print('l = ', l)
print('u = ', u)

피보팅 여부는 단위행렬에서 어떻게 바뀌었는지를 보고 알 수 있다

p=[0. 1.]
  [1. 0.] 로 나오면 행이 위아래로 순서가 바뀐 것을 알 수 있음

 

반응형

'성장캐 > 수치해석' 카테고리의 다른 글

반복법(Jacobi 방법, Gauss-Seidel 방법)  (0) 2022.06.21
수치미분 numerical differentiation  (0) 2022.06.20
Gauss 소거법 Gauss Elimination  (0) 2022.04.25
선형 연립방정식의 해법  (0) 2022.04.25
할선법 Secant Method  (0) 2022.04.25
Comments