steqr(3)

NAME
steqr - steqr: eig, QR iteration

SYNOPSIS

  Functions

subroutine csteqr (compz, n, d, e, z, ldz, work, info)
CSTEQR
subroutine dsteqr (compz, n, d, e, z, ldz, work, info)
DSTEQR
subroutine ssteqr (compz, n, d, e, z, ldz, work, info)
SSTEQR
subroutine zsteqr (compz, n, d, e, z, ldz, work, info)
ZSTEQR

Detailed Description

Function Documentation

  subroutine csteqr (character compz, integer n, real, dimension( * ) d, real, dimension( * ) e, complex, dimension( ldz, * ) z, integer ldz, real, dimension( * ) work, integer info)

CSTEQR

Purpose:

    !>
    !> CSTEQR computes all eigenvalues and, optionally, eigenvectors of a
    !> symmetric tridiagonal matrix using the implicit QL or QR method.
    !> The eigenvectors of a full or band complex Hermitian matrix can also
    !> be found if CHETRD or CHPTRD or CHBTRD has been used to reduce this
    !> matrix to tridiagonal form.
    !>

Parameters
    COMPZ

    !>          COMPZ is CHARACTER*1
    !>          = 'N':  Compute eigenvalues only.
    !>          = 'V':  Compute eigenvalues and eigenvectors of the original
    !>                  Hermitian matrix.  On entry, Z must contain the
    !>                  unitary matrix used to reduce the original matrix
    !>                  to tridiagonal form.
    !>          = 'I':  Compute eigenvalues and eigenvectors of the
    !>                  tridiagonal matrix.  Z is initialized to the identity
    !>                  matrix.
    !>

    N

    !>          N is INTEGER
    !>          The order of the matrix.  N >= 0.
    !>

    D

    !>          D is REAL array, dimension (N)
    !>          On entry, the diagonal elements of the tridiagonal matrix.
    !>          On exit, if INFO = 0, the eigenvalues in ascending order.
    !>

    E

    !>          E is REAL array, dimension (N-1)
    !>          On entry, the (n-1) subdiagonal elements of the tridiagonal
    !>          matrix.
    !>          On exit, E has been destroyed.
    !>

    Z

    !>          Z is COMPLEX array, dimension (LDZ, N)
    !>          On entry, if  COMPZ = 'V', then Z contains the unitary
    !>          matrix used in the reduction to tridiagonal form.
    !>          On exit, if INFO = 0, then if COMPZ = 'V', Z contains the
    !>          orthonormal eigenvectors of the original Hermitian matrix,
    !>          and if COMPZ = 'I', Z contains the orthonormal eigenvectors
    !>          of the symmetric tridiagonal matrix.
    !>          If COMPZ = 'N', then Z is not referenced.
    !>

    LDZ

    !>          LDZ is INTEGER
    !>          The leading dimension of the array Z.  LDZ >= 1, and if
    !>          eigenvectors are desired, then  LDZ >= max(1,N).
    !>

    WORK

    !>          WORK is REAL array, dimension (max(1,2*N-2))
    !>          If COMPZ = 'N', then WORK is not referenced.
    !>

    INFO

    !>          INFO is INTEGER
    !>          = 0:  successful exit
    !>          < 0:  if INFO = -i, the i-th argument had an illegal value
    !>          > 0:  the algorithm has failed to find all the eigenvalues in
    !>                a total of 30*N iterations; if INFO = i, then i
    !>                elements of E have not converged to zero; on exit, D
    !>                and E contain the elements of a symmetric tridiagonal
    !>                matrix which is unitarily similar to the original
    !>                matrix.
    !>

Author
    Univ. of Tennessee

    Univ. of California Berkeley

    Univ. of Colorado Denver

    NAG Ltd.

  subroutine dsteqr (character compz, integer n, double precision, dimension( * ) d, double precision, dimension( * ) e, double precision, dimension( ldz, * ) z, integer ldz, double precision, dimension( * ) work, integer info)

DSTEQR

Purpose:

    !>
    !> DSTEQR computes all eigenvalues and, optionally, eigenvectors of a
    !> symmetric tridiagonal matrix using the implicit QL or QR method.
    !> The eigenvectors of a full or band symmetric matrix can also be found
    !> if DSYTRD or DSPTRD or DSBTRD has been used to reduce this matrix to
    !> tridiagonal form.
    !>

