cggbak - form the right or left eigenvectors of a complex generalized eigenvalue problem A*x = lambda*B*x, by backward transformation on the computed eigenvectors of the balanced pair of matrices output by CGGBAL
SUBROUTINE CGGBAK( JOB, SIDE, N, ILO, IHI, LSCALE, RSCALE, M, V, * LDV, INFO) CHARACTER * 1 JOB, SIDE COMPLEX V(LDV,*) INTEGER N, ILO, IHI, M, LDV, INFO REAL LSCALE(*), RSCALE(*)
SUBROUTINE CGGBAK_64( JOB, SIDE, N, ILO, IHI, LSCALE, RSCALE, M, V, * LDV, INFO) CHARACTER * 1 JOB, SIDE COMPLEX V(LDV,*) INTEGER*8 N, ILO, IHI, M, LDV, INFO REAL LSCALE(*), RSCALE(*)
SUBROUTINE GGBAK( JOB, SIDE, [N], ILO, IHI, LSCALE, RSCALE, [M], V, * [LDV], [INFO]) CHARACTER(LEN=1) :: JOB, SIDE COMPLEX, DIMENSION(:,:) :: V INTEGER :: N, ILO, IHI, M, LDV, INFO REAL, DIMENSION(:) :: LSCALE, RSCALE
SUBROUTINE GGBAK_64( JOB, SIDE, [N], ILO, IHI, LSCALE, RSCALE, [M], * V, [LDV], [INFO]) CHARACTER(LEN=1) :: JOB, SIDE COMPLEX, DIMENSION(:,:) :: V INTEGER(8) :: N, ILO, IHI, M, LDV, INFO REAL, DIMENSION(:) :: LSCALE, RSCALE
#include <sunperf.h>
void cggbak(char job, char side, int n, int ilo, int ihi, float *lscale, float *rscale, int m, complex *v, int ldv, int *info);
void cggbak_64(char job, char side, long n, long ilo, long ihi, float *lscale, float *rscale, long m, complex *v, long ldv, long *info);
cggbak forms the right or left eigenvectors of a complex generalized eigenvalue problem A*x = lambda*B*x, by backward transformation on the computed eigenvectors of the balanced pair of matrices output by CGGBAL.
= 'N': do nothing, return immediately;
= 'P': do backward transformation for permutation only;
= 'S': do backward transformation for scaling only;
= 'B': do backward transformations for both permutation and scaling. JOB must be the same as the argument JOB supplied to CGGBAL.
= 'R': V contains right eigenvectors;
= 'L': V contains left eigenvectors.
= 0: successful exit.
< 0: if INFO = -i, the i-th argument had an illegal value.
See R.C. Ward, Balancing the generalized eigenvalue problem, SIAM J. Sci. Stat. Comp. 2 (1981), 141-152.