SRC/claqr2.f(3)
π SRC/claqr2.f π
okay bestie, welcome to the SRC/claqr2.f(3) page from the Library Functions Manual β it's giving "LAPACK subroutine with main character energy," and I'm obsessed. This one is all about CLAQR2, aggressive early deflation, and a truly iconic amount of parameters. Buckle up π
β¨ NAME β¨
SRC/claqr2.f
π¦ SYNOPSIS π¦
Functions/Subroutines
subroutine claqr2 (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)
CLAQR2 performs the unitary similarity transformation of a Hessenberg matrix to detect and deflate fully converged eigenvalues from a trailing principal submatrix (aggressive early deflation). Periodt. π
πΈ Function/Subroutine Documentation πΈ
π subroutine claqr2
subroutine claqr2 (logical wantt, logical wantz, integer n, integer ktop,
integer kbot, integer nw, complex, dimension( ldh, * ) h, integer ldh,
integer iloz, integer ihiz, complex, dimension( ldz, * ) z, integer ldz,
integer ns, integer nd, complex, dimension( * ) sh, complex, dimension(
ldv, * ) v, integer ldv, integer nh, complex, dimension( ldt, * ) t,
integer ldt, integer nv, complex, dimension( ldwv, * ) wv, integer ldwv,
complex, dimension( * ) work, integer lwork)
CLAQR2 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
CLAQR2is identical toCLAQR3except that it avoids recursion by callingCLAHQRinstead ofCLAQR4. no cap.- Aggressive early deflation: this subroutine accepts as input an upper Hessenberg matrix
Hand performs an unitary similarity transformation designed to detect and deflate fully converged eigenvalues from a trailing principal submatrix. - On output,
Hhas been over-written by a new Hessenberg matrix that is a perturbation of an unitary similarity transformation ofH. - It is to be hoped that the final version of
Hhas many zero subdiagonal entries. manifesting β¨
π 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 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 array, dimension (LDH,N). On input the initial N-by-N section 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 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 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 array, dimension (LDV,NW). An NW-by-NW work 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 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 array, dimension (LDWV,NW).LDWVβLDWV is INTEGER. The leading dimension ofWjust as declared in the calling subroutine.NW <= LDV.WORKβWORK is COMPLEX 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; CLAQR2 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
Definition at line 266 of file claqr2.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
mwah π β this footer is brought to you by LAPACK, Version 3.12.0, on SRC/claqr2.f(3). There's no date in the footer, bestie, so I'm not inventing one π«Άπ
π¦ 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