laqz2(3)
π NAME π
okay so bestie, this is <pink>laqz2(3)</pink> and she's here with the official name tea: laqz2 β laqz2: step in ggev3, gges3. That's the whole NAME line, no cap. β¨
πΈ SYNOPSIS πΈ
Functions
claqz2 β complex recursive subroutine energy:
recursive subroutine claqz2 (ilschur, ilq, ilz, n, ilo, ihi, nw, a, lda,
b, ldb, q, ldq, z, ldz, ns, nd, alpha, beta, qc, ldqc, zc, ldzc,
work, lwork, rwork, rec, info)
CLAQZ2
dlaqz2 β double precision subroutine:
subroutine dlaqz2 (ilq, ilz, k, istartm, istopm, ihi, a, lda, b, ldb,
nq, qstart, q, ldq, nz, zstart, z, ldz)
DLAQZ2
slaqz2 β real subroutine:
subroutine slaqz2 (ilq, ilz, k, istartm, istopm, ihi, a, lda, b, ldb,
nq, qstart, q, ldq, nz, zstart, z, ldz)
SLAQZ2
zlaqz2 β complex recursive subroutine:
recursive subroutine zlaqz2 (ilschur, ilq, ilz, n, ilo, ihi, nw, a, lda,
b, ldb, q, ldq, z, ldz, ns, nd, alpha, beta, qc, ldqc, zc, ldzc,
work, lwork, rwork, rec, info)
ZLAQZ2
π¦ Detailed Description π¦
The original just has this heading and then jumps straight into the function tea, bestie. No extra high-level paragraph here. π
π Function Documentation π
π
recursive subroutine claqz2 β CLAQZ2
recursive subroutine claqz2 (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,
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,
integer, intent(out) ns, integer, intent(out) nd, complex, dimension( *
), intent(inout) alpha, complex, dimension( * ), intent(inout) beta,
complex, dimension( ldqc, * ) qc, integer, intent(in) ldqc, complex,
dimension( ldzc, * ) zc, integer, intent(in) ldzc, complex, dimension( *
) work, integer, intent(in) lwork, real, dimension( * ) rwork, integer,
intent(in) rec, integer, intent(out) info)
CLAQZ2
Purpose: CLAQZ2 performs AED. That's the whole sentence, bestie. β¨
Parameters:
ILSCHURβLOGICAL. Determines whether or not to update the full Schur form. πILQβLOGICAL. Determines whether or not to update the matrixQ.ILZβLOGICAL. Determines whether or not to update the matrixZ.NβINTEGER. The order of the matricesA,B,Q, andZ.N >= 0.ILOβINTEGER.IHIβINTEGER.ILOandIHImark the rows and columns of(A,B)which are to be normalized.NWβINTEGER. The desired size of the deflation window.AβCOMPLEX array, dimension (LDA, N).LDAβINTEGER. The leading dimension of the arrayA.LDA >= max( 1, N ).BβCOMPLEX array, dimension (LDB, N).LDBβINTEGER. The leading dimension of the arrayB.LDB >= max( 1, N ).QβCOMPLEX array, dimension (LDQ, N).LDQβINTEGER.ZβCOMPLEX array, dimension (LDZ, N).LDZβINTEGER.NSβINTEGER. The number of unconverged eigenvalues available to use as shifts.NDβINTEGER. The number of converged eigenvalues found.ALPHAβCOMPLEX array, dimension (N). Each scalar alpha defining an eigenvalue of GNEP.BETAβCOMPLEX array, dimension (N). The scalars beta that define the eigenvalues of GNEP. Together, the quantitiesalpha = ALPHA(j)andbeta = BETA(j)represent the j-th eigenvalue of the matrix pair(A,B), in one of the formslambda = alpha/betaormu = beta/alpha. Careful, bestie: since either lambda or mu may overflow, they should not, in general, be computed.QCβCOMPLEX array, dimension (LDQC, NW).LDQCβINTEGER.ZCβCOMPLEX array, dimension (LDZC, NW).LDZCβINTEGER. The doc literally saysLDZ is INTEGERright here, so keep that exact energy. π«ΆWORKβCOMPLEX array, dimension (MAX(1,LWORK)). On exit, ifINFO >= 0,WORK(1)returns the optimalLWORK.LWORKβINTEGER. The dimension of the arrayWORK.LWORK >= max(1,N). IfLWORK = -1, then a workspace query is assumed; the routine only calculates the optimal size of theWORKarray, returns this value as the first entry of theWORKarray, and no error message related toLWORKis issued byXERBLA.RWORKβREAL array, dimension (N).RECβINTEGER.RECindicates the current recursion level. Should be set to0on first call.INFOβINTEGER.= 0: successful exit.< 0: ifINFO = -i, the i-th argument had an illegal value.
Author: Thijs Steel, KU Leuven, KU Leuven
Date: May 2020
Definition at line 231 of file claqz2.f.
π
subroutine dlaqz2 β DLAQZ2
subroutine dlaqz2 (logical, intent(in) ilq, logical, intent(in) ilz,
integer, intent(in) k, integer, intent(in) istartm, integer, intent(in)
istopm, integer, intent(in) ihi, double precision, dimension( lda, * )
a, integer, intent(in) lda, double precision, dimension( ldb, * ) b,
integer, intent(in) ldb, integer, intent(in) nq, integer, intent(in)
qstart, double precision, dimension( ldq, * ) q, integer, intent(in)
ldq, integer, intent(in) nz, integer, intent(in) zstart, double
precision, dimension( ldz, * ) z, integer,
intent(in) ldz)
DLAQZ2
Purpose: DLAQZ2 chases a 2x2 shift bulge in a matrix pencil down a single position. Periodt. π
Parameters:
ILQβLOGICAL. Determines whether or not to update the matrixQ.ILZβLOGICAL. Determines whether or not to update the matrixZ.KβINTEGER. Index indicating the position of the bulge. On entry, the bulge is located in(A(k+1:k+2,k:k+1),B(k+1:k+2,k:k+1)). On exit, the bulge is located in(A(k+2:k+3,k+1:k+2),B(k+2:k+3,k+1:k+2)).ISTARTMβINTEGER.ISTOPMβINTEGER. Updates to(A,B)are restricted to(istartm:k+3,k:istopm). No cap, it assumes without checking thatistartm <= k+1andk+2 <= istopm.IHIβINTEGER.AβDOUBLE PRECISION array, dimension (LDA,N).LDAβINTEGER. The leading dimension ofAas declared in the calling procedure.BβDOUBLE PRECISION array, dimension (LDB,N).LDBβINTEGER. The leading dimension ofBas declared in the calling procedure.NQβINTEGER. The order of the matrixQ.QSTARTβINTEGER. Start index of the matrixQ. Rotations are applied to columnsk+2-qStart:k+4-qStartofQ.QβDOUBLE PRECISION array, dimension (LDQ,NQ).LDQβINTEGER. The leading dimension ofQas declared in the calling procedure.NZβINTEGER. The order of the matrixZ.ZSTARTβINTEGER. Start index of the matrixZ. Rotations are applied to columnsk+1-qStart:k+3-qStartofZ.ZβDOUBLE PRECISION array, dimension (LDZ,NZ).LDZβINTEGER. The leading dimension ofQas declared in the calling procedure. Yes, it saysQhere β keep it exact, bestie. π
Author: Thijs Steel, KU Leuven
Date: May 2020
Definition at line 172 of file dlaqz2.f.
π
subroutine slaqz2 β SLAQZ2
subroutine slaqz2 (logical, intent(in) ilq, logical, intent(in) ilz,
integer, intent(in) k, integer, intent(in) istartm, integer, intent(in)
istopm, integer, intent(in) ihi, real, dimension( lda, * ) a, integer,
intent(in) lda, real, dimension( ldb, * ) b, integer, intent(in) ldb,
integer, intent(in) nq, integer, intent(in) qstart, real, dimension(
ldq, * ) q, integer, intent(in) ldq, integer, intent(in) nz, integer,
intent(in) zstart, real, dimension( ldz, * ) z, integer, intent(in) ldz)
SLAQZ2
Purpose: SLAQZ2 chases a 2x2 shift bulge in a matrix pencil down a single position. That's the whole purpose, bestie. π₯
Parameters:
ILQβLOGICAL. Determines whether or not to update the matrixQ.ILZβLOGICAL. Determines whether or not to update the matrixZ.KβINTEGER. Index indicating the position of the bulge. On entry, the bulge is located in(A(k+1:k+2,k:k+1),B(k+1:k+2,k:k+1)). On exit, the bulge is located in(A(k+2:k+3,k+1:k+2),B(k+2:k+3,k+1:k+2)).ISTARTMβINTEGER.ISTOPMβ part 1 stops right here, bestie; the rest of this parameter and page rolls in part 2. πISTOPMβ INTEGER. Updates to(A,B)are restricted to(istartm:k+3,k:istopm). It's assumed β without checking β thatistartm <= k+1andk+2 <= istopm. So likeβ¦ if that's not true, that's between you and the compiler bestie πIHIβ INTEGER. That's it. That's the whole note. She's mysterious πAβ REAL array, dimension(LDA,N). iconic, no notes.LDAβ INTEGER. The leading dimension ofAas declared in the calling procedure.Bβ REAL array, dimension(LDB,N).LDBβ INTEGER. The leading dimension ofBas declared in the calling procedure.NQβ INTEGER. The order of the matrixQ.QSTARTβ INTEGER. Start index of the matrixQ. Rotations are applied to columnsk+2-qStart:k+4-qStartofQ. lowkey specific, we love that β¨Qβ REAL array, dimension(LDQ,NQ).LDQβ INTEGER. The leading dimension ofQas declared in the calling procedure.NZβ INTEGER. The order of the matrixZ.ZSTARTβ INTEGER. Start index of the matrixZ. Rotations are applied to columnsk+1-qStart:k+3-qStartofZ.Zβ REAL array, dimension(LDZ,NZ).LDZβ INTEGER. "The leading dimension ofQas declared in the calling procedure." Yeah. It saysQ. We are keeping it exactly like the source says it, do not come for me π
Author
Thijs Steel, KU Leuven π«Ά
Date
May 2020 πΈ
Definition
Definition at line 171 of file slaqz2.f.
Okay so now the complex twin shows up and she is long. Same energy, COMPLEX*16 everything, and the entire signature is a whole mood:
recursive subroutine zlaqz2 (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,
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, integer, intent(out) ns,
integer, intent(out) nd, complex*16, dimension( * ), intent(inout)
alpha, complex*16, dimension( * ), intent(inout) beta, complex*16,
dimension( ldqc, * ) qc, integer, intent(in) ldqc, complex*16,
dimension( ldzc, * ) zc, integer, intent(in) ldzc, complex*16,
dimension( * ) work, integer, intent(in) lwork, double precision,
dimension( * ) rwork, integer, intent(in) rec, integer, intent(out)
info)
ZLAQZ2
Purpose
ZLAQZ2 performs AED π
like, that's the whole purpose statement, she's concise.
Parameters
ILSCHURβ LOGICAL. Determines whether or not to update the full Schur form.ILQβ LOGICAL. Determines whether or not to update the matrixQ.ILZβ LOGICAL. Determines whether or not to update the matrixZ.Nβ INTEGER. The order of the matricesA,B,Q, andZ.N >= 0. (no cap, literally zero is allowed π)ILOβ INTEGER.IHIβ INTEGER.ILOandIHImark the rows and columns of(A,B)which are to be normalized.NWβ INTEGER. The desired size of the deflation window. main character energy.Aβ COMPLEX*16 array, dimension(LDA, N).LDAβ INTEGER. The leading dimension of the arrayA.LDA >= max( 1, N ).Bβ COMPLEX*16 array, dimension(LDB, N).LDBβ INTEGER. The leading dimension of the arrayB.LDB >= max( 1, N ).Qβ COMPLEX*16 array, dimension(LDQ, N).LDQβ INTEGER.Zβ COMPLEX*16 array, dimension(LDZ, N).LDZβ INTEGER.NSβ INTEGER. The number of unconverged eigenvalues available to use as shifts.NDβ INTEGER. The number of converged eigenvalues found. slay β¨ALPHAβ COMPLEX*16 array, dimension(N). Each scalar alpha defining an eigenvalue of GNEP.BETAβ COMPLEX*16 array, dimension(N). The scalars beta that define the eigenvalues of GNEP. Together, the quantitiesalpha = ALPHA(j)andbeta = BETA(j)represent the j-th eigenvalue of the matrix pair(A,B), in one of the formslambda = alpha/betaormu = beta/alpha. Since either lambda or mu may overflow, they should not, in general, be computed. π«Ά that last bit is a real warning, not a joke β do not compute them.QCβ COMPLEX*16 array, dimension(LDQC, NW).LDQCβ INTEGER.ZCβ COMPLEX*16 array, dimension(LDZC, NW).LDZCβ INTEGER. (and the description literally says "LDZ is INTEGER" β yes,LDZ. NotLDZC. We're preserving the typo like a museum piece π)WORKβ COMPLEX*16 array, dimension(MAX(1,LWORK)). On exit, ifINFO >= 0,WORK(1)returns the optimalLWORK.LWORKβ INTEGER. The dimension of the arrayWORK.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. π classic
RWORKβ DOUBLE PRECISION array, dimension(N).RECβ INTEGER.RECindicates the current recursion level. Should be set to0on first call. seriously, set it to0, first-call bestie πINFOβ INTEGER.= 0: successful exit.< 0: ifINFO = -i, the i-th argument had an illegal value.
Author
Thijs Steel, KU Leuven π«Ά
Date
May 2020 πΈ
Definition
Definition at line 230 of file zlaqz2.f.
Author
Generated automatically by Doxygen for LAPACK from the source code. π€π
okay that's the whole page!! go forth and deflate some eigenvalues bestie π¦
and that's a wrap on laqz2(3) from LAPACK, Version 3.12.0, dated May 2020 β see u in the next manpage, mwah π
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms