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. Rossi Paperback (6"x9"), 592 pages, 60 figures ISBN 0954612078 RRP £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 |