QR 분해를 단계별로 시각화하려고했지만 예상 결과를 얻지 못했습니다. 그것이 좋은 것, 그래서 어떤 전문가의 눈은 내가 누락 될 수 있습니다 무엇을 발견 할 수 있다면 나는 NumPy와 새로운 해요 :매트릭스 QR 인수 분해 알고리즘
import numpy as np
from scipy import linalg
A = np.array([[12, -51, 4],
[6, 167, -68],
[-4, 24, -41]])
#Givens
v = np.array([12, 6])
vnorm = np.linalg.norm(v)
W_12 = np.array([[v[0]/vnorm, v[1]/vnorm, 0],
[-v[1]/vnorm, v[0]/vnorm, 0],
[0, 0, 1]])
W_12 * A #this should return a matrix such that [1,0] = 0
#gram-schmidt
A[:,0]
v = np.linalg.norm(A[:,0]) * np.array([1, 0, 0])
u = (A[:,0] - v)
u = u/np.linalg.norm(u)
W1 = np.eye(3) - 2 * np.outer(u, u.transpose())
W1 * A #this matrix's first column should look like [a, 0, 0]
이 중간 결과 그들이 생각하는 속성을 보여주지 않는다는 사실을 명확히 도움 ~을 (를) 크게 받게됩니다.
감사합니다.