ELMHES

The ELMHES function reduces a real, nonsymmetric n by n array A to upper Hessenberg form. The result is an upper Hessenberg array with eigenvalues that are identical to those of the original array A . The Hessenberg array is stored in elements ( j, i ) with i   <=   j  + 1. Elements with i > j + 1 are to be thought of as zero, but are returned with random values.

ELMHES is based on the routine elmhes described in section 11.5 of Numerical Recipes in C: The Art of Scientific Computing (Second Edition), published by Cambridge University Press, and is used by permission.

Calling Sequence

Result = ELMHES( A )

Arguments

A

An n by n real, nonsymmetric array.

Keywords

DOUBLE

Set this keyword to force the computation to be done in double-precision arithmetic.

COLUMN

Set this keyword if the input array A is in column-major format (composed of column vectors) rather than in row-major format (composed of row vectors).

NO_BALANCE

Set this keyword to disable balancing. By default, a balancing algorithm is applied to A . Balancing a nonsymmetric array is recommended to reduce the sensitivity of eigenvalues to rounding errors.

Example

See the description of HQR for an example using this function.

See Also

EIGENVEC , HQR , TRIQL , TRIRED