Man page - laqz3(3)

Packages contains this manual

Manual

laqz3

NAME
SYNOPSIS
Functions
Detailed Description
Function Documentation
subroutine claqz3 (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, complex, dimension( * ), intent(inout)alpha, complex, dimension( * ), intent(inout) beta, 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, complex, dimension(ldqc, * ), intent(inout) qc, integer, intent(in) ldqc, complex,dimension( ldzc, * ), intent(inout) zc, integer, intent(in) ldzc,complex, dimension( * ), intent(inout) work, integer, intent(in) lwork,integer, intent(out) info)
recursive subroutine dlaqz3 (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, 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, integer,intent(out) ns, integer, intent(out) nd, double precision, dimension( *), intent(inout) alphar, double precision, dimension( * ),intent(inout) alphai, double precision, dimension( * ), intent(inout)beta, double precision, dimension( ldqc, * ) qc, integer, intent(in)ldqc, double precision, dimension( ldzc, * ) zc, integer, intent(in)ldzc, double precision, dimension( * ) work, integer, intent(in) lwork,integer, intent(in) rec, integer, intent(out) info)
recursive subroutine slaqz3 (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, 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, integer, intent(out) ns, integer, intent(out) nd, real, dimension(* ), intent(inout) alphar, real, dimension( * ), intent(inout) alphai,real, dimension( * ), intent(inout) beta, real, dimension( ldqc, * )qc, integer, intent(in) ldqc, real, dimension( ldzc, * ) zc, integer,intent(in) ldzc, real, dimension( * ) work, integer, intent(in) lwork,integer, intent(in) rec, integer, intent(out) info)
subroutine zlaqz3 (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, complex*16, dimension( * ), intent(inout)alpha, complex*16, dimension( * ), intent(inout) beta, 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, complex*16, dimension( ldqc, * ),intent(inout) qc, integer, intent(in) ldqc, complex*16, dimension(ldzc, * ), intent(inout) zc, integer, intent(in) ldzc, complex*16,dimension( * ), intent(inout) work, integer, intent(in) lwork, integer,intent(out) info)
Author

NAME

laqz3 - laqz3: step in ggev3, gges3

SYNOPSIS

Functions

subroutine claqz3 (ilschur, ilq, ilz, n, ilo, ihi, nshifts, nblock_desired, alpha, beta, a, lda, b, ldb, q, ldq, z, ldz, qc, ldqc, zc, ldzc, work, lwork, info)
CLAQZ3

recursive subroutine dlaqz3 (ilschur, ilq, ilz, n, ilo, ihi, nw, a, lda, b, ldb, q, ldq, z, ldz, ns, nd, alphar, alphai, beta, qc, ldqc, zc, ldzc, work, lwork, rec, info)
DLAQZ3

recursive subroutine slaqz3 (ilschur, ilq, ilz, n, ilo, ihi, nw, a, lda, b, ldb, q, ldq, z, ldz, ns, nd, alphar, alphai, beta, qc, ldqc, zc, ldzc, work, lwork, rec, info)
SLAQZ3

subroutine zlaqz3 (ilschur, ilq, ilz, n, ilo, ihi, nshifts, nblock_desired, alpha, beta, a, lda, b, ldb, q, ldq, z, ldz, qc, ldqc, zc, ldzc, work, lwork, info)
ZLAQZ3

Detailed Description

Function Documentation

subroutine claqz3 (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, complex, dimension( * ), intent(inout)alpha, complex, dimension( * ), intent(inout) beta, 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, complex, dimension(ldqc, * ), intent(inout) qc, integer, intent(in) ldqc, complex,dimension( ldzc, * ), intent(inout) zc, integer, intent(in) ldzc,complex, dimension( * ), intent(inout) work, integer, intent(in) lwork,integer, intent(out) info)

CLAQZ3

Purpose:

CLAQZ3 Executes a single multishift QZ sweep

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

NSHIFTS

NSHIFTS is INTEGER
The desired number of shifts to use

NBLOCK_DESIRED

NBLOCK_DESIRED is INTEGER
The desired size of the computational windows

ALPHA

ALPHA is COMPLEX array. SR contains
the alpha parts of the shifts to use.

BETA

BETA is COMPLEX array. SS contains
the scale of the shifts to use.

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

QC

QC is COMPLEX array, dimension (LDQC, NBLOCK_DESIRED)

