Man page - laqz2(3)

Packages contains this manual

Manual

laqz2

NAME
SYNOPSIS
Functions
Detailed Description
Function Documentation
recursive subroutine claqz2 (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)nw, complex, dimension( lda, * ), intent(inout) a, integer, intent(in)lda, complex, dimension( ldb, * ), intent(inout) b, integer, intent(in)ldb, complex, dimension( ldq, * ), intent(inout) q, integer, intent(in)ldq, complex, dimension( ldz, * ), intent(inout) z, integer, intent(in)ldz, integer, intent(out) ns, integer, intent(out) nd, complex,dimension( * ), intent(inout) alpha, complex, dimension( * ),intent(inout) beta, complex, dimension( ldqc, * ) qc, integer,intent(in) ldqc, complex, dimension( ldzc, * ) zc, integer, intent(in)ldzc, complex, dimension( * ) work, integer, intent(in) lwork, real,dimension( * ) rwork, integer, intent(in) rec, integer, intent(out)info)
subroutine dlaqz2 (logical, intent(in) ilq, logical, intent(in) ilz,integer, intent(in) k, integer, intent(in) istartm, integer, intent(in)istopm, integer, intent(in) ihi, double precision, dimension( lda, * )a, integer, intent(in) lda, double precision, dimension( ldb, * ) b,integer, intent(in) ldb, integer, intent(in) nq, integer, intent(in)qstart, double precision, dimension( ldq, * ) q, integer, intent(in)ldq, integer, intent(in) nz, integer, intent(in) zstart, doubleprecision, dimension( ldz, * ) z, integer,intent(in) ldz)
subroutine slaqz2 (logical, intent(in) ilq, logical, intent(in) ilz,integer, intent(in) k, integer, intent(in) istartm, integer, intent(in)istopm, integer, intent(in) ihi, real, dimension( lda, * ) a, integer,intent(in) lda, real, dimension( ldb, * ) b, integer, intent(in) ldb,integer, intent(in) nq, integer, intent(in) qstart, real, dimension(ldq, * ) q, integer, intent(in) ldq, integer, intent(in) nz, integer,intent(in) zstart, real, dimension( ldz, * ) z, integer, intent(in)ldz)
recursive subroutine zlaqz2 (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)nw, complex*16, dimension( lda, * ), intent(inout) a, integer,intent(in) lda, complex*16, dimension( ldb, * ), intent(inout) b,integer, intent(in) ldb, complex*16, dimension( ldq, * ),intent(inout) q, integer, intent(in) ldq, complex*16, dimension( ldz, *), intent(inout) z, integer, intent(in) ldz, integer, intent(out) ns,integer, intent(out) nd, complex*16, dimension( * ), intent(inout)alpha, complex*16, dimension( * ), intent(inout) beta, complex*16,dimension( ldqc, * ) qc, integer, intent(in) ldqc, complex*16,dimension( ldzc, * ) zc, integer, intent(in) ldzc, complex*16,dimension( * ) work, integer, intent(in) lwork, double precision,dimension( * ) rwork, integer, intent(in) rec, integer, intent(out)info)
Author

NAME

laqz2 - laqz2: step in ggev3, gges3

SYNOPSIS

Functions

recursive subroutine claqz2 (ilschur, ilq, ilz, n, ilo, ihi, nw, a, lda, b, ldb, q, ldq, z, ldz, ns, nd, alpha, beta, qc, ldqc, zc, ldzc, work, lwork, rwork, rec, info)
CLAQZ2

subroutine dlaqz2 (ilq, ilz, k, istartm, istopm, ihi, a, lda, b, ldb, nq, qstart, q, ldq, nz, zstart, z, ldz)
DLAQZ2

subroutine slaqz2 (ilq, ilz, k, istartm, istopm, ihi, a, lda, b, ldb, nq, qstart, q, ldq, nz, zstart, z, ldz)
SLAQZ2

recursive subroutine zlaqz2 (ilschur, ilq, ilz, n, ilo, ihi, nw, a, lda, b, ldb, q, ldq, z, ldz, ns, nd, alpha, beta, qc, ldqc, zc, ldzc, work, lwork, rwork, rec, info)
ZLAQZ2

Detailed Description

Function Documentation

recursive subroutine claqz2 (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)nw, complex, dimension( lda, * ), intent(inout) a, integer, intent(in)lda, complex, dimension( ldb, * ), intent(inout) b, integer, intent(in)ldb, complex, dimension( ldq, * ), intent(inout) q, integer, intent(in)ldq, complex, dimension( ldz, * ), intent(inout) z, integer, intent(in)ldz, integer, intent(out) ns, integer, intent(out) nd, complex,dimension( * ), intent(inout) alpha, complex, dimension( * ),intent(inout) beta, complex, dimension( ldqc, * ) qc, integer,intent(in) ldqc, complex, dimension( ldzc, * ) zc, integer, intent(in)ldzc, complex, dimension( * ) work, integer, intent(in) lwork, real,dimension( * ) rwork, integer, intent(in) rec, integer, intent(out)info)

