CPSTRF(3)
π¦ NAME π¦
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/cpstrf.f
okay so bestie, welcome to the Library Functions Manual π this page is all about one file β cpstrf.f β and it's the home of the CPSTRF subroutine. yes the path is giving "I live deep inside a build directory and I'm proud of it" π
β¨ SYNOPSIS β¨
Functions/Subroutines
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. (yes, that's a lot of adjectives, no cap, but every single one of them matters π«Ά)
π Function/Subroutine Documentation π
subroutine CPSTRF
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. that's the whole vibe of this subroutine, and honestly? iconic π
πΈ Purpose πΈ
CPSTRFcomputes the Cholesky factorization with complete pivoting of a complex Hermitian positive semidefinite matrixA. The factorization has the formfortran P**T * A * P = U**H * U , if UPLO = 'U', P**T * A * P = L * L**H, if UPLO = 'L',whereUis an upper triangular matrix andLis lower triangular, andPis stored as vectorPIV.
and now the important part, listen up π«Ά β this algorithm does not attempt to check that A is positive semidefinite. like, it is not doing a vibe check on your matrix. and this version of the algorithm calls level 3 BLAS β¨
π Parameters π
UPLOβUPLOisCHARACTER*1. it tells us whether the upper or lower triangular part of the symmetric matrixAis stored. options are:= 'U':Upper triangular= 'L':Lower triangular
NβNisINTEGER. the order of the matrixA. andN >= 0, periodt.AβAisCOMPLEXarray, dimension(LDA,N). On entry, the symmetric matrixA. here's the tea π΅ β 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. (she simply does not look at the other half, respect π )- On exit, if
INFO = 0, the factorUorLfrom the Cholesky factorization as above. slay.
- On exit, if
LDAβLDAisINTEGER. the leading dimension of the arrayA.LDA >= max(1,N). no negotiating on this one, bestie.PIVβPIVisINTEGERarray, 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. she counts her own steps, main character energy fr.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 thepivot <= TOL.WORKβWORKisREALarray, dimension(2*N). work space. it's literally just there to help out, humble icon πINFOβINFOisINTEGER. the whole mood report:< 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 cpstrf.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code. (the bots wrote this one, not me π)
and that's the whole page bestie!! π§π this came straight out of the LAPACK squad, Version 3.12.0, and the file is /home/abui...RC/cpstrf.f(3) β go forth and factorize your positive semidefinite complex Hermitian matrices responsibly, mwah π
π
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms