qrupdate
Atualiza uma fatoração QR após uma modificação de posto 1 da matriz.
Categoria: Mathematics > Linear Algebra
Sintaxe
[Q1, R1] = qrupdate(Q, R, u, v)
Retorna a fatoração de A + u*v', onde A = Q*R.
Descrição
Uma modificação de posto 1 u*v' pode ser absorvida na fatoração existente por uma sequência de rotações de Givens, em ordem de n^2 operações em vez de n^3 para uma nova fatoração.
O resultado é uma fatoração QR válida da nova matriz, mas seus sinais podem diferir de qr(A + u*v').
Argumentos de entrada
Q, R- Fatores de uma fatoração QR
A = Q*R. u, v- Vetores coluna;
utem tantas linhas quantoAevtantas entradas quantoAtem colunas.
Argumentos de saída
Q1, R1- Fatores da matriz modificada
A + u*v'.
Exemplo
Atualização de posto 1
A = magic(3);
[Q, R] = qr(A);
u = [1; 0; 0];
v = [0; 1; 0];
[Q1, R1] = qrupdate(Q, R, u, v);
norm(Q1*R1 - (A + u*v')) < 1e-10
Saída
ans = logical
1