Parameters
    COMPZ

    !>          COMPZ is CHARACTER*1
    !>          = 'N':  Compute eigenvalues only.
    !>          = 'V':  Compute eigenvalues and eigenvectors of the original
    !>                  symmetric matrix.  On entry, Z must contain the
    !>                  orthogonal matrix used to reduce the original matrix
    !>                  to tridiagonal form.
    !>          = 'I':  Compute eigenvalues and eigenvectors of the
    !>                  tridiagonal matrix.  Z is initialized to the identity
    !>                  matrix.
    !>

    N

    !>          N is INTEGER
    !>          The order of the matrix.  N >= 0.
    !>

    D

    !>          D is DOUBLE PRECISION array, dimension (N)
    !>          On entry, the diagonal elements of the tridiagonal matrix.
    !>          On exit, if INFO = 0, the eigenvalues in ascending order.
    !>

    E

    !>          E is DOUBLE PRECISION array, dimension (N-1)
    !>          On entry, the (n-1) subdiagonal elements of the tridiagonal
    !>          matrix.
    !>          On exit, E has been destroyed.
    !>

    Z

    !>          Z is DOUBLE PRECISION array, dimension (LDZ, N)
    !>          On entry, if  COMPZ = 'V', then Z contains the orthogonal
    !>          matrix used in the reduction to tridiagonal form.
    !>          On exit, if INFO = 0, then if  COMPZ = 'V', Z contains the
    !>          orthonormal eigenvectors of the original symmetric matrix,
    !>          and if COMPZ = 'I', Z contains the orthonormal eigenvectors
    !>          of the symmetric tridiagonal matrix.
    !>          If COMPZ = 'N', then Z is not referenced.
    !>

    LDZ

    !>          LDZ is INTEGER
    !>          The leading dimension of the array Z.  LDZ >= 1, and if
    !>          eigenvectors are desired, then  LDZ >= max(1,N).
    !>

    WORK

    !>          WORK is DOUBLE PRECISION array, dimension (max(1,2*N-2))
    !>          If COMPZ = 'N', then WORK is not referenced.
    !>

    INFO

    !>          INFO is INTEGER
    !>          = 0:  successful exit
    !>          < 0:  if INFO = -i, the i-th argument had an illegal value
    !>          > 0:  the algorithm has failed to find all the eigenvalues in
    !>                a total of 30*N iterations; if INFO = i, then i
    !>                elements of E have not converged to zero; on exit, D
    !>                and E contain the elements of a symmetric tridiagonal
    !>                matrix which is orthogonally similar to the original
    !>                matrix.
    !>

Author
    Univ. of Tennessee

    Univ. of California Berkeley

    Univ. of Colorado Denver

    NAG Ltd.

  subroutine ssteqr (character compz, integer n, real, dimension( * ) d, real, dimension( * ) e, real, dimension( ldz, * ) z, integer ldz, real, dimension( * ) work, integer info)

SSTEQR

Purpose:

    !>
    !> SSTEQR computes all eigenvalues and, optionally, eigenvectors of a
    !> symmetric tridiagonal matrix using the implicit QL or QR method.
    !> The eigenvectors of a full or band symmetric matrix can also be found
    !> if SSYTRD or SSPTRD or SSBTRD has been used to reduce this matrix to
    !> tridiagonal form.
    !>

Parameters
    COMPZ

    !>          COMPZ is CHARACTER*1
    !>          = 'N':  Compute eigenvalues only.
    !>          = 'V':  Compute eigenvalues and eigenvectors of the original
    !>                  symmetric matrix.  On entry, Z must contain the
    !>                  orthogonal matrix used to reduce the original matrix
    !>                  to tridiagonal form.
    !>          = 'I':  Compute eigenvalues and eigenvectors of the
    !>                  tridiagonal matrix.  Z is initialized to the identity
    !>                  matrix.
    !>

    N

    !>          N is INTEGER
    !>          The order of the matrix.  N >= 0.
    !>

    D

    !>          D is REAL array, dimension (N)
    !>          On entry, the diagonal elements of the tridiagonal matrix.
    !>          On exit, if INFO = 0, the eigenvalues in ascending order.
    !>

    E

    !>          E is REAL array, dimension (N-1)
    !>          On entry, the (n-1) subdiagonal elements of the tridiagonal
    !>          matrix.
    !>          On exit, E has been destroyed.
    !>

    Z

    !>          Z is REAL array, dimension (LDZ, N)
    !>          On entry, if  COMPZ = 'V', then Z contains the orthogonal
    !>          matrix used in the reduction to tridiagonal form.
    !>          On exit, if INFO = 0, then if  COMPZ = 'V', Z contains the
    !>          orthonormal eigenvectors of the original symmetric matrix,
    !>          and if COMPZ = 'I', Z contains the orthonormal eigenvectors
    !>          of the symmetric tridiagonal matrix.
    !>          If COMPZ = 'N', then Z is not referenced.
    !>

    LDZ

    !>          LDZ is INTEGER
    !>          The leading dimension of the array Z.  LDZ >= 1, and if
    !>          eigenvectors are desired, then  LDZ >= max(1,N).
    !>

    WORK

    !>          WORK is REAL array, dimension (max(1,2*N-2))
    !>          If COMPZ = 'N', then WORK is not referenced.
    !>

    INFO

    !>          INFO is INTEGER
    !>          = 0:  successful exit
    !>          < 0:  if INFO = -i, the i-th argument had an illegal value
    !>          > 0:  the algorithm has failed to find all the eigenvalues in
    !>                a total of 30*N iterations; if INFO = i, then i
    !>                elements of E have not converged to zero; on exit, D
    !>                and E contain the elements of a symmetric tridiagonal
    !>                matrix which is orthogonally similar to the original
    !>                matrix.
    !>