CLAQZ2

Purpose:

CLAQZ2 performs AED

Parameters

ILSCHUR

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
ILO and IHI mark the rows and columns of (A,B) which
are to be normalized

NW

NW is INTEGER
The desired size of the deflation window.

A

A is COMPLEX array, dimension (LDA, N)

LDA

LDA is INTEGER
The leading dimension of the array A. LDA >= max( 1, N ).

B

B is COMPLEX array, dimension (LDB, N)

LDB

LDB is INTEGER
The leading dimension of the array B. LDB >= max( 1, N ).

Q

Q is COMPLEX array, dimension (LDQ, N)

LDQ

LDQ is INTEGER

Z

Z is COMPLEX array, dimension (LDZ, N)

LDZ

LDZ is INTEGER

NS

NS is INTEGER
The number of unconverged eigenvalues available to
use as shifts.

ND

ND is INTEGER
The number of converged eigenvalues found.

ALPHA

ALPHA is COMPLEX array, dimension (N)
Each scalar alpha defining an eigenvalue
of GNEP.

BETA

BETA is COMPLEX array, dimension (N)
The scalars beta that define the eigenvalues of GNEP.
Together, the quantities alpha = ALPHA(j) and
beta = BETA(j) represent the j-th eigenvalue of the matrix
pair (A,B), in one of the forms lambda = alpha/beta or
mu = beta/alpha. Since either lambda or mu may overflow,
they should not, in general, be computed.

QC

QC is COMPLEX array, dimension (LDQC, NW)

LDQC

LDQC is INTEGER

ZC

ZC is COMPLEX array, dimension (LDZC, NW)

LDZC

LDZ is INTEGER

WORK

WORK is COMPLEX 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.

RWORK

RWORK is REAL array, dimension (N)

REC

REC is INTEGER
REC indicates the current recursion level. Should be set
to 0 on first call.

INFO

INFO is INTEGER
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an illegal value

Author

Thijs Steel, KU Leuven, KU Leuven

Date

May 2020

subroutine dlaqz2 (logical, intent(in) ilq, logical, intent(in) ilz,integer, intent(in) k, integer, intent(in) istartm, integer, intent(in)istopm, integer, intent(in) ihi, double precision, dimension( lda, * )a, integer, intent(in) lda, double precision, dimension( ldb, * ) b,integer, intent(in) ldb, integer, intent(in) nq, integer, intent(in)qstart, double precision, dimension( ldq, * ) q, integer, intent(in)ldq, integer, intent(in) nz, integer, intent(in) zstart, doubleprecision, dimension( ldz, * ) z, integer,intent(in) ldz)

DLAQZ2

Purpose:

DLAQZ2 chases a 2x2 shift bulge in a matrix pencil down a single position

Parameters

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

K

K is INTEGER
Index indicating the position of the bulge.
On entry, the bulge is located in
(A(k+1:k+2,k:k+1),B(k+1:k+2,k:k+1)).
On exit, the bulge is located in
(A(k+2:k+3,k+1:k+2),B(k+2:k+3,k+1:k+2)).

ISTARTM

ISTARTM is INTEGER

ISTOPM

ISTOPM is INTEGER
Updates to (A,B) are restricted to
(istartm:k+3,k:istopm). It is assumed
without checking that istartm <= k+1 and
k+2 <= istopm

IHI

IHI is INTEGER

A

A is DOUBLE PRECISION array, dimension (LDA,N)

LDA

LDA is INTEGER
The leading dimension of A as declared in
the calling procedure.

B

B is DOUBLE PRECISION array, dimension (LDB,N)

LDB

LDB is INTEGER
The leading dimension of B as declared in
the calling procedure.

NQ

NQ is INTEGER
The order of the matrix Q

QSTART

QSTART is INTEGER
Start index of the matrix Q. Rotations are applied
To columns k+2-qStart:k+4-qStart of Q.

Q

Q is DOUBLE PRECISION array, dimension (LDQ,NQ)

LDQ

LDQ is INTEGER
The leading dimension of Q as declared in
the calling procedure.

NZ

NZ is INTEGER
The order of the matrix Z

ZSTART

ZSTART is INTEGER
Start index of the matrix Z. Rotations are applied
To columns k+1-qStart:k+3-qStart of Z.

Z

Z is DOUBLE PRECISION array, dimension (LDZ,NZ)

LDZ

LDZ is INTEGER
The leading dimension of Q as declared in
the calling procedure.

Author

Thijs Steel, KU Leuven

Date

May 2020

subroutine slaqz2 (logical, intent(in) ilq, logical, intent(in) ilz,integer, intent(in) k, integer, intent(in) istartm, integer, intent(in)istopm, integer, intent(in) ihi, real, dimension( lda, * ) a, integer,intent(in) lda, real, dimension( ldb, * ) b, integer, intent(in) ldb,integer, intent(in) nq, integer, intent(in) qstart, real, dimension(ldq, * ) q, integer, intent(in) ldq, integer, intent(in) nz, integer,intent(in) zstart, real, dimension( ldz, * ) z, integer, intent(in)ldz)

