SRC/cpstrf.f(3)
β¨ SRC/cpstrf.f(3) β¨
okay bestie, welcome to the Library Functions Manual entry for SRC/cpstrf.f β it's giving tiny file, huge math energy, and we're obsessed π
π NAME π
SRC/cpstrf.f β minimal, iconic, periodt π
π SYNOPSIS π
π¦ Functions/Subroutines π¦
Quick vibe check, iykyk:
subroutine cpstrf (uplo, n, a, lda, piv, rank, tol, work, info)
CPSTRF computes the Cholesky factorization with complete pivoting of
complex Hermitian positive semidefinite matrix.
π§ Function/Subroutine Documentation π§
ngl, the signature is long but she's literally just doing her job π«Ά
subroutine cpstrf (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)
CPSTRF computes the Cholesky factorization with complete pivoting of complex Hermitian positive semidefinite matrix.
π Purpose: π
okay so here's the whole point, bestie: CPSTRF 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.
π¨ no cap, 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 π
bestie, every parameter matters, fr fr. Here's the full list:
UPLOβUPLOisCHARACTER*1. Specifies whether the upper or lower triangular part of the symmetric matrixAis stored.= 'U': Upper triangular= 'L': Lower triangular
NβNisINTEGER. The order of the matrixA.N >= 0.AβAisCOMPLEX array, dimension (LDA,N).- On entry, the symmetric matrix
A. 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 factorUorLfrom the Cholesky factorization as above.
- On entry, the symmetric matrix
LDAβLDAisINTEGER. The leading dimension of the arrayA.LDA >= max(1,N).PIVβPIVisINTEGER array, dimension (N).PIVis such that the nonzero entries areP( PIV(K), K ) = 1.RANKβRANKisINTEGER. The rank ofAgiven by the number of steps the algorithm completed.TOLβTOLisREAL. 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βWORKisREAL array, dimension (2*N). Work space.INFOβINFOisINTEGER.< 0: IfINFO = -K, the K-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 π
the way that multiple universities and NAG Ltd. are on the credits β highkey iconic π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 141 of file cpstrf.f.
π«Ά Author π«Ά
Generated automatically by Doxygen for LAPACK from the source code.
xoxo, your LAPACK bestie π β footer stamp: LAPACK Version 3.12.0, SRC/cpstrf.f(3) (no date on this one, just vibes) π«Ά
π¦ 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