Visible to Intel only — GUID: GUID-FFAF7A3C-A508-4402-B351-5851A691416F
Visible to Intel only — GUID: GUID-FFAF7A3C-A508-4402-B351-5851A691416F
?ggbak
Forms the right or left eigenvectors of a generalized eigenvalue problem.
Syntax
lapack_int LAPACKE_sggbak( int matrix_layout, char job, char side, lapack_int n, lapack_int ilo, lapack_int ihi, const float* lscale, const float* rscale, lapack_int m, float* v, lapack_int ldv );
lapack_int LAPACKE_dggbak( int matrix_layout, char job, char side, lapack_int n, lapack_int ilo, lapack_int ihi, const double* lscale, const double* rscale, lapack_int m, double* v, lapack_int ldv );
lapack_int LAPACKE_cggbak( int matrix_layout, char job, char side, lapack_int n, lapack_int ilo, lapack_int ihi, const float* lscale, const float* rscale, lapack_int m, lapack_complex_float* v, lapack_int ldv );
lapack_int LAPACKE_zggbak( int matrix_layout, char job, char side, lapack_int n, lapack_int ilo, lapack_int ihi, const double* lscale, const double* rscale, lapack_int m, lapack_complex_double* v, lapack_int ldv );
Include Files
- mkl.h
Description
The routine forms the right or left eigenvectors of a real/complex generalized eigenvalue problem
A*x = λ*B*x
by backward transformation on the computed eigenvectors of the balanced pair of matrices output by ggbal.
Input Parameters
- matrix_layout
-
Specifies whether matrix storage layout is row major (LAPACK_ROW_MAJOR) or column major (LAPACK_COL_MAJOR).
- job
-
Specifies the type of backward transformation required. Must be 'N', 'P', 'S', or 'B'.
If job = 'N', then no operations are done; return.
If job = 'P', then do backward transformation for permutation only.
If job = 'S', then do backward transformation for scaling only.
If job = 'B', then do backward transformation for both permutation and scaling. This argument must be the same as the argument job supplied to ?ggbal.
- side
-
Must be 'L' or 'R'.
If side = 'L', then v contains left eigenvectors.
If side = 'R', then v contains right eigenvectors.
- n
-
The number of rows of the matrix V (n≥ 0).
- ilo, ihi
-
The integers ilo and ihi determined by ?gebal. Constraint:
If n > 0, then 1 ≤ilo≤ihi≤n;
if n = 0, then ilo = 1 and ihi = 0.
- lscale, rscale
-
Arrays, size at least max(1, n).
The array lscale contains details of the permutations and/or scaling factors applied to the left side of A and B, as returned by ?ggbal.
The array rscale contains details of the permutations and/or scaling factors applied to the right side of A and B, as returned by ?ggbal.
- m
-
The number of columns of the matrix V
(m≥ 0).
- v
-
Array v(size max(1, ldv*m) for column major layout and max(1, ldv*n) for row major layout) . Contains the matrix of right or left eigenvectors to be transformed, as returned by tgevc.
- ldv
-
The leading dimension of v; at least max(1, n) for column major layout and at least max(1, m) for row major layout .
Output Parameters
- v
-
Overwritten by the transformed eigenvectors
Return Values
This function returns a value info.
If info=0, the execution is successful.
If info = -i, the i-th parameter had an illegal value.