pstf2(3)

NAME
pstf2 - pstf2: triangular factor, with pivoting panel, level 2

SYNOPSIS

  Functions

subroutine cpstf2 (uplo, n, a, lda, piv, rank, tol, work, info)
CPSTF2 computes the Cholesky factorization with complete pivoting of complex Hermitian positive semidefinite matrix.
subroutine dpstf2 (uplo, n, a, lda, piv, rank, tol, work, info)
DPSTF2 computes the Cholesky factorization with complete pivoting of a real symmetric positive semidefinite matrix.
subroutine spstf2 (uplo, n, a, lda, piv, rank, tol, work, info)
SPSTF2 computes the Cholesky factorization with complete pivoting of a real symmetric positive semidefinite matrix.
subroutine zpstf2 (uplo, n, a, lda, piv, rank, tol, work, info)
ZPSTF2 computes the Cholesky factorization with complete pivoting of a complex Hermitian positive semidefinite matrix.

Detailed Description

Function Documentation

  subroutine cpstf2 (character uplo, integer n, complex, dimension( lda, * ) a, integer lda, integer, dimension( n ) piv, integer rank, real tol, real, dimension( 2*n ) work, integer info)

CPSTF2 computes the Cholesky factorization with complete pivoting of complex Hermitian positive semidefinite matrix.

Purpose:

    !>
    !> CPSTF2 computes the Cholesky factorization with complete
    !> pivoting of a complex Hermitian positive semidefinite matrix A.
    !>
    !> The factorization has the form
    !>    P**T * A * P = U**H * U ,  if UPLO = 'U',
    !>    P**T * A * P = L  * L**H,  if UPLO = 'L',
    !> where U is an upper triangular matrix and L is lower triangular, and
    !> P is stored as vector PIV.
    !>
    !> This algorithm does not attempt to check that A is positive
    !> semidefinite. This version of the algorithm calls level 2 BLAS.
    !>

Parameters
    UPLO

    !>          UPLO is CHARACTER*1
    !>          Specifies whether the upper or lower triangular part of the
    !>          symmetric matrix A is stored.
    !>          = 'U':  Upper triangular
    !>          = 'L':  Lower triangular
    !>

    N

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

    A

    !>          A is COMPLEX array, dimension (LDA,N)
    !>          On entry, the symmetric matrix A.  If UPLO = 'U', the leading
    !>          n by n upper triangular part of A contains the upper
    !>          triangular part of the matrix A, and the strictly lower
    !>          triangular part of A is not referenced.  If UPLO = 'L', the
    !>          leading n by n lower triangular part of A contains the lower
    !>          triangular part of the matrix A, and the strictly upper
    !>          triangular part of A is not referenced.
    !>
    !>          On exit, if INFO = 0, the factor U or L from the Cholesky
    !>          factorization as above.
    !>

    PIV

    !>          PIV is INTEGER array, dimension (N)
    !>          PIV is such that the nonzero entries are P( PIV(K), K ) = 1.
    !>

    RANK

    !>          RANK is INTEGER
    !>          The rank of A given by the number of steps the algorithm
    !>          completed.
    !>

    TOL

    !>          TOL is REAL
    !>          User defined tolerance. If TOL < 0, then N*U*MAX( A( K,K ) )
    !>          will be used. The algorithm terminates at the (K-1)st step
    !>          if the pivot <= TOL.
    !>

    LDA

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

    WORK

    !>          WORK is REAL array, dimension (2*N)
    !>          Work space.
    !>

    INFO

    !>          INFO is INTEGER
    !>          < 0: If INFO = -K, the K-th argument had an illegal value,
    !>          = 0: algorithm completed successfully, and
    !>          > 0: the matrix A is either rank deficient with computed rank
    !>               as returned in RANK, or is not positive semidefinite. See
    !>               Section 7 of LAPACK Working Note #161 for further
    !>               information.
    !>

Author
    Univ. of Tennessee

    Univ. of California Berkeley

    Univ. of Colorado Denver

    NAG Ltd.

  subroutine dpstf2 (character uplo, integer n, double precision, dimension( lda, * ) a, integer lda, integer, dimension( n ) piv, integer rank, double precision tol, double precision, dimension( 2*n ) work, integer info)

DPSTF2 computes the Cholesky factorization with complete pivoting of a real symmetric positive semidefinite matrix.

