Al calcular los valores propios de la matriz simétrica M∈Rn×n lo mejor que puede hacer con el reflector Householder es conducir M a una forma tridiagonal. Como se mencionó en una respuesta anterior porque M es simétrica hay una transformación de semejanza ortogonal que se traduce en una matriz diagonal, es decir, D=STMS . Sería conveniente si pudiéramos encontrar la acción de la matriz ortogonal desconocida S estrictamente usando reflectores Householder calculando una secuencia de reflectores y aplicando HT desde la izquierda a M y H desde la derecha a M. Sin embargo, esto no es posible debido a la forma en que el reflector Householder está diseñado para poner a cero las columnas. Si tuviéramos que calcular el reflector Householder para poner a cero todos los números debajo de M11 , encontramos
Pero ahora las entradas M 12 - M 1 n han sido alteradas por el reflector H T 1 aplicado a la izquierda. Por lo tanto, cuando aplicamos H 1 a la derecha, ya no se pondrá a cero la primera fila deMdejando solo M 11 . En cambio, obtendremos
H T
M=⎛⎝⎜⎜⎜⎜⎜⎜∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗⎞⎠⎟⎟⎟⎟⎟⎟→HT1M=⎛⎝⎜⎜⎜⎜⎜⎜∗0000∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′⎞⎠⎟⎟⎟⎟⎟⎟.
M12−M1nHT1H1MM11
¿Dónde no solo no cerramos la fila sino que también podemos destruir la estructura cero que acabamos de introducir con el reflector
H T 1 ?
HT1M=⎛⎝⎜⎜⎜⎜⎜⎜∗0000∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′∗′⎞⎠⎟⎟⎟⎟⎟⎟→HT1MH1=⎛⎝⎜⎜⎜⎜⎜⎜∗∗′∗′∗′∗′∗′′∗′′∗′′∗′′∗′′∗′′∗′′∗′′∗′′∗′′∗′′∗′′∗′′∗′′∗′′∗′′∗′′∗′′∗′′∗′′⎞⎠⎟⎟⎟⎟⎟⎟.
HT1
MHT1
M=⎛⎝⎜⎜⎜⎜⎜⎜∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗⎞⎠⎟⎟⎟⎟⎟⎟→HT1M=⎛⎝⎜⎜⎜⎜⎜⎜∗∗′000∗∗′∗′∗′∗′∗∗′∗′∗′∗′∗∗′∗′∗′∗′∗∗′∗′∗′∗′⎞⎠⎟⎟⎟⎟⎟⎟.
Thus when we apply the same reflector from the right we obtain
HT1M=⎛⎝⎜⎜⎜⎜⎜⎜∗∗′000∗∗′∗′∗′∗′∗∗′∗′∗′∗′∗∗′∗′∗′∗′∗∗′∗′∗′∗′⎞⎠⎟⎟⎟⎟⎟⎟→HT1MH1=⎛⎝⎜⎜⎜⎜⎜⎜∗∗′000∗′∗′′∗′′∗′′∗′′0∗′′∗′′∗′′∗′′0∗′′∗′′∗′′∗′′0∗′′∗′′∗′′∗′′⎞⎠⎟⎟⎟⎟⎟⎟.
Applied recursively this allows us to drive M to a tridiagonal matrix T. You can complete the diagonalization of M efficiently, as was mentioned previously, using Jacobi or Givens rotations both of which are found in the Golub and Van Loan book Matrix Computations. The accumulated actions of the sequence of Householder reflectors and Jacobi or Givens rotations allows us to find the action of the orthogonal matrices ST and S without explicitly forming them.
For what reason do you assume that this is impossible?
Any symmetric real matrixS can be orthogonally diagonalized, i.e. S=GDGt , where G is orthogonal and D is diagonal.
Any orthogonal matrix of size n×n can be constructed as a product of at most n such reflections.Wikipedia. Therefore you have this decomposition.
I am not sure about the last statement, I just cite it (and I think it is correct). As far as I understand your question, it boils down to whether any orthogonal matrix can be decomposed into a sequence of Householder transforms.
fuente
If the eigenvalues are already known (from a preliminary calculation based on the usual approach), one can use them to triangulize a nonsymmetric matrix (or diagonalize a symmetric matrix) by a product onn−1 Householder reflections. In the k th step the k th column is brought to triangular form. (This also provides a simple inductive proof of the existence of the Schur factorization.)
It is actually useful for methods where one repeatedly needs the orthoginal matrix in a numerically stable factored form.
fuente