SLAQZ2

Purpose:

SLAQZ2 chases a 2x2 shift bulge in a matrix pencil down a single position

Parameters

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

K

K is INTEGER
Index indicating the position of the bulge.
On entry, the bulge is located in
(A(k+1:k+2,k:k+1),B(k+1:k+2,k:k+1)).
On exit, the bulge is located in
(A(k+2:k+3,k+1:k+2),B(k+2:k+3,k+1:k+2)).

ISTARTM

ISTARTM is INTEGER

ISTOPM

ISTOPM is INTEGER
Updates to (A,B) are restricted to
(istartm:k+3,k:istopm). It is assumed
without checking that istartm <= k+1 and
k+2 <= istopm

IHI

IHI is INTEGER

A

A is REAL array, dimension (LDA,N)

LDA

LDA is INTEGER
The leading dimension of A as declared in
the calling procedure.

B

B is REAL array, dimension (LDB,N)

LDB

LDB is INTEGER
The leading dimension of B as declared in
the calling procedure.

NQ

NQ is INTEGER
The order of the matrix Q

QSTART

QSTART is INTEGER
Start index of the matrix Q. Rotations are applied
To columns k+2-qStart:k+4-qStart of Q.

Q

Q is REAL array, dimension (LDQ,NQ)

LDQ

LDQ is INTEGER
The leading dimension of Q as declared in
the calling procedure.

NZ

NZ is INTEGER
The order of the matrix Z

ZSTART

ZSTART is INTEGER
Start index of the matrix Z. Rotations are applied
To columns k+1-qStart:k+3-qStart of Z.

Z

Z is REAL array, dimension (LDZ,NZ)

LDZ

LDZ is INTEGER
The leading dimension of Q as declared in
the calling procedure.

Author

Thijs Steel, KU Leuven

Date

May 2020

recursive subroutine zlaqz2 (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)nw, complex*16, dimension( lda, * ), intent(inout) a, integer,intent(in) lda, complex*16, dimension( ldb, * ), intent(inout) b,integer, intent(in) ldb, complex*16, dimension( ldq, * ),intent(inout) q, integer, intent(in) ldq, complex*16, dimension( ldz, *), intent(inout) z, integer, intent(in) ldz, integer, intent(out) ns,integer, intent(out) nd, complex*16, dimension( * ), intent(inout)alpha, complex*16, dimension( * ), intent(inout) beta, complex*16,dimension( ldqc, * ) qc, integer, intent(in) ldqc, complex*16,dimension( ldzc, * ) zc, integer, intent(in) ldzc, complex*16,dimension( * ) work, integer, intent(in) lwork, double precision,dimension( * ) rwork, integer, intent(in) rec, integer, intent(out)info)

ZLAQZ2

Purpose:

ZLAQZ2 performs AED

Parameters

ILSCHUR

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
ILO and IHI mark the rows and columns of (A,B) which
are to be normalized

NW

NW is INTEGER
The desired size of the deflation window.

A

A is COMPLEX*16 array, dimension (LDA, N)

LDA

LDA is INTEGER
The leading dimension of the array A. LDA >= max( 1, N ).

B

B is COMPLEX*16 array, dimension (LDB, N)

LDB

LDB is INTEGER
The leading dimension of the array B. LDB >= max( 1, N ).

Q

Q is COMPLEX*16 array, dimension (LDQ, N)

LDQ

LDQ is INTEGER

Z

Z is COMPLEX*16 array, dimension (LDZ, N)

LDZ

LDZ is INTEGER

NS

NS is INTEGER
The number of unconverged eigenvalues available to
use as shifts.

ND

ND is INTEGER
The number of converged eigenvalues found.

ALPHA

ALPHA is COMPLEX*16 array, dimension (N)
Each scalar alpha defining an eigenvalue
of GNEP.

BETA

BETA is COMPLEX*16 array, dimension (N)
The scalars beta that define the eigenvalues of GNEP.
Together, the quantities alpha = ALPHA(j) and
beta = BETA(j) represent the j-th eigenvalue of the matrix
pair (A,B), in one of the forms lambda = alpha/beta or
mu = beta/alpha. Since either lambda or mu may overflow,
they should not, in general, be computed.

QC

QC is COMPLEX*16 array, dimension (LDQC, NW)

LDQC

LDQC is INTEGER

ZC

ZC is COMPLEX*16 array, dimension (LDZC, NW)

LDZC

LDZ is INTEGER

WORK

WORK is COMPLEX*16 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.

RWORK

RWORK is DOUBLE PRECISION array, dimension (N)

REC

REC is INTEGER
REC indicates the current recursion level. Should be set
to 0 on first call.

INFO

INFO is INTEGER
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an illegal value

Author

Thijs Steel, KU Leuven

Date

May 2020

Author

Generated automatically by Doxygen for LAPACK from the source code.