Author
    Univ. of Tennessee

    Univ. of California Berkeley

    Univ. of Colorado Denver

    NAG Ltd.

  subroutine zsteqr (character compz, integer n, double precision, dimension( * ) d, double precision, dimension( * ) e, complex*16, dimension( ldz, * ) z, integer ldz, double precision, dimension( * ) work, integer info)

ZSTEQR

Purpose:

    !>
    !> ZSTEQR computes all eigenvalues and, optionally, eigenvectors of a
    !> symmetric tridiagonal matrix using the implicit QL or QR method.
    !> The eigenvectors of a full or band complex Hermitian matrix can also
    !> be found if ZHETRD or ZHPTRD or ZHBTRD has been used to reduce this
    !> matrix to tridiagonal form.
    !>

Parameters
    COMPZ

    !>          COMPZ is CHARACTER*1
    !>          = 'N':  Compute eigenvalues only.
    !>          = 'V':  Compute eigenvalues and eigenvectors of the original
    !>                  Hermitian matrix.  On entry, Z must contain the
    !>                  unitary matrix used to reduce the original matrix
    !>                  to tridiagonal form.
    !>          = 'I':  Compute eigenvalues and eigenvectors of the
    !>                  tridiagonal matrix.  Z is initialized to the identity
    !>                  matrix.
    !>

    N

    !>          N is INTEGER
    !>          The order of the matrix.  N >= 0.
    !>

    D

    !>          D is DOUBLE PRECISION array, dimension (N)
    !>          On entry, the diagonal elements of the tridiagonal matrix.
    !>          On exit, if INFO = 0, the eigenvalues in ascending order.
    !>

    E

    !>          E is DOUBLE PRECISION array, dimension (N-1)
    !>          On entry, the (n-1) subdiagonal elements of the tridiagonal
    !>          matrix.
    !>          On exit, E has been destroyed.
    !>

    Z

    !>          Z is COMPLEX*16 array, dimension (LDZ, N)
    !>          On entry, if  COMPZ = 'V', then Z contains the unitary
    !>          matrix used in the reduction to tridiagonal form.
    !>          On exit, if INFO = 0, then if COMPZ = 'V', Z contains the
    !>          orthonormal eigenvectors of the original Hermitian matrix,
    !>          and if COMPZ = 'I', Z contains the orthonormal eigenvectors
    !>          of the symmetric tridiagonal matrix.
    !>          If COMPZ = 'N', then Z is not referenced.
    !>

    LDZ

    !>          LDZ is INTEGER
    !>          The leading dimension of the array Z.  LDZ >= 1, and if
    !>          eigenvectors are desired, then  LDZ >= max(1,N).
    !>

    WORK

    !>          WORK is DOUBLE PRECISION array, dimension (max(1,2*N-2))
    !>          If COMPZ = 'N', then WORK is not referenced.
    !>

    INFO

    !>          INFO is INTEGER
    !>          = 0:  successful exit
    !>          < 0:  if INFO = -i, the i-th argument had an illegal value
    !>          > 0:  the algorithm has failed to find all the eigenvalues in
    !>                a total of 30*N iterations; if INFO = i, then i
    !>                elements of E have not converged to zero; on exit, D
    !>                and E contain the elements of a symmetric tridiagonal
    !>                matrix which is unitarily similar to the original
    !>                matrix.
    !>

Author
    Univ. of Tennessee

    Univ. of California Berkeley

    Univ. of Colorado Denver

    NAG Ltd.

Author

Generated automatically by Doxygen for LAPACK from the source code.