table of contents
laqz4(3) | LAPACK | laqz4(3) |
NAME¶
laqz4 - laqz4: step in ggev3, gges3
SYNOPSIS¶
Functions¶
subroutine dlaqz4 (ilschur, ilq, ilz, n, ilo, ihi, nshifts,
nblock_desired, sr, si, ss, a, lda, b, ldb, q, ldq, z, ldz, qc, ldqc, zc,
ldzc, work, lwork, info)
DLAQZ4 subroutine slaqz4 (ilschur, ilq, ilz, n, ilo, ihi,
nshifts, nblock_desired, sr, si, ss, a, lda, b, ldb, q, ldq, z, ldz, qc,
ldqc, zc, ldzc, work, lwork, info)
SLAQZ4
Detailed Description¶
Function Documentation¶
subroutine dlaqz4 (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) nshifts, integer, intent(in) nblock_desired, double precision, dimension( * ), intent(inout) sr, double precision, dimension( * ), intent(inout) si, double precision, dimension( * ), intent(inout) ss, double precision, dimension( lda, * ), intent(inout) a, integer, intent(in) lda, double precision, dimension( ldb, * ), intent(inout) b, integer, intent(in) ldb, double precision, dimension( ldq, * ), intent(inout) q, integer, intent(in) ldq, double precision, dimension( ldz, * ), intent(inout) z, integer, intent(in) ldz, double precision, dimension( ldqc, * ), intent(inout) qc, integer, intent(in) ldqc, double precision, dimension( ldzc, * ), intent(inout) zc, integer, intent(in) ldzc, double precision, dimension( * ), intent(inout) work, integer, intent(in) lwork, integer, intent(out) info)¶
DLAQZ4
Purpose:
DLAQZ4 Executes a single multishift QZ sweep
Parameters
ILSCHUR is LOGICAL
Determines whether or not to update the full Schur form
ILQ
ILQ is LOGICAL
Determines whether or not to update the matrix Q
ILZ
ILZ is LOGICAL
Determines whether or not to update the matrix Z
N
N is INTEGER
The order of the matrices A, B, Q, and Z. N >= 0.
ILO
ILO is INTEGER
IHI
IHI is INTEGER
NSHIFTS
NSHIFTS is INTEGER
The desired number of shifts to use
NBLOCK_DESIRED
NBLOCK_DESIRED is INTEGER
The desired size of the computational windows
SR
SR is DOUBLE PRECISION array. SR contains
the real parts of the shifts to use.
SI
SI is DOUBLE PRECISION array. SI contains
the imaginary parts of the shifts to use.
SS
SS is DOUBLE PRECISION array. SS contains
the scale of the shifts to use.
A
A is DOUBLE PRECISION array, dimension (LDA, N)
LDA
LDA is INTEGER
The leading dimension of the array A. LDA >= max( 1, N ).
B
B is DOUBLE PRECISION array, dimension (LDB, N)
LDB
LDB is INTEGER
The leading dimension of the array B. LDB >= max( 1, N ).
Q
Q is DOUBLE PRECISION array, dimension (LDQ, N)
LDQ
LDQ is INTEGER
Z
Z is DOUBLE PRECISION array, dimension (LDZ, N)
LDZ
LDZ is INTEGER
QC
QC is DOUBLE PRECISION array, dimension (LDQC, NBLOCK_DESIRED)
LDQC
LDQC is INTEGER
ZC
ZC is DOUBLE PRECISION array, dimension (LDZC, NBLOCK_DESIRED)
LDZC
LDZ is INTEGER
WORK
WORK is DOUBLE PRECISION array, dimension (MAX(1,LWORK))
On exit, if INFO >= 0, WORK(1) returns the optimal LWORK.
LWORK
LWORK is INTEGER
The dimension of the array WORK. 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.
INFO
INFO is INTEGER
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an illegal value
Author
Date
subroutine slaqz4 (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) nshifts, integer, intent(in) nblock_desired, real, dimension( * ), intent(inout) sr, real, dimension( * ), intent(inout) si, real, dimension( * ), intent(inout) ss, real, dimension( lda, * ), intent(inout) a, integer, intent(in) lda, real, dimension( ldb, * ), intent(inout) b, integer, intent(in) ldb, real, dimension( ldq, * ), intent(inout) q, integer, intent(in) ldq, real, dimension( ldz, * ), intent(inout) z, integer, intent(in) ldz, real, dimension( ldqc, * ), intent(inout) qc, integer, intent(in) ldqc, real, dimension( ldzc, * ), intent(inout) zc, integer, intent(in) ldzc, real, dimension( * ), intent(inout) work, integer, intent(in) lwork, integer, intent(out) info)¶
SLAQZ4
Purpose:
SLAQZ4 Executes a single multishift QZ sweep
Parameters
ILSCHUR is LOGICAL
Determines whether or not to update the full Schur form
ILQ
ILQ is LOGICAL
Determines whether or not to update the matrix Q
ILZ
ILZ is LOGICAL
Determines whether or not to update the matrix Z
N
N is INTEGER
The order of the matrices A, B, Q, and Z. N >= 0.
ILO
ILO is INTEGER
IHI
IHI is INTEGER
NSHIFTS
NSHIFTS is INTEGER
The desired number of shifts to use
NBLOCK_DESIRED
NBLOCK_DESIRED is INTEGER
The desired size of the computational windows
SR
SR is REAL array. SR contains
the real parts of the shifts to use.
SI
SI is REAL array. SI contains
the imaginary parts of the shifts to use.
SS
SS is REAL array. SS contains
the scale of the shifts to use.
A
A is REAL array, dimension (LDA, N)
LDA
LDA is INTEGER
The leading dimension of the array A. LDA >= max( 1, N ).
B
B is REAL array, dimension (LDB, N)
LDB
LDB is INTEGER
The leading dimension of the array B. LDB >= max( 1, N ).
Q
Q is REAL array, dimension (LDQ, N)
LDQ
LDQ is INTEGER
Z
Z is REAL array, dimension (LDZ, N)
LDZ
LDZ is INTEGER
QC
QC is REAL array, dimension (LDQC, NBLOCK_DESIRED)
LDQC
LDQC is INTEGER
ZC
ZC is REAL array, dimension (LDZC, NBLOCK_DESIRED)
LDZC
LDZ is INTEGER
WORK
WORK is REAL array, dimension (MAX(1,LWORK))
On exit, if INFO >= 0, WORK(1) returns the optimal LWORK.
LWORK
LWORK is INTEGER
The dimension of the array WORK. 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.
INFO
INFO is INTEGER
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an illegal value
Author
Date
Author¶
Generated automatically by Doxygen for LAPACK from the source code.
Wed Feb 7 2024 11:30:40 | Version 3.12.0 |