naginterfaces.library.lapackeig.zunmhr

naginterfaces.library.lapackeig.zunmhr(side, trans, ilo, ihi, a, tau, c)[source]

zunmhr multiplies an arbitrary complex matrix by the complex unitary matrix which was determined by zgehrd() when reducing a complex general matrix to Hessenberg form.

For full information please refer to the NAG Library document for f08nu

https://support.nag.com/numeric/nl/nagdoc_30.1/flhtml/f08/f08nuf.html

Parameters
sidestr, length 1

Indicates how or is to be applied to .

or is applied to from the left.

or is applied to from the right.

transstr, length 1

Indicates whether or is to be applied to .

is applied to .

is applied to .

iloint

These must be the same arguments and , respectively, as supplied to zgehrd().

ihiint

These must be the same arguments and , respectively, as supplied to zgehrd().

acomplex, array-like, shape

Note: the required extent for this argument in dimension 1 is determined as follows: if : ; if : ; otherwise: .

Note: the required extent for this argument in dimension 2 is determined as follows: if : ; if : ; otherwise: .

Details of the vectors which define the elementary reflectors, as returned by zgehrd().

taucomplex, array-like, shape

Note: the required length for this argument is determined as follows: if : ; if : ; otherwise: .

Further details of the elementary reflectors, as returned by zgehrd().

ccomplex, array-like, shape

The matrix .

Returns
ccomplex, ndarray, shape

is overwritten by or or or as specified by and .

Raises
NagValueError
(errno )

On entry, error in parameter .

Constraint: or .

(errno )

On entry, error in parameter .

Constraint: or .

(errno )

On entry, error in parameter .

Constraint: .

(errno )

On entry, error in parameter .

Constraint: .

(errno )

On entry, error in parameter .

(errno )

On entry, error in parameter .

Notes

zunmhr is intended to be used following a call to zgehrd(), which reduces a complex general matrix to upper Hessenberg form by a unitary similarity transformation: . zgehrd() represents the matrix as a product of elementary reflectors. Here and are values determined by zgebal() when balancing the matrix; if the matrix has not been balanced, and .

This function may be used to form one of the matrix products

overwriting the result on (which may be any complex rectangular matrix).

A common application of this function is to transform a matrix of eigenvectors of to the matrix of eigenvectors of .

References

Golub, G H and Van Loan, C F, 1996, Matrix Computations, (3rd Edition), Johns Hopkins University Press, Baltimore