Formato numérico
Comentarios de la solución
Sin descripción (solo respuesta)
a
b
c
d
x
y
z
clear
i
Randomize
3131313131351515151515≈83137
Cómo calcular la descomposición QR por rotaciones de Givens
Aplica una secuencia de rotaciones de plano 2 por 2 para anular las entradas subdiagonales una a una. Cada rotación de Givens está determinada por las dos entradas sobre las que actúa. El producto acumulativo de rotaciones es Q, y la matriz rotada es R.
Rotaciones de Givens — ejemplo resuelto (3×3)
Escribe la matriz inicial
A
:
A
=
1
1
0
1
0
1
0
1
1
QR
la descomposición es una representación de la matriz
A
en la forma:
A
=
Q
*
R
;
Matrix
Q
es una matriz ortonormal;
Matrix
R
es una matriz triangular superior;
Podemos usar rotaciones de Givens para hacer que todos los elementos debajo de la diagonal principal de la matriz
A
sean cero;
Este método es iterativo y en una iteración convertiremos un elemento a cero;
En la última iteración, cuando todos los elementos debajo de la diagonal principal sean cero, obtendremos la matriz
R
;
Durante el cálculo de la matriz
R
en cada iteración, calcularemos la matriz
G
para convertir los elementos debajo de la diagonal principal a cero;
Podemos calcular la matriz
Q
multiplicando todas las matrices transpuestas
G
;
Anularemos los elementos de arriba a abajo de izquierda a derecha;
En cada iteración necesitamos definir las siguientes variables:
a
es el elemento de la matriz Aₖ₋₁, que se encuentra en la diagonal principal en la misma columna que el elemento que queremos convertir en ceroa
=
a
0
k - 1
0
i,i
;
b
es el elemento de la matriz Aₖ₋₁ que queremos convertir en cerob
=
a
0
k - 1
0
j,i
;
// donde
j
es el número de fila en el que hay un elemento que queremos convertir en ceroi
es el número de columna en el que hay un elemento que queremos convertir en cerok
es el número de iteraciónAₖ₋₁
es la matriz calculada en la iteración anteriorA continuación, necesitamos calcular los siguientes valores:
r
=
a
2
0
+
b
2
0
;
c
=
a
r
;
s
= -
b
r
;
Ahora podemos construir la matriz
G
:
1)
La base de la matriz G es una matriz identidad de tamaño n por n// donde
n
es el número de filas de la matriz A2)
El elemento en el índice [i,i] es igual a cg
0
i,i
=
c
;
3)
El elemento en el índice [j,j] es igual a cg
0
j,j
=
c
;
4)
El elemento en el índice [j,i] es igual a sg
0
j,i
=
s
;
5)
El elemento en el índice [i,j] es igual a -sg
0
i,j
=
-s
;
Después de construir la matriz
G
, podemos multiplicarla por la matriz
A
0
k - 1
por la izquierda y obtendremos la matriz
A
0
k
;
En este paso, anularemos el elemento bajo el índice
j,i
;
También multiplicaremos la matriz
Q
0
k - 1
por la matriz
G
T
0
y obtendremos la matriz
Q
0
k
;
2
Iteración 1En la primera iteración, la matriz
A
0
0
es igual a la matriz original
A
:
A
0
0
=
1
1
0
1
0
1
0
1
1
Escriba la matriz inicial
Q
0
0
, que es igual a la matriz identidad:
Q
0
0
=
1
0
0
0
1
0
0
0
1
i
=
1
;
j
=
2
;
a
=
a
0
k - 1
0
i,i
=
a
0
0
0
1,1
=
1
;
b
=
a
0
k - 1
0
j,i
=
a
0
0
0
2,1
=
1
;
r
=
a
2
0
+
b
2
0
=
1
2
0
+
1
2
0
=
1
41
100
;
c
=
a
r
=
1
1
41
100
=
71
100
;
s
= -
b
r
= -
1
1
41
100
=
-
71
100
;
G
=
c
s
0
-s
c
0
0
0
1
=
71
100
-
71
100
0
71
100
71
100
0
0
0
1
;
Matriz
A
0
1
A
0
1
=
G
0
·
A
0
0
=
71
100
-
71
100
0
71
100
71
100
0
0
0
1
·
1
1
0
1
0
1
0
1
1
=
1
41
100
0
0
71
100
-
71
100
1
71
100
71
100
1
Matriz
G
T
0
G
T
0
=
71
100
71
100
0
-
71
100
71
100
0
0
0
1
Matriz
Q
0
1
Q
0
1
=
Q
0
0
·
G
T
0
=
1
0
0
0
1
0
0
0
1
·
71
100
71
100
0
-
71
100
71
100
0
0
0
1
=
71
100
71
100
0
-
71
100
71
100
0
0
0
1
3
Iteración 2i
=
2
;
j
=
3
;
a
=
a
0
k - 1
0
i,i
=
a
0
1
0
2,2
=
-
71
100
;
b
=
a
0
k - 1
0
j,i
=
a
0
1
0
3,2
=
1
;
r
=
a
2
0
+
b
2
0
=
-
71
100
2
0
+
1
2
0
=
1
11
50
;
c
=
a
r
=
-
71
100
1
11
50
=
-
29
50
;
s
= -
b
r
= -
1
1
11
50
=
-
41
50
;
G
=
1
0
0
0
c
s
0
-s
c
=
1
0
0
0
-
29
50
-
41
50
0
41
50
-
29
50
;
Matriz
A
0
2
A
0
2
=
G
0
·
A
0
1
=
1
0
0
0
-
29
50
-
41
50
0
41
50
-
29
50
·
1
41
100
0
0
71
100
-
71
100
1
71
100
71
100
1
=
1
41
100
0
0
71
100
1
11
50
0
71
100
41
100
-1
3
20
Matriz
G
T
0
G
T
0
=
1
0
0
0
-
29
50
41
50
0
-
41
50
-
29
50
Matriz
Q
0
2
Q
0
2
=
Q
0
1
·
G
T
0
=
71
100
71
100
0
-
71
100
71
100
0
0
0
1
·
1
0
0
0
-
29
50
41
50
0
-
41
50
-
29
50
=
71
100
71
100
0
41
100
-
41
100
41
50
29
50
-
29
50
-
29
50
4
Matriz Q, RQ
=
Q
0
2
=
71
100
71
100
0
41
100
-
41
100
41
50
29
50
-
29
50
-
29
50
R
=
A
0
2
=
1
41
100
0
0
71
100
1
11
50
0
71
100
41
100
-1
3
20
Answer
A = Q · RQ
=
71
100
71
100
0
41
100
-
41
100
41
50
29
50
-
29
50
-
29
50
R
=
1
41
100
0
0
71
100
1
11
50
0
71
100
41
100
-1
3
20
Tamaño3×3MétodoRotación de Givens