Provided by: liblapack-doc-man_3.5.0-2ubuntu1_all bug

NAME

       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).

Function/Subroutine Documentation

   subroutine claqr2 (logicalWANTT, logicalWANTZ, integerN, integerKTOP, integerKBOT, integerNW,
       complex, dimension( ldh, * )H, integerLDH, integerILOZ, integerIHIZ, complex, dimension(
       ldz, * )Z, integerLDZ, integerNS, integerND, complex, dimension( * )SH, complex,
       dimension( ldv, * )V, integerLDV, integerNH, complex, dimension( ldt, * )T, integerLDT,
       integerNV, complex, dimension( ldwv, * )WV, integerLDWV, complex, dimension( * )WORK,
       integerLWORK)
       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:

               CLAQR2 is identical to CLAQR3 except that it avoids
               recursion by calling CLAHQR instead of CLAQR4.

               Aggressive early deflation:

               This subroutine accepts as input an upper Hessenberg matrix
               H and performs an unitary similarity transformation
               designed to detect and deflate fully converged eigenvalues from
               a trailing principal submatrix.  On output H has been over-
               written by a new Hessenberg matrix that is a perturbation of
               an 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 matrix H is fully updated
                     so that the triangular Schur factor may be
                     computed (in cooperation with the calling subroutine).
                     If .FALSE., then only enough of H is updated to preserve
                     the eigenvalues.

           WANTZ

                     WANTZ is LOGICAL
                     If .TRUE., then the unitary matrix Z is updated so
                     so that the unitary Schur factor may be computed
                     (in cooperation with the calling subroutine).
                     If .FALSE., then Z is not referenced.

           N

                     N is INTEGER
                     The order of the matrix H and (if WANTZ is .TRUE.) the
                     order of the unitary matrix Z.

           KTOP

                     KTOP is INTEGER
                     It is assumed that either KTOP = 1 or H(KTOP,KTOP-1)=0.
                     KBOT and KTOP together determine an isolated block
                     along the diagonal of the Hessenberg matrix.

           KBOT

                     KBOT is INTEGER
                     It is assumed without a check that either
                     KBOT = N or H(KBOT+1,KBOT)=0.  KBOT and KTOP together
                     determine an isolated block along the diagonal of the
                     Hessenberg matrix.

           NW

                     NW is INTEGER
                     Deflation window size.  1 .LE. NW .LE. (KBOT-KTOP+1).

           H

                     H is COMPLEX array, dimension (LDH,N)
                     On input the initial N-by-N section of H stores the
                     Hessenberg matrix undergoing aggressive early deflation.
                     On output H has been transformed by a unitary
                     similarity transformation, perturbed, and the returned
                     to Hessenberg form that (it is to be hoped) has some
                     zero subdiagonal entries.

           LDH

                     LDH is integer
                     Leading dimension of H just as declared in the calling
                     subroutine.  N .LE. LDH

           ILOZ

                     ILOZ is INTEGER

           IHIZ

                     IHIZ is INTEGER
                     Specify the rows of Z to which transformations must be
                     applied if WANTZ is .TRUE.. 1 .LE. ILOZ .LE. IHIZ .LE. N.

           Z

                     Z is COMPLEX array, dimension (LDZ,N)
                     IF WANTZ is .TRUE., then on output, the unitary
                     similarity transformation mentioned above has been
                     accumulated into Z(ILOZ:IHIZ,ILO:IHI) from the right.
                     If WANTZ is .FALSE., then Z is unreferenced.

           LDZ

                     LDZ is integer
                     The leading dimension of Z just as declared in the
                     calling subroutine.  1 .LE. LDZ.

           NS

                     NS is integer
                     The number of unconverged (ie approximate) eigenvalues
                     returned in SR and SI that 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 in SH(KBOT-ND-NS+1)
                     through SR(KBOT-ND).  Converged eigenvalues are
                     stored in SH(KBOT-ND+1) through SH(KBOT).

           V

                     V is COMPLEX array, dimension (LDV,NW)
                     An NW-by-NW work array.

           LDV

                     LDV is integer scalar
                     The leading dimension of V just as declared in the
                     calling subroutine.  NW .LE. LDV

           NH

                     NH is integer scalar
                     The number of columns of T.  NH.GE.NW.

           T

                     T is COMPLEX array, dimension (LDT,NW)

           LDT

                     LDT is integer
                     The leading dimension of T just as declared in the
                     calling subroutine.  NW .LE. LDT

           NV

                     NV is integer
                     The number of rows of work array WV available for
                     workspace.  NV.GE.NW.

           WV

                     WV is COMPLEX array, dimension (LDWV,NW)

           LDWV

                     LDWV is integer
                     The leading dimension of W just as declared in the
                     calling subroutine.  NW .LE. LDV

           WORK

                     WORK is COMPLEX array, dimension LWORK.
                     On exit, WORK(1) is set to an estimate of the optimal value
                     of LWORK for the given values of N, NW, KTOP and KBOT.

           LWORK

                     LWORK is integer
                     The dimension of the work array WORK.  LWORK = 2*NW
                     suffices, but greater efficiency may result from larger
                     values of LWORK.

                     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.

       Date:
           September 2012

       Contributors:
           Karen Braman and Ralph Byers, Department of Mathematics, University of Kansas, USA

       Definition at line 268 of file claqr2.f.

Author

       Generated automatically by Doxygen for LAPACK from the source code.