naginterfaces.library.lapackeig.dgghd3¶
- naginterfaces.library.lapackeig.dgghd3(compq, compz, ilo, ihi, a, b, q, z)[source]¶
dgghd3
reduces a pair of real matrices , where is upper triangular, to the generalized upper Hessenberg form using orthogonal transformations.For full information please refer to the NAG Library document for f08wf
https://support.nag.com/numeric/nl/nagdoc_30.3/flhtml/f08/f08wff.html
- Parameters
- compqstr, length 1
Specifies the form of the computed orthogonal matrix .
Do not compute .
The orthogonal matrix is returned.
must contain an orthogonal matrix , and the product is returned.
- compzstr, length 1
Specifies the form of the computed orthogonal matrix .
Do not compute .
The orthogonal matrix is returned.
must contain an orthogonal matrix , and the product is returned.
- iloint
and as determined by a previous call to
dggbal()
. Otherwise, they should be set to and , respectively.- ihiint
and as determined by a previous call to
dggbal()
. Otherwise, they should be set to and , respectively.- afloat, array-like, shape
The matrix of the matrix pair . Usually, this is the matrix returned by
dormqr()
.- bfloat, array-like, shape
The upper triangular matrix of the matrix pair . Usually, this is the matrix returned by the factorization function
dgeqrf()
.- qfloat, 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: .
If , must contain an orthogonal matrix .
If , is not referenced.
- zfloat, 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: .
If , must contain an orthogonal matrix .
If , is not referenced.
- Returns
- afloat, ndarray, shape
is overwritten by the upper Hessenberg matrix .
- bfloat, ndarray, shape
is overwritten by the upper triangular matrix .
- qfloat, ndarray, shape
If , contains the orthogonal matrix .
If , is overwritten by .
- zfloat, ndarray, shape
If , contains the orthogonal matrix .
If , is overwritten by .
- 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 .
Constraint: .
- (errno )
On entry, error in parameter .
Constraint: and .
- Notes
dgghd3
is the third step in the solution of the real generalized eigenvalue problemThe (optional) first step balances the two matrices using
dggbal()
. In the second step, matrix is reduced to upper triangular form using the factorization functiondgeqrf()
and this orthogonal transformation is applied to matrix by callingdormqr()
. The driver,dggev3()
, solves the real generalized eigenvalue problem by combining all the required steps including those just listed.dgghd3
reduces a pair of real matrices , where is upper triangular, to the generalized upper Hessenberg form using orthogonal transformations. This two-sided transformation is of the formwhere is an upper Hessenberg matrix, is an upper triangular matrix and and are orthogonal matrices determined as products of Givens rotations. They may either be formed explicitly, or they may be postmultiplied into input matrices and , so that
- References
Golub, G H and Van Loan, C F, 2012, Matrix Computations, (4th Edition), Johns Hopkins University Press, Baltimore
Moler, C B and Stewart, G W, 1973, An algorithm for generalized matrix eigenproblems, SIAM J. Numer. Anal. (10), 241–256