Purpose:

    !>
    !> DPSTF2 computes the Cholesky factorization with complete
    !> pivoting of a real symmetric positive semidefinite matrix A.
    !>
    !> The factorization has the form
    !>    P**T * A * P = U**T * U ,  if UPLO = 'U',
    !>    P**T * A * P = L  * L**T,  if UPLO = 'L',
    !> where U is an upper triangular matrix and L is lower triangular, and
    !> P is stored as vector PIV.
    !>
    !> This algorithm does not attempt to check that A is positive
    !> semidefinite. This version of the algorithm calls level 2 BLAS.
    !>

Parameters
    UPLO

    !>          UPLO is CHARACTER*1
    !>          Specifies whether the upper or lower triangular part of the
    !>          symmetric matrix A is stored.
    !>          = 'U':  Upper triangular
    !>          = 'L':  Lower triangular
    !>

    N

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

    A

    !>          A is DOUBLE PRECISION array, dimension (LDA,N)
    !>          On entry, the symmetric matrix A.  If UPLO = 'U', the leading
    !>          n by n upper triangular part of A contains the upper
    !>          triangular part of the matrix A, and the strictly lower
    !>          triangular part of A is not referenced.  If UPLO = 'L', the
    !>          leading n by n lower triangular part of A contains the lower
    !>          triangular part of the matrix A, and the strictly upper
    !>          triangular part of A is not referenced.
    !>
    !>          On exit, if INFO = 0, the factor U or L from the Cholesky
    !>          factorization as above.
    !>

    PIV

    !>          PIV is INTEGER array, dimension (N)
    !>          PIV is such that the nonzero entries are P( PIV(K), K ) = 1.
    !>

    RANK

    !>          RANK is INTEGER
    !>          The rank of A given by the number of steps the algorithm
    !>          completed.
    !>

    TOL

    !>          TOL is DOUBLE PRECISION
    !>          User defined tolerance. If TOL < 0, then N*U*MAX( A( K,K ) )
    !>          will be used. The algorithm terminates at the (K-1)st step
    !>          if the pivot <= TOL.
    !>

    LDA

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

    WORK

    !>          WORK is DOUBLE PRECISION array, dimension (2*N)
    !>          Work space.
    !>

    INFO

    !>          INFO is INTEGER
    !>          < 0: If INFO = -K, the K-th argument had an illegal value,
    !>          = 0: algorithm completed successfully, and
    !>          > 0: the matrix A is either rank deficient with computed rank
    !>               as returned in RANK, or is not positive semidefinite. See
    !>               Section 7 of LAPACK Working Note #161 for further
    !>               information.
    !>

Author
    Univ. of Tennessee

    Univ. of California Berkeley

    Univ. of Colorado Denver

    NAG Ltd.

  subroutine spstf2 (character uplo, integer n, real, dimension( lda, * ) a, integer lda, integer, dimension( n ) piv, integer rank, real tol, real, dimension( 2*n ) work, integer info)

SPSTF2 computes the Cholesky factorization with complete pivoting of a real symmetric positive semidefinite matrix.

Purpose:

    !>
    !> SPSTF2 computes the Cholesky factorization with complete
    !> pivoting of a real symmetric positive semidefinite matrix A.
    !>
    !> The factorization has the form
    !>    P**T * A * P = U**T * U ,  if UPLO = 'U',
    !>    P**T * A * P = L  * L**T,  if UPLO = 'L',
    !> where U is an upper triangular matrix and L is lower triangular, and
    !> P is stored as vector PIV.
    !>
    !> This algorithm does not attempt to check that A is positive
    !> semidefinite. This version of the algorithm calls level 2 BLAS.
    !>

