1. 程式人生 > >數值分析中的QR分解及其程式碼實現

數值分析中的QR分解及其程式碼實現

QR分解

ACm×k是一個列滿秩的矩陣,rank(A) = k,則矩陣A 可以分解為A=QR ,

QCm×k,Q 的列向量為A 的列空間的標準正交基, RCk×k ,是一個可逆的上三角矩陣,

A 的列向量線性無關,A=(α1,α2,...αk),將這k個列向量進行Schmidt正交化,得到A 的列向量空間的標準正交基,

正交化:β1=α1

β2=α2(α2,β1)(β1,β1)β1

β

k=αki=1k1(αk,βi)(βi,βi)βi

標準化:ϵi=βiβi

把正交化方法和標準化方法結合在一起:
β1=α1 , ϵ1=β1β1

β2=α2(α2,ϵ1) , ϵ2=β2β2

…..

βn=αni=1n1(αn,ϵi)ϵi , ϵn=βnβn

得到Q(ϵ1,ϵ2...ϵk),由 A=QR 可知,