naginterfaces.library.lapackeig.dgebak

naginterfaces.library.lapackeig.dgebak(job, side, ilo, ihi, scale, v)[source]

dgebak transforms eigenvectors of a balanced matrix to those of the original real nonsymmetric matrix.

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

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

Parameters
jobstr, length 1

This must be the same argument as supplied to dgebal().

sidestr, length 1

Indicates whether left or right eigenvectors are to be transformed.

The left eigenvectors are transformed.

The right eigenvectors are transformed.

iloint

The values and , as returned by dgebal().

ihiint

The values and , as returned by dgebal().

scalefloat, array-like, shape

Details of the permutations and/or the scaling factors used to balance the original real nonsymmetric matrix, as returned by dgebal().

vfloat, array-like, shape

The matrix of left or right eigenvectors to be transformed.

Returns
vfloat, ndarray, shape

The transformed eigenvectors.

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 .

(errno )

On entry, error in parameter .

(errno )

On entry, error in parameter .

Constraint: .

Notes

dgebak is intended to be used after a real nonsymmetric matrix has been balanced by dgebal(), and eigenvectors of the balanced matrix have subsequently been computed.

For a description of balancing, see the document for dgebal(). The balanced matrix is obtained as , where is a permutation matrix and is a diagonal scaling matrix. This function transforms left or right eigenvectors as follows:

if is a right eigenvector of , is a right eigenvector of ;

if is a left eigenvector of , is a left eigenvector of .