MATLAB Function Reference Previous page   Next Page
hess

Hessenberg form of a matrix

Syntax

Description

H = hess(A) finds H, the Hessenberg form of matrix A.

[P,H] = hess(A) produces a Hessenberg matrix H and a unitary matrix P so that A = P*H*P' and P'*P = eye(size(A)).

[AA,BB,Q,Z] = HESS(A,B) for square matrices A and B, produces an upper Hessenberg matrix AA, an upper triangular matrix BB, and unitary matrices Q and Z such that Q*A*Z = AA and Q*B*Z = BB.

Definition

A Hessenberg matrix is zero below the first subdiagonal. If the matrix is symmetric or Hermitian, the form is tridiagonal. This matrix has the same eigenvalues as the original, but less computation is needed to reveal them.

Examples

H is a 3-by-3 eigenvalue test matrix:

Its Hessenberg form introduces a single zero in the (3,1) position:

Algorithm

Inputs of Type Double

For inputs of type double, hess uses the following LAPACK routines to compute the Hessenberg form of a matrix:

Matrix A
Routine
Real symmetric
DSYTRD
DSYTRD, DORGTR, (with output P)
Real nonsymmetric
DGEHRD
DGEHRD, DORGHR (with output P)
Complex Hermitian
ZHETRD
ZHETRD, ZUNGTR (with output P)
Complex non-Hermitian
ZGEHRD
ZGEHRD, ZUNGHR (with output P)

Inputs of Type Single

For inputs of type single, hess uses the following LAPACK routines to compute the Hessenberg form of a matrix:

Matrix A
Routine
Real symmetric
SSYTRD
SSYTRD, DORGTR, (with output P)
Real nonsymmetric
SGEHRD
SGEHRD, SORGHR (with output P)
Complex Hermitian
CHETRD
CHETRD, CUNGTR (with output P)
Complex non-Hermitian
CGEHRD
CGEHRD, CUNGHR (with output P)

See Also

eig, qz, schur

References

[1]  Anderson, E., Z. Bai, C. Bischof, S. Blackford, J. Demmel, J. Dongarra, J. Du Croz, A. Greenbaum, S. Hammarling, A. McKenney, and D. Sorensen, LAPACK User's Guide (http://www.netlib.org/lapack/lug/ lapack_lug.html), Third Edition, SIAM, Philadelphia, 1999.


Previous page  helpwin hex2dec Next page

© 1994-2005 The MathWorks, Inc.