SRC/spstrf.f(3)
π NAME π
SRC/spstrf.f β thatβs the file, bestie π
β¨ SYNOPSIS β¨
π¦ Functions/Subroutines π¦
subroutine spstrf (uplo, n, a, lda, piv, rank, tol, work, info)
SPSTRF computes the Cholesky factorization with complete pivoting of a real symmetric positive semidefinite matrix. Periodt. π₯
π Function/Subroutine Documentation π
subroutine spstrf (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)
SPSTRF computes the Cholesky factorization with complete pivoting of a real symmetric positive semidefinite matrix. Yup, thatβs the whole vibe π
πΈ Purpose
Okay so SPSTRF computes the Cholesky factorization with complete pivoting of a real symmetric positive semidefinite matrix A. No cap.
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. Iconic linear algebra behavior, honestly β¨
π¨ Real talk, bestie: 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β isREALarray, dimension(LDA,N).- On entry, the symmetric matrix
A. IfUPLO = 'U', the leadingnbynupper triangular part ofAcontains the upper triangular part of the matrixA, and the strictly lower triangular part ofAis not referenced. IfUPLO = 'L', the leadingnbynlower 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 factorUorLfrom the Cholesky factorization as above.
- On entry, the symmetric matrix
LDAβ isINTEGER. The leading dimension of the arrayA.LDA >= max(1,N).PIVβ isINTEGERarray, 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β isREAL. User defined tolerance. IfTOL < 0, thenN*U*MAX( A(K,K) )will be used. The algorithm terminates at the(K-1)st step if the pivot<= TOL.WORKβ isREALarray, 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 140 of file spstrf.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code. Slay, documentation generator π β¨
Thatβs the whole page, bestie β footer energy is LAPACK, Version 3.12.0, SRC/spstrf.f(3) π«Άπ
π¦ 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