SRC/dpstrf.f(3)
πΈ NAME πΈ
SRC/dpstrf.f β okay so this page is titled SRC/dpstrf.f(3) and it lives in the Library Functions Manual. Itβs all about dpstrf: Cholesky factorization with complete pivoting for a real symmetric positive semidefinite matrix. The main character energy is real. π
β¨ SYNOPSIS β¨
Functions/Subroutines
subroutine dpstrf (uplo, n, a, lda, piv, rank, tol, work, info)β DPSTRF computes the Cholesky factorization with complete pivoting of a real symmetric positive semidefinite matrix.
π¦ Function/Subroutine Documentation π¦
subroutine dpstrf
subroutine dpstrf (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)
DPSTRF computes the Cholesky factorization with complete pivoting of a real symmetric positive semidefinite matrix. No cap.
π Purpose
DPSTRF 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.
β οΈ Important vibe check: this algorithm does not attempt to check that A is positive semidefinite. This version of the algorithm calls level 3 BLAS.
π Parameters
UPLOβ isCHARACTER*1. Specifies whether the upper or lower triangular part of the symmetric matrixAis stored.= 'U': Upper triangular= 'L': Lower triangular
Nβ isINTEGER. The order of the matrixA.N >= 0.Aβ isDOUBLE PRECISION array, dimension (LDA,N). On entry, the symmetric matrixA. IfUPLO = 'U', the leading n by n upper triangular part ofAcontains the upper triangular part of the matrixA, and the strictly lower triangular part ofAis not referenced. IfUPLO = 'L', the leading n by n lower triangular part ofAcontains the lower triangular part of the matrixA, and the strictly upper triangular part ofAis not referenced.
On exit, if INFO = 0, the factor U or L from the Cholesky factorization as above.
LDAβ isINTEGER. The leading dimension of the arrayA.LDA >= max(1,N).PIVβ isINTEGER array, dimension (N).PIVis such that the nonzero entries areP( PIV(K), K ) = 1.RANKβ isINTEGER. The rank ofAgiven by the number of steps the algorithm completed.TOLβ isDOUBLE PRECISION. User defined tolerance. IfTOL < 0, thenN*U*MAX( A(K,K) )will be used. The algorithm terminates at the(K-1)ststep if thepivot <= TOL.WORKβ isDOUBLE PRECISION array, dimension (2*N). Work space.INFOβ isINTEGER.< 0: IfINFO = -K, theK-th argument had an illegal value,= 0: algorithm completed successfully, and> 0: the matrixAis either rank deficient with computed rank as returned inRANK, 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.
Definition at line 141 of file dpstrf.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
Sign-off, bestie: this page says LAPACK Version 3.12.0, and the file/source tag is SRC/dpstrf.f(3). Date check: the footer doesnβt list a date, so Iβm not inventing one β we stay factual in this group chat. πβ¨π
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms