Documentos de Académico
Documentos de Profesional
Documentos de Cultura
factorización QR
1. Introducción
Recuerde que una manera de obtener la factorización QR de una matriz
A ∈ Rn×m de rango m,
A = QR,
consiste en aplicar el conocido método de ortogonalización de Gram-Schmidt
a las columnas de la matriz A. Si a1 ,. . . , am son las columnas de A, y q1 ,. . . ,
qm son las columnas de Q, tenemos las fórmulas y1 = a1 ,
k
X hyi , ak+1 i yk
yk+1 = ak+1 − yi , qk = , k = 1, . . . , m − 1,
hyi , yi i kyk k2
i=1
y
yk
yk = Pk ak , qk = , k = 1, . . . , m . (2)
kyk k2
Vimos que este método adolece de problemas de estabilidad, que provocan
que ya para valores no muy grandes de m los vectores qk obtenidos no sean
ortogonales.
MATLAB permite calcular directamente la factorización QR por medio
de la función qr. Ası́, [Q,R]=qr(A) nos devuelve la factorización QR com-
pleta de A. La implementación interna de esta factorización usa algoritmos
mucho más estables que el Gram-Schmidt clásico, lo que vamos a comprobar
a continuación.
2. Trabajo de laboratorio
1. Vamos a crear la función gs( ) que implemente la factorización Gram-
Schmidt según las fórmulas (1) y (2).
Práctica de ordenador IX 2