ZLAQR2(3)
π ZLAQR2(3) β aggressive early deflation, but make it fashion π
okay so bestie, welcome to the Library Functions Manual page for zlaqr2.f π. The full source path is /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zlaqr2.f, and the page itself is sitting at /home/abui...RC/zlaqr2.f(3). This is the LAPACK subroutine that does aggressive early deflation, and it is lowkey iconic. No cap.
β¨ NAME β¨
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zlaqr2.f β that's the file, bestie. It's the ZLAQR2 subroutine page from the Library Functions Manual. The vibe? Aggressive early deflation. Periodt.
πΈ SYNOPSIS πΈ
π Functions/Subroutines π
Here's the subroutine, exactly as advertised:
subroutine ZLAQR2 (wantt, wantz, n, ktop, kbot, nw, h, ldh, iloz, ihiz,
z, ldz, ns, nd, sh, v, ldv, nh, t, ldt, nv, wv, ldwv, work, lwork)
And the one-line tea: ZLAQR2 performs the unitary similarity transformation of a Hessenberg matrix to detect and deflate fully converged eigenvalues from a trailing principal submatrix (aggressive early deflation).
π¦ Function/Subroutine Documentation π¦
β¨ subroutine ZLAQR2 β¨
Full signature, copied with love and zero edits:
subroutine ZLAQR2 (logical wantt, logical wantz, integer n, integer ktop,
integer kbot, integer nw, complex*16, dimension( ldh, * ) h, integer
ldh, integer iloz, integer ihiz, complex*16, dimension( ldz, * ) z,
integer ldz, integer ns, integer nd, complex*16, dimension( * ) sh,
complex*16, dimension( ldv, * ) v, integer ldv, integer nh, complex*16,
dimension( ldt, * ) t, integer ldt, integer nv, complex*16, dimension(
ldwv, * ) wv, integer ldwv, complex*16, dimension( * ) work, integer
lwork)
ZLAQR2 performs the unitary similarity transformation of a Hessenberg matrix to detect and deflate fully converged eigenvalues from a trailing principal submatrix (aggressive early deflation).
π Purpose π
okay so the purpose, in bestie terms: ZLAQR2 is identical to ZLAQR3 except that it avoids recursion by calling ZLAHQR instead of ZLAQR4. That's the whole flex. π
Aggressive early deflation: ZLAQR2 accepts as input an upper Hessenberg matrix H and performs a unitary similarity transformation designed to detect and deflate fully converged eigenvalues from a trailing principal submatrix. On output H has been overwritten by a new Hessenberg matrix that is a perturbation of a unitary similarity transformation of H. It is to be hoped that the final version of H has many zero subdiagonal entries. π
π Parameters π
WANTTβWANTT is LOGICAL. If.TRUE., then the Hessenberg matrixHis fully updated so that the triangular Schur factor may be computed (in cooperation with the calling subroutine). If.FALSE., then only enough ofHis updated to preserve the eigenvalues.WANTZβWANTZ is LOGICAL. If.TRUE., then the unitary matrixZis updated so that the unitary Schur factor may be computed (in cooperation with the calling subroutine). If.FALSE., thenZis not referenced.NβN is INTEGER. The order of the matrixHand (ifWANTZis.TRUE.) the order of the unitary matrixZ.KTOPβKTOP is INTEGER. It is assumed that eitherKTOP = 1orH(KTOP,KTOP-1)=0.KBOTandKTOPtogether determine an isolated block along the diagonal of the Hessenberg matrix.KBOTβKBOT is INTEGER. It is assumed without a check that eitherKBOT = NorH(KBOT+1,KBOT)=0.KBOTandKTOPtogether determine an isolated block along the diagonal of the Hessenberg matrix.NWβNW is INTEGER. Deflation window size.1 <= NW <= (KBOT-KTOP+1).HβH is COMPLEX*16 array, dimension (LDH,N). On input the initialN-by-Nsection ofHstores the Hessenberg matrix undergoing aggressive early deflation. On outputHhas been transformed by a unitary similarity transformation, perturbed, and returned to Hessenberg form that (it is to be hoped) has some zero subdiagonal entries.LDHβLDH is INTEGER. Leading dimension ofHjust as declared in the calling subroutine.N <= LDH.ILOZβILOZ is INTEGER.IHIZβIHIZ is INTEGER. Specify the rows ofZto which transformations must be applied ifWANTZis.TRUE..1 <= ILOZ <= IHIZ <= N.ZβZ is COMPLEX*16 array, dimension (LDZ,N). IfWANTZis.TRUE., then on output, the unitary similarity transformation mentioned above has been accumulated intoZ(ILOZ:IHIZ,ILOZ:IHIZ)from the right. IfWANTZis.FALSE., thenZis unreferenced.LDZβLDZ is INTEGER. The leading dimension ofZjust as declared in the calling subroutine.1 <= LDZ.NSβNS is INTEGER. The number of unconverged (ie approximate) eigenvalues returned inSRandSIthat may be used as shifts by the calling subroutine.NDβND is INTEGER. The number of converged eigenvalues uncovered by this subroutine.SHβSH is COMPLEX*16 array, dimension (KBOT). On output, approximate eigenvalues that may be used for shifts are stored inSH(KBOT-ND-NS+1)throughSR(KBOT-ND). Converged eigenvalues are stored inSH(KBOT-ND+1)throughSH(KBOT).VβV is COMPLEX*16 array, dimension (LDV,NW). AnNW-by-NWwork array.LDVβLDV is INTEGER. The leading dimension ofVjust as declared in the calling subroutine.NW <= LDV.NHβNH is INTEGER. The number of columns ofT.NH >= NW.TβT is COMPLEX*16 array, dimension (LDT,NW).LDTβLDT is INTEGER. The leading dimension ofTjust as declared in the calling subroutine.NW <= LDT.NVβNV is INTEGER. The number of rows of work arrayWVavailable for workspace.NV >= NW.WVβWV is COMPLEX*16 array, dimension (LDWV,NW).LDWVβLDWV is INTEGER. The leading dimension ofWjust as declared in the calling subroutine.NW <= LDV.WORKβWORK is COMPLEX*16 array, dimension (LWORK). On exit,WORK(1)is set to an estimate of the optimal value ofLWORKfor the given values ofN,NW,KTOPandKBOT.LWORKβLWORK is INTEGER. The dimension of the work arrayWORK.LWORK = 2*NWsuffices, but greater efficiency may result from larger values ofLWORK.
If LWORK = -1, then a workspace query is assumed; ZLAQR2 only estimates the optimal workspace size for the given values of N, NW, KTOP and KBOT. The estimate is returned in WORK(1). No error message related to LWORK is issued by XERBLA. Neither H nor Z are accessed.
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π Contributors: π
Karen Braman and Ralph Byers, Department of Mathematics, University of Kansas, USA.
Definition at line 267 of file zlaqr2.f.
π Author (the autogenerated one) π
Generated automatically by Doxygen for LAPACK from the source code.
cute sign-off time π«Ά: this page is from LAPACK Version 3.12.0, at /home/abui...RC/zlaqr2.f(3). No date is printed on this page, so we're not inventing one β slay responsibly πβ¨ππ¦πΈπ
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms