- publishing free software manuals
 GNU Scientific Library Reference Manual - Third Edition (v1.12) by M. Galassi, J. Davies, J. Theiler, B. Gough, G. Jungman, P. Alken, M. Booth, F. RossiPaperback (6"x9"), 592 pages, 60 figuresISBN 0954612078RRP £24.95 (\$39.95)

## 13.11 Householder Transformations

A Householder transformation is a rank-1 modification of the identity matrix which can be used to zero out selected elements of a vector. A Householder matrix P takes the form,

P = I - \tau v v^T


where v is a vector (called the Householder vector) and \tau = 2/(v^T v). The functions described in this section use the rank-1 structure of the Householder matrix to create and apply Householder transformations efficiently.

Function: double gsl_linalg_householder_transform (gsl_vector * v)
Function: gsl_complex gsl_linalg_complex_householder_transform (gsl_vector_complex * v)
This function prepares a Householder transformation P = I - \tau v v^T which can be used to zero all the elements of the input vector except the first. On output the transformation is stored in the vector v and the scalar \tau is returned.
Function: int gsl_linalg_householder_hm (double tau, const gsl_vector * v, gsl_matrix * A)
Function: int gsl_linalg_complex_householder_hm (gsl_complex tau, const gsl_vector_complex * v, gsl_matrix_complex * A)
This function applies the Householder matrix P defined by the scalar tau and the vector v to the left-hand side of the matrix A. On output the result P A is stored in A.
Function: int gsl_linalg_householder_mh (double tau, const gsl_vector * v, gsl_matrix * A)
Function: int gsl_linalg_complex_householder_mh (gsl_complex tau, const gsl_vector_complex * v, gsl_matrix_complex * A)
This function applies the Householder matrix P defined by the scalar tau and the vector v to the right-hand side of the matrix A. On output the result A P is stored in A.
Function: int gsl_linalg_householder_hv (double tau, const gsl_vector * v, gsl_vector * w)
Function: int gsl_linalg_complex_householder_hv (gsl_complex tau, const gsl_vector_complex * v, gsl_vector_complex * w)
This function applies the Householder transformation P defined by the scalar tau and the vector v to the vector w. On output the result P w is stored in w.
 ISBN 0954612078 GNU Scientific Library Reference Manual - Third Edition (v1.12) See the print edition