Provided by: liblapack-doc_3.12.0-3build1.1_all
NAME
laqz3 - laqz3: step in ggev3, gges3
SYNOPSIS
Functions subroutine claqz3 (ilschur, ilq, ilz, n, ilo, ihi, nshifts, nblock_desired, alpha, beta, a, lda, b, ldb, q, ldq, z, ldz, qc, ldqc, zc, ldzc, work, lwork, info) CLAQZ3 recursive subroutine dlaqz3 (ilschur, ilq, ilz, n, ilo, ihi, nw, a, lda, b, ldb, q, ldq, z, ldz, ns, nd, alphar, alphai, beta, qc, ldqc, zc, ldzc, work, lwork, rec, info) DLAQZ3 recursive subroutine slaqz3 (ilschur, ilq, ilz, n, ilo, ihi, nw, a, lda, b, ldb, q, ldq, z, ldz, ns, nd, alphar, alphai, beta, qc, ldqc, zc, ldzc, work, lwork, rec, info) SLAQZ3 subroutine zlaqz3 (ilschur, ilq, ilz, n, ilo, ihi, nshifts, nblock_desired, alpha, beta, a, lda, b, ldb, q, ldq, z, ldz, qc, ldqc, zc, ldzc, work, lwork, info) ZLAQZ3
Detailed Description
Function Documentation
subroutine claqz3 (logical, intent(in) ilschur, logical, intent(in) ilq, logical, intent(in) ilz, integer, intent(in) n, integer, intent(in) ilo, integer, intent(in) ihi, integer, intent(in) nshifts, integer, intent(in) nblock_desired, complex, dimension( * ), intent(inout) alpha, complex, dimension( * ), intent(inout) beta, complex, dimension( lda, * ), intent(inout) a, integer, intent(in) lda, complex, dimension( ldb, * ), intent(inout) b, integer, intent(in) ldb, complex, dimension( ldq, * ), intent(inout) q, integer, intent(in) ldq, complex, dimension( ldz, * ), intent(inout) z, integer, intent(in) ldz, complex, dimension( ldqc, * ), intent(inout) qc, integer, intent(in) ldqc, complex, dimension( ldzc, * ), intent(inout) zc, integer, intent(in) ldzc, complex, dimension( * ), intent(inout) work, integer, intent(in) lwork, integer, intent(out) info) CLAQZ3 Purpose: CLAQZ3 Executes a single multishift QZ sweep Parameters ILSCHUR ILSCHUR is LOGICAL Determines whether or not to update the full Schur form ILQ ILQ is LOGICAL Determines whether or not to update the matrix Q ILZ ILZ is LOGICAL Determines whether or not to update the matrix Z N N is INTEGER The order of the matrices A, B, Q, and Z. N >= 0. ILO ILO is INTEGER IHI IHI is INTEGER NSHIFTS NSHIFTS is INTEGER The desired number of shifts to use NBLOCK_DESIRED NBLOCK_DESIRED is INTEGER The desired size of the computational windows ALPHA ALPHA is COMPLEX array. SR contains the alpha parts of the shifts to use. BETA BETA is COMPLEX array. SS contains the scale of the shifts to use. A A is COMPLEX array, dimension (LDA, N) LDA LDA is INTEGER The leading dimension of the array A. LDA >= max( 1, N ). B B is COMPLEX array, dimension (LDB, N) LDB LDB is INTEGER The leading dimension of the array B. LDB >= max( 1, N ). Q Q is COMPLEX array, dimension (LDQ, N) LDQ LDQ is INTEGER Z Z is COMPLEX array, dimension (LDZ, N) LDZ LDZ is INTEGER QC QC is COMPLEX array, dimension (LDQC, NBLOCK_DESIRED) LDQC LDQC is INTEGER ZC ZC is COMPLEX array, dimension (LDZC, NBLOCK_DESIRED) LDZC LDZ is INTEGER WORK WORK is COMPLEX array, dimension (MAX(1,LWORK)) On exit, if INFO >= 0, WORK(1) returns the optimal LWORK. LWORK LWORK is INTEGER The dimension of the array WORK. LWORK >= max(1,N). If LWORK = -1, then a workspace query is assumed; the routine only calculates the optimal size of the WORK array, returns this value as the first entry of the WORK array, and no error message related to LWORK is issued by XERBLA. INFO INFO is INTEGER = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value Author Thijs Steel, KU Leuven Date May 2020 recursive subroutine dlaqz3 (logical, intent(in) ilschur, logical, intent(in) ilq, logical, intent(in) ilz, integer, intent(in) n, integer, intent(in) ilo, integer, intent(in) ihi, integer, intent(in) nw, double precision, dimension( lda, * ), intent(inout) a, integer, intent(in) lda, double precision, dimension( ldb, * ), intent(inout) b, integer, intent(in) ldb, double precision, dimension( ldq, * ), intent(inout) q, integer, intent(in) ldq, double precision, dimension( ldz, * ), intent(inout) z, integer, intent(in) ldz, integer, intent(out) ns, integer, intent(out) nd, double precision, dimension( * ), intent(inout) alphar, double precision, dimension( * ), intent(inout) alphai, double precision, dimension( * ), intent(inout) beta, double precision, dimension( ldqc, * ) qc, integer, intent(in) ldqc, double precision, dimension( ldzc, * ) zc, integer, intent(in) ldzc, double precision, dimension( * ) work, integer, intent(in) lwork, integer, intent(in) rec, integer, intent(out) info) DLAQZ3 Purpose: DLAQZ3 performs AED Parameters ILSCHUR ILSCHUR is LOGICAL Determines whether or not to update the full Schur form ILQ ILQ is LOGICAL Determines whether or not to update the matrix Q ILZ ILZ is LOGICAL Determines whether or not to update the matrix Z N N is INTEGER The order of the matrices A, B, Q, and Z. N >= 0. ILO ILO is INTEGER IHI IHI is INTEGER ILO and IHI mark the rows and columns of (A,B) which are to be normalized NW NW is INTEGER The desired size of the deflation window. A A is DOUBLE PRECISION array, dimension (LDA, N) LDA LDA is INTEGER The leading dimension of the array A. LDA >= max( 1, N ). B B is DOUBLE PRECISION array, dimension (LDB, N) LDB LDB is INTEGER The leading dimension of the array B. LDB >= max( 1, N ). Q Q is DOUBLE PRECISION array, dimension (LDQ, N) LDQ LDQ is INTEGER Z Z is DOUBLE PRECISION array, dimension (LDZ, N) LDZ LDZ is INTEGER NS NS is INTEGER The number of unconverged eigenvalues available to use as shifts. ND ND is INTEGER The number of converged eigenvalues found. ALPHAR ALPHAR is DOUBLE PRECISION array, dimension (N) The real parts of each scalar alpha defining an eigenvalue of GNEP. ALPHAI ALPHAI is DOUBLE PRECISION array, dimension (N) The imaginary parts of each scalar alpha defining an eigenvalue of GNEP. If ALPHAI(j) is zero, then the j-th eigenvalue is real; if positive, then the j-th and (j+1)-st eigenvalues are a complex conjugate pair, with ALPHAI(j+1) = -ALPHAI(j). BETA BETA is DOUBLE PRECISION array, dimension (N) The scalars beta that define the eigenvalues of GNEP. Together, the quantities alpha = (ALPHAR(j),ALPHAI(j)) and beta = BETA(j) represent the j-th eigenvalue of the matrix pair (A,B), in one of the forms lambda = alpha/beta or mu = beta/alpha. Since either lambda or mu may overflow, they should not, in general, be computed. QC QC is DOUBLE PRECISION array, dimension (LDQC, NW) LDQC LDQC is INTEGER ZC ZC is DOUBLE PRECISION array, dimension (LDZC, NW) LDZC LDZ is INTEGER WORK WORK is DOUBLE PRECISION array, dimension (MAX(1,LWORK)) On exit, if INFO >= 0, WORK(1) returns the optimal LWORK. LWORK LWORK is INTEGER The dimension of the array WORK. LWORK >= max(1,N). If LWORK = -1, then a workspace query is assumed; the routine only calculates the optimal size of the WORK array, returns this value as the first entry of the WORK array, and no error message related to LWORK is issued by XERBLA. REC REC is INTEGER REC indicates the current recursion level. Should be set to 0 on first call. INFO INFO is INTEGER = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value Author Thijs Steel, KU Leuven Date May 2020 recursive subroutine slaqz3 (logical, intent(in) ilschur, logical, intent(in) ilq, logical, intent(in) ilz, integer, intent(in) n, integer, intent(in) ilo, integer, intent(in) ihi, integer, intent(in) nw, real, dimension( lda, * ), intent(inout) a, integer, intent(in) lda, real, dimension( ldb, * ), intent(inout) b, integer, intent(in) ldb, real, dimension( ldq, * ), intent(inout) q, integer, intent(in) ldq, real, dimension( ldz, * ), intent(inout) z, integer, intent(in) ldz, integer, intent(out) ns, integer, intent(out) nd, real, dimension( * ), intent(inout) alphar, real, dimension( * ), intent(inout) alphai, real, dimension( * ), intent(inout) beta, real, dimension( ldqc, * ) qc, integer, intent(in) ldqc, real, dimension( ldzc, * ) zc, integer, intent(in) ldzc, real, dimension( * ) work, integer, intent(in) lwork, integer, intent(in) rec, integer, intent(out) info) SLAQZ3 Purpose: SLAQZ3 performs AED Parameters ILSCHUR ILSCHUR is LOGICAL Determines whether or not to update the full Schur form ILQ ILQ is LOGICAL Determines whether or not to update the matrix Q ILZ ILZ is LOGICAL Determines whether or not to update the matrix Z N N is INTEGER The order of the matrices A, B, Q, and Z. N >= 0. ILO ILO is INTEGER IHI IHI is INTEGER ILO and IHI mark the rows and columns of (A,B) which are to be normalized NW NW is INTEGER The desired size of the deflation window. A A is REAL array, dimension (LDA, N) LDA LDA is INTEGER The leading dimension of the array A. LDA >= max( 1, N ). B B is REAL array, dimension (LDB, N) LDB LDB is INTEGER The leading dimension of the array B. LDB >= max( 1, N ). Q Q is REAL array, dimension (LDQ, N) LDQ LDQ is INTEGER Z Z is REAL array, dimension (LDZ, N) LDZ LDZ is INTEGER NS NS is INTEGER The number of unconverged eigenvalues available to use as shifts. ND ND is INTEGER The number of converged eigenvalues found. ALPHAR ALPHAR is REAL array, dimension (N) The real parts of each scalar alpha defining an eigenvalue of GNEP. ALPHAI ALPHAI is REAL array, dimension (N) The imaginary parts of each scalar alpha defining an eigenvalue of GNEP. If ALPHAI(j) is zero, then the j-th eigenvalue is real; if positive, then the j-th and (j+1)-st eigenvalues are a complex conjugate pair, with ALPHAI(j+1) = -ALPHAI(j). BETA BETA is REAL array, dimension (N) The scalars beta that define the eigenvalues of GNEP. Together, the quantities alpha = (ALPHAR(j),ALPHAI(j)) and beta = BETA(j) represent the j-th eigenvalue of the matrix pair (A,B), in one of the forms lambda = alpha/beta or mu = beta/alpha. Since either lambda or mu may overflow, they should not, in general, be computed. QC QC is REAL array, dimension (LDQC, NW) LDQC LDQC is INTEGER ZC ZC is REAL array, dimension (LDZC, NW) LDZC LDZ is INTEGER WORK WORK is REAL array, dimension (MAX(1,LWORK)) On exit, if INFO >= 0, WORK(1) returns the optimal LWORK. LWORK LWORK is INTEGER The dimension of the array WORK. LWORK >= max(1,N). If LWORK = -1, then a workspace query is assumed; the routine only calculates the optimal size of the WORK array, returns this value as the first entry of the WORK array, and no error message related to LWORK is issued by XERBLA. REC REC is INTEGER REC indicates the current recursion level. Should be set to 0 on first call. INFO INFO is INTEGER = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value Author Thijs Steel, KU Leuven Date May 2020 subroutine zlaqz3 (logical, intent(in) ilschur, logical, intent(in) ilq, logical, intent(in) ilz, integer, intent(in) n, integer, intent(in) ilo, integer, intent(in) ihi, integer, intent(in) nshifts, integer, intent(in) nblock_desired, complex*16, dimension( * ), intent(inout) alpha, complex*16, dimension( * ), intent(inout) beta, complex*16, dimension( lda, * ), intent(inout) a, integer, intent(in) lda, complex*16, dimension( ldb, * ), intent(inout) b, integer, intent(in) ldb, complex*16, dimension( ldq, * ), intent(inout) q, integer, intent(in) ldq, complex*16, dimension( ldz, * ), intent(inout) z, integer, intent(in) ldz, complex*16, dimension( ldqc, * ), intent(inout) qc, integer, intent(in) ldqc, complex*16, dimension( ldzc, * ), intent(inout) zc, integer, intent(in) ldzc, complex*16, dimension( * ), intent(inout) work, integer, intent(in) lwork, integer, intent(out) info) ZLAQZ3 Purpose: ZLAQZ3 Executes a single multishift QZ sweep Parameters ILSCHUR ILSCHUR is LOGICAL Determines whether or not to update the full Schur form ILQ ILQ is LOGICAL Determines whether or not to update the matrix Q ILZ ILZ is LOGICAL Determines whether or not to update the matrix Z N N is INTEGER The order of the matrices A, B, Q, and Z. N >= 0. ILO ILO is INTEGER IHI IHI is INTEGER NSHIFTS NSHIFTS is INTEGER The desired number of shifts to use NBLOCK_DESIRED NBLOCK_DESIRED is INTEGER The desired size of the computational windows ALPHA ALPHA is COMPLEX*16 array. SR contains the alpha parts of the shifts to use. BETA BETA is COMPLEX*16 array. SS contains the scale of the shifts to use. A A is COMPLEX*16 array, dimension (LDA, N) LDA LDA is INTEGER The leading dimension of the array A. LDA >= max( 1, N ). B B is COMPLEX*16 array, dimension (LDB, N) LDB LDB is INTEGER The leading dimension of the array B. LDB >= max( 1, N ). Q Q is COMPLEX*16 array, dimension (LDQ, N) LDQ LDQ is INTEGER Z Z is COMPLEX*16 array, dimension (LDZ, N) LDZ LDZ is INTEGER QC QC is COMPLEX*16 array, dimension (LDQC, NBLOCK_DESIRED) LDQC LDQC is INTEGER ZC ZC is COMPLEX*16 array, dimension (LDZC, NBLOCK_DESIRED) LDZC LDZ is INTEGER WORK WORK is COMPLEX*16 array, dimension (MAX(1,LWORK)) On exit, if INFO >= 0, WORK(1) returns the optimal LWORK. LWORK LWORK is INTEGER The dimension of the array WORK. LWORK >= max(1,N). If LWORK = -1, then a workspace query is assumed; the routine only calculates the optimal size of the WORK array, returns this value as the first entry of the WORK array, and no error message related to LWORK is issued by XERBLA. INFO INFO is INTEGER = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value Author Thijs Steel, KU Leuven Date May 2020
Author
Generated automatically by Doxygen for LAPACK from the source code.