LDQC

LDQC is INTEGER

ZC

ZC is COMPLEX array, dimension (LDZC, NBLOCK_DESIRED)

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.

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

recursive subroutine dlaqz3 (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, 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, integer,intent(out) ns, integer, intent(out) nd, double precision, dimension( *), intent(inout) alphar, double precision, dimension( * ),intent(inout) alphai, double precision, dimension( * ), intent(inout)beta, double precision, dimension( ldqc, * ) qc, integer, intent(in)ldqc, double precision, dimension( ldzc, * ) zc, integer, intent(in)ldzc, double precision, dimension( * ) work, integer, intent(in) lwork,integer, intent(in) rec, integer, intent(out) info)

DLAQZ3

Purpose:

DLAQZ3 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 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

NS

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

ND

ND is INTEGER
The number of converged eigenvalues found.

ALPHAR

ALPHAR is DOUBLE PRECISION array, dimension (N)
The real parts of each scalar alpha defining an eigenvalue
of GNEP.

ALPHAI

ALPHAI is DOUBLE PRECISION array, dimension (N)
The imaginary parts of each scalar alpha defining an
eigenvalue of GNEP.
If ALPHAI(j) is zero, then the j-th eigenvalue is real; if
positive, then the j-th and (j+1)-st eigenvalues are a
complex conjugate pair, with ALPHAI(j+1) = -ALPHAI(j).

BETA

BETA is DOUBLE PRECISION array, dimension (N)
The scalars beta that define the eigenvalues of GNEP.
Together, the quantities alpha = (ALPHAR(j),ALPHAI(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 DOUBLE PRECISION array, dimension (LDQC, NW)

LDQC

LDQC is INTEGER

ZC

ZC is DOUBLE PRECISION array, dimension (LDZC, NW)

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.

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

recursive subroutine slaqz3 (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, 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, integer, intent(out) ns, integer, intent(out) nd, real, dimension(* ), intent(inout) alphar, real, dimension( * ), intent(inout) alphai,real, dimension( * ), intent(inout) beta, real, dimension( ldqc, * )qc, integer, intent(in) ldqc, real, dimension( ldzc, * ) zc, integer,intent(in) ldzc, real, dimension( * ) work, integer, intent(in) lwork,integer, intent(in) rec, integer, intent(out) info)

SLAQZ3

Purpose:

SLAQZ3 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 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

NS

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

ND

ND is INTEGER
The number of converged eigenvalues found.

ALPHAR

ALPHAR is REAL array, dimension (N)
The real parts of each scalar alpha defining an eigenvalue
of GNEP.

ALPHAI

ALPHAI is REAL array, dimension (N)
The imaginary parts of each scalar alpha defining an
eigenvalue of GNEP.
If ALPHAI(j) is zero, then the j-th eigenvalue is real; if
positive, then the j-th and (j+1)-st eigenvalues are a
complex conjugate pair, with ALPHAI(j+1) = -ALPHAI(j).

BETA

BETA is REAL array, dimension (N)
The scalars beta that define the eigenvalues of GNEP.
Together, the quantities alpha = (ALPHAR(j),ALPHAI(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 REAL array, dimension (LDQC, NW)

LDQC

LDQC is INTEGER

ZC

ZC is REAL array, dimension (LDZC, NW)

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.

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

subroutine zlaqz3 (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, complex*16, dimension( * ), intent(inout)alpha, complex*16, dimension( * ), intent(inout) beta, 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, complex*16, dimension( ldqc, * ),intent(inout) qc, integer, intent(in) ldqc, complex*16, dimension(ldzc, * ), intent(inout) zc, integer, intent(in) ldzc, complex*16,dimension( * ), intent(inout) work, integer, intent(in) lwork, integer,intent(out) info)

ZLAQZ3

Purpose:

ZLAQZ3 Executes a single multishift QZ sweep

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

NSHIFTS

NSHIFTS is INTEGER
The desired number of shifts to use

NBLOCK_DESIRED

NBLOCK_DESIRED is INTEGER
The desired size of the computational windows

ALPHA

ALPHA is COMPLEX*16 array. SR contains
the alpha parts of the shifts to use.

BETA

BETA is COMPLEX*16 array. SS contains
the scale of the shifts to use.

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

QC

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

LDQC

LDQC is INTEGER

ZC

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

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.

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.