![]() |
LAPACK
3.9.0
LAPACK: Linear Algebra PACKage
|
| subroutine claqr5 | ( | logical | WANTT, |
| logical | WANTZ, | ||
| integer | KACC22, | ||
| integer | N, | ||
| integer | KTOP, | ||
| integer | KBOT, | ||
| integer | NSHFTS, | ||
| complex, dimension( * ) | S, | ||
| complex, dimension( ldh, * ) | H, | ||
| integer | LDH, | ||
| integer | ILOZ, | ||
| integer | IHIZ, | ||
| complex, dimension( ldz, * ) | Z, | ||
| integer | LDZ, | ||
| complex, dimension( ldv, * ) | V, | ||
| integer | LDV, | ||
| complex, dimension( ldu, * ) | U, | ||
| integer | LDU, | ||
| integer | NV, | ||
| complex, dimension( ldwv, * ) | WV, | ||
| integer | LDWV, | ||
| integer | NH, | ||
| complex, dimension( ldwh, * ) | WH, | ||
| integer | LDWH | ||
| ) |
CLAQR5 performs a single small-bulge multi-shift QR sweep.
Download CLAQR5 + dependencies [TGZ] [ZIP] [TXT]
CLAQR5 called by CLAQR0 performs a
single small-bulge multi-shift QR sweep. | [in] | WANTT | WANTT is LOGICAL
WANTT = .true. if the triangular Schur factor
is being computed. WANTT is set to .false. otherwise. |
| [in] | WANTZ | WANTZ is LOGICAL
WANTZ = .true. if the unitary Schur factor is being
computed. WANTZ is set to .false. otherwise. |
| [in] | KACC22 | KACC22 is INTEGER with value 0, 1, or 2.
Specifies the computation mode of far-from-diagonal
orthogonal updates.
= 0: CLAQR5 does not accumulate reflections and does not
use matrix-matrix multiply to update far-from-diagonal
matrix entries.
= 1: CLAQR5 accumulates reflections and uses matrix-matrix
multiply to update the far-from-diagonal matrix entries.
= 2: CLAQR5 accumulates reflections, uses matrix-matrix
multiply to update the far-from-diagonal matrix entries,
and takes advantage of 2-by-2 block structure during
matrix multiplies. |
| [in] | N | N is INTEGER
N is the order of the Hessenberg matrix H upon which this
subroutine operates. |
| [in] | KTOP | KTOP is INTEGER |
| [in] | KBOT | KBOT is INTEGER
These are the first and last rows and columns of an
isolated diagonal block upon which the QR sweep is to be
applied. It is assumed without a check that
either KTOP = 1 or H(KTOP,KTOP-1) = 0
and
either KBOT = N or H(KBOT+1,KBOT) = 0. |
| [in] | NSHFTS | NSHFTS is INTEGER
NSHFTS gives the number of simultaneous shifts. NSHFTS
must be positive and even. |
| [in,out] | S | S is COMPLEX array, dimension (NSHFTS)
S contains the shifts of origin that define the multi-
shift QR sweep. On output S may be reordered. |
| [in,out] | H | H is COMPLEX array, dimension (LDH,N)
On input H contains a Hessenberg matrix. On output a
multi-shift QR sweep with shifts SR(J)+i*SI(J) is applied
to the isolated diagonal block in rows and columns KTOP
through KBOT. |
| [in] | LDH | LDH is INTEGER
LDH is the leading dimension of H just as declared in the
calling procedure. LDH >= MAX(1,N). |
| [in] | ILOZ | ILOZ is INTEGER |
| [in] | IHIZ | IHIZ is INTEGER
Specify the rows of Z to which transformations must be
applied if WANTZ is .TRUE.. 1 <= ILOZ <= IHIZ <= N |
| [in,out] | Z | Z is COMPLEX array, dimension (LDZ,IHIZ)
If WANTZ = .TRUE., then the QR Sweep unitary
similarity transformation is accumulated into
Z(ILOZ:IHIZ,ILOZ:IHIZ) from the right.
If WANTZ = .FALSE., then Z is unreferenced. |
| [in] | LDZ | LDZ is INTEGER
LDA is the leading dimension of Z just as declared in
the calling procedure. LDZ >= N. |
| [out] | V | V is COMPLEX array, dimension (LDV,NSHFTS/2) |
| [in] | LDV | LDV is INTEGER
LDV is the leading dimension of V as declared in the
calling procedure. LDV >= 3. |
| [out] | U | U is COMPLEX array, dimension (LDU,3*NSHFTS-3) |
| [in] | LDU | LDU is INTEGER
LDU is the leading dimension of U just as declared in the
in the calling subroutine. LDU >= 3*NSHFTS-3. |
| [in] | NV | NV is INTEGER
NV is the number of rows in WV agailable for workspace.
NV >= 1. |
| [out] | WV | WV is COMPLEX array, dimension (LDWV,3*NSHFTS-3) |
| [in] | LDWV | LDWV is INTEGER
LDWV is the leading dimension of WV as declared in the
in the calling subroutine. LDWV >= NV. |
| [in] | NH | NH is INTEGER
NH is the number of columns in array WH available for
workspace. NH >= 1. |
| [out] | WH | WH is COMPLEX array, dimension (LDWH,NH) |
| [in] | LDWH | LDWH is INTEGER
Leading dimension of WH just as declared in the
calling procedure. LDWH >= 3*NSHFTS-3. |
Definition at line 251 of file claqr5.f.