.TH "spstrf.f" 3 "Wed Oct 15 2014" "Version 3.4.2" "LAPACK" \" -*- nroff -*- .ad l .nh .SH NAME spstrf.f \- .SH SYNOPSIS .br .PP .SS "Functions/Subroutines" .in +1c .ti -1c .RI "subroutine \fBspstrf\fP (UPLO, N, A, LDA, PIV, RANK, TOL, WORK, INFO)" .br .RI "\fI\fBSPSTRF\fP \fP" .in -1c .SH "Function/Subroutine Documentation" .PP .SS "subroutine spstrf (characterUPLO, integerN, real, dimension( lda, * )A, integerLDA, integer, dimension( n )PIV, integerRANK, realTOL, real, dimension( 2*n )WORK, integerINFO)" .PP \fBSPSTRF\fP .PP \fBPurpose: \fP .RS 4 .PP .nf SPSTRF 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 3 BLAS. .fi .PP .RE .PP \fBParameters:\fP .RS 4 \fIUPLO\fP .PP .nf 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 .fi .PP .br \fIN\fP .PP .nf N is INTEGER The order of the matrix A. N >= 0. .fi .PP .br \fIA\fP .PP .nf 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. .fi .PP .br \fILDA\fP .PP .nf LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N). .fi .PP .br \fIPIV\fP .PP .nf PIV is INTEGER array, dimension (N) PIV is such that the nonzero entries are P( PIV(K), K ) = 1. .fi .PP .br \fIRANK\fP .PP .nf RANK is INTEGER The rank of A given by the number of steps the algorithm completed. .fi .PP .br \fITOL\fP .PP .nf 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. .fi .PP .br \fIWORK\fP .PP .nf WORK is REAL array, dimension (2*N) Work space. .fi .PP .br \fIINFO\fP .PP .nf 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 indefinite. See Section 7 of LAPACK Working Note #161 for further information. .fi .PP .RE .PP \fBAuthor:\fP .RS 4 Univ\&. of Tennessee .PP Univ\&. of California Berkeley .PP Univ\&. of Colorado Denver .PP NAG Ltd\&. .RE .PP \fBDate:\fP .RS 4 November 2011 .RE .PP .PP Definition at line 141 of file spstrf\&.f\&. .SH "Author" .PP Generated automatically by Doxygen for LAPACK from the source code\&.