Parameters
    UPLO

    !>          UPLO is CHARACTER*1
    !>          Specifies whether the upper or lower triangular part of the
    !>          symmetric matrix A is stored.
    !>          = 'U':  Upper triangular
    !>          = 'L':  Lower triangular
    !>

    N

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

    A

    !>          A is REAL array, dimension (LDA,N)
    !>          On entry, the symmetric matrix A.  If UPLO = 'U', the leading
    !>          n by n upper triangular part of A contains the upper
    !>          triangular part of the matrix A, and the strictly lower
    !>          triangular part of A is not referenced.  If UPLO = 'L', the
    !>          leading n by n lower triangular part of A contains the lower
    !>          triangular part of the matrix A, and the strictly upper
    !>          triangular part of A is not referenced.
    !>
    !>          On exit, if INFO = 0, the factor U or L from the Cholesky
    !>          factorization as above.
    !>

    PIV

    !>          PIV is INTEGER array, dimension (N)
    !>          PIV is such that the nonzero entries are P( PIV(K), K ) = 1.
    !>

    RANK

    !>          RANK is INTEGER
    !>          The rank of A given by the number of steps the algorithm
    !>          completed.
    !>

    TOL

    !>          TOL is REAL
    !>          User defined tolerance. If TOL < 0, then N*U*MAX( A( K,K ) )
    !>          will be used. The algorithm terminates at the (K-1)st step
    !>          if the pivot <= TOL.
    !>

    LDA

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

    WORK

    !>          WORK is REAL array, dimension (2*N)
    !>          Work space.
    !>

    INFO

    !>          INFO is INTEGER
    !>          < 0: If INFO = -K, the K-th argument had an illegal value,
    !>          = 0: algorithm completed successfully, and
    !>          > 0: the matrix A is either rank deficient with computed rank
    !>               as returned in RANK, or is not positive semidefinite. See
    !>               Section 7 of LAPACK Working Note #161 for further
    !>               information.
    !>

Author
    Univ. of Tennessee

    Univ. of California Berkeley

    Univ. of Colorado Denver

    NAG Ltd.

  subroutine zpstf2 (character uplo, integer n, complex*16, dimension( lda, * ) a, integer lda, integer, dimension( n ) piv, integer rank, double precision tol, double precision, dimension( 2*n ) work, integer info)

ZPSTF2 computes the Cholesky factorization with complete pivoting of a complex Hermitian positive semidefinite matrix.

Purpose:

    !>
    !> ZPSTF2 computes the Cholesky factorization with complete
    !> pivoting of a complex Hermitian positive semidefinite matrix A.
    !>
    !> The factorization has the form
    !>    P**T * A * P = U**H * U ,  if UPLO = 'U',
    !>    P**T * A * P = L  * L**H,  if UPLO = 'L',
    !> where U is an upper triangular matrix and L is lower triangular, and
    !> P is stored as vector PIV.
    !>
    !> This algorithm does not attempt to check that A is positive
    !> semidefinite. This version of the algorithm calls level 2 BLAS.
    !>

Parameters
    UPLO

    !>          UPLO is CHARACTER*1
    !>          Specifies whether the upper or lower triangular part of the
    !>          symmetric matrix A is stored.
    !>          = 'U':  Upper triangular
    !>          = 'L':  Lower triangular
    !>

    N

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

    A

    !>          A is COMPLEX*16 array, dimension (LDA,N)
    !>          On entry, the symmetric matrix A.  If UPLO = 'U', the leading
    !>          n by n upper triangular part of A contains the upper
    !>          triangular part of the matrix A, and the strictly lower
    !>          triangular part of A is not referenced.  If UPLO = 'L', the
    !>          leading n by n lower triangular part of A contains the lower
    !>          triangular part of the matrix A, and the strictly upper
    !>          triangular part of A is not referenced.
    !>
    !>          On exit, if INFO = 0, the factor U or L from the Cholesky
    !>          factorization as above.
    !>

    PIV

    !>          PIV is INTEGER array, dimension (N)
    !>          PIV is such that the nonzero entries are P( PIV(K), K ) = 1.
    !>

    RANK

    !>          RANK is INTEGER
    !>          The rank of A given by the number of steps the algorithm
    !>          completed.
    !>

    TOL

    !>          TOL is DOUBLE PRECISION
    !>          User defined tolerance. If TOL < 0, then N*U*MAX( A( K,K ) )
    !>          will be used. The algorithm terminates at the (K-1)st step
    !>          if the pivot <= TOL.
    !>

    LDA

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

    WORK

    !>          WORK is DOUBLE PRECISION array, dimension (2*N)
    !>          Work space.
    !>

    INFO

    !>          INFO is INTEGER
    !>          < 0: If INFO = -K, the K-th argument had an illegal value,
    !>          = 0: algorithm completed successfully, and
    !>          > 0: the matrix A is either rank deficient with computed rank
    !>               as returned in RANK, or is not positive semidefinite. See
    !>               Section 7 of LAPACK Working Note #161 for further
    !>               information.
    !>

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.