• No se han encontrado resultados

Programaci´on: descomposici´on QR reducida usando el m´etodo modificado de Gram–Schmidt

N/A
N/A
Protected

Academic year: 2022

Share "Programaci´on: descomposici´on QR reducida usando el m´etodo modificado de Gram–Schmidt"

Copied!
2
0
0

Texto completo

(1)

Programaci´ on: descomposici´ on QR reducida usando el m´ etodo modificado de Gram–Schmidt

Objetivos. Programar una funci´on que realice el algoritmo de descomposici´on QR usando el m´etodo modificado de Gram–Schmidt.

Requisitos. Operaciones con vectores (operaciones lineales y el producto punto), ciclos, la idea del m´etodo modificado de Gram–Schmidt.

1. Descomposici´on QR de una matriz de tres columnas usando el m´etodo modificado de Gram–Schmidt.

function [Q, R] = QRMGS3(A),

[n, m] = size(A); # suponemos que m = 3 Q = A; R = eye(m);

# first step

R(1, 1) = norm(Q(:, 1));

Q(:, 1) = Q(:, 1) / R(1, 1);

R(1, 2) = Q(:, 1)’ * Q(:, 2);

Q(:, 2) = Q(:, 2) - R(1, 2) * Q(:, 1);

R(1, 3) = Q(:, 1)’ * Q(:, 3);

Q(:, 3) = Q(:, 3) - R(1, 3) * Q(:, 1);

# segundo paso

R(2, 2) = norm(Q(:, 2));

Q(:, 2) = Q(:, 2) / R(2, 2);

R(2, 3) = Q(:, 2)’ * Q(:, 3);

Q(:, 3) = Q(:, 3) - R(2, 3) * Q(:, 2);

# tercer paso

R(3, 3) = norm(Q(:, 3));

Q(:, 3) = Q(:, 3) / R(3, 3);

end Prueba:

function [] = testQR3(), n = 5; m = 3;

A = randn(n, m);

[Q, R] = QRMGS3(A);

display(Q);

display(R);

display(norm(Q’ * Q - eye(m)));

display(norm(Q * R - A));

display(norm(R - triu(R)));

end

Programaci´on: QR con el m´etodo modificado de Gram–Schmidt, p´agina 1 de 2

(2)

2. Descomposici´on QR de una matriz de cuatro columnas usando el m´eto- do modificado de Gram–Schmidt. Convierta la funci´on QRMGS3 en una funci´on QRMGS4 que trabaje con una matriz de cuatro columnas. Utilice operaciones matriciales para trabajar con varias columnas simultaneamente. Por ejemplo, en vez de

R(1, 2) = Q(:, 1)’ * Q(:, 2);

R(1, 3) = Q(:, 1)’ * Q(:, 3);

R(1, 4) = Q(:, 1)’ * Q(:, 4);

se puede hacer

R(1, 2 : 4) = Q(:, 1)’ * Q(:, 2 : 4);

Haga comprobaciones para la funci´on QRMGS4.

3. Problema: descomposici´on QR con el m´etodo modificado de Gram–Schmidt.

Entrada: A ∈ Mn×m(R), donde n ≥ m y r(A) = m.

Salida: matrices Q ∈ Mn×m(R) y R ∈ Mm×m(R) tales que A = QR, Q>Q = In y Rj,k = 0 para cualesquiera j, k tales que j > k.

function [Q, R] = QRGSM(A), [n, m] = size(A);

Q = A; R = eye(m);

for p = 1 : m, R(p, p) = ???;

???;

R(p, ??? : ???) = ???;

Q(:, ??? : ???) = ???;

end end

4. Pruebas con matrices peque˜nas. Hacer pruebas peque˜nas de la funci´on programada con matrices de 3 columnas, de 4 columnas, de 5 columnas, para verificar que la funci´on regresa resultados correctos.

5. Pruebas con matrices grandes. Hacer pruebas con matrices aleatorias de tama˜nos grandes (m = 512, m = 1024 o m´as grandes, n = m o n = 2m), y analizar c´omo depende de m el tiempo de ejecuci´on.

Programaci´on: QR con el m´etodo modificado de Gram–Schmidt, p´agina 2 de 2

Referencias

Documento similar

Resolver sistemas determinados de ecuaciones lineales con matrices triangu- lares, usando operaciones lineales con columnas de la matriz del

Revise libros y encuentre sugerencias sobre el c´ alculo del vector de Householder y la realizaci´ on del m´ etodo QR con reflexiones de Householder7. Intente de disminuir los

Programar una funci´ on que resuelva sistemas de ecuaciones lineales usan- do funciones programadas anteriormente que realizan la descomposici´ on QR y resuelven sistemas de

Muestre c´ omo hallar la soluci´ on z del problema de m´ınimos cuadrados usando la factorizaci´ on QR de la matriz A.. Pruebas con datos de tama˜

Soluci´ on de sistemas sim´ etricas positivas definidas con m´ etodos iterativos, con b´ usqueda exacta sobre cada recta1. Del sistema de ecuaciones a la minimizaci´ on de una funci´

Soluci´ on de sistemas sim´ etricas positivas definidas por medio de la minimi- zaci´ on de un funcional, b´ usqueda exacta sobre cada recta, ortogonalizaci´ on de una lista de

Soluci´ on de sistemas sim´ etricas positivas definidas usando m´ etodos iterativos con b´ usqueda exacta sobre cada recta, ortogonalizaci´ on de Gram–Schmidt1. El m´ınimo de

Demostrar el teorema de Banach–Schauder sobre la funci´ on abierta, para operadores lineales continuas entre espacios de