Next: Hessenberg Decomposition of Real Matrices, Previous: Tridiagonal Decomposition of Real Symmetric Matrices, Up: Linear Algebra [Index]

A hermitian matrix *A* can be factorized by similarity
transformations into the form,

A = U T U^T

where *U* is a unitary matrix and *T* is a real symmetric
tridiagonal matrix.

- Function:
*int***gsl_linalg_hermtd_decomp***(gsl_matrix_complex **`A`, gsl_vector_complex *`tau`) This function factorizes the hermitian matrix

`A`into the symmetric tridiagonal decomposition*U T U^T*. On output the real parts of the diagonal and subdiagonal part of the input matrix`A`contain the tridiagonal matrix*T*. The remaining lower triangular part of the input matrix contains the Householder vectors which, together with the Householder coefficients`tau`, encode the unitary matrix*U*. This storage scheme is the same as used by LAPACK. The upper triangular part of`A`and imaginary parts of the diagonal are not referenced.

- Function:
*int***gsl_linalg_hermtd_unpack***(const gsl_matrix_complex **`A`, const gsl_vector_complex *`tau`, gsl_matrix_complex *`U`, gsl_vector *`diag`, gsl_vector *`subdiag`) This function unpacks the encoded tridiagonal decomposition (

`A`,`tau`) obtained from`gsl_linalg_hermtd_decomp`

into the unitary matrix`U`, the real vector of diagonal elements`diag`and the real vector of subdiagonal elements`subdiag`.

- Function:
*int***gsl_linalg_hermtd_unpack_T***(const gsl_matrix_complex **`A`, gsl_vector *`diag`, gsl_vector *`subdiag`) This function unpacks the diagonal and subdiagonal of the encoded tridiagonal decomposition (

`A`,`tau`) obtained from the`gsl_linalg_hermtd_decomp`

into the real vectors`diag`and`subdiag`.