ZPOTRF(3)

πŸ“¦ version 3.12.0, in opensuse-leap 16.0

πŸ’– ZPOTRF πŸ’– (like, the Cholesky era of your life)

okay so bestie, welcome to the zpotrf.f page β€” yes the whole file lives at /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zpotrf.f, and I'm not retyping that whole path again unless you ask nicely (jk I literally just did πŸ’…). it's a member of the LAPACK library functions manual, and it's giving iconic.


✨ SYNOPSIS ✨

Functions/Subroutines 🫢

  • subroutine ZPOTRF (uplo, n, a, lda, info) β€” that's the queen herself, ZPOTRF.

🌸 Function/Subroutine Documentation 🌸

subroutine ZPOTRF (character uplo, integer n, complex*16, dimension( lda, * ) a, integer lda, integer info)

ZPOTRF β€” say it with me, ZPOTRF. main character subroutine energy, no cap. πŸ‘‘

πŸ¦‹ Purpose πŸ¦‹

!>
!> ZPOTRF computes the Cholesky factorization of a complex Hermitian
!> positive definite matrix A.
!>
!> The factorization has the form
!>    A = U**H * U,  if UPLO = 'U', or
!>    A = L  * L**H,  if UPLO = 'L',
!> where U is an upper triangular matrix and L is lower triangular.
!>
!> This is the block version of the algorithm, calling Level 3 BLAS.
!>

so real talk β€” ZPOTRF computes the Cholesky factorization of a complex Hermitian positive definite matrix A. it spits out the factorization as either A = U**H * U when UPLO = 'U', or A = L * L**H when UPLO = 'L', where U is upper triangular and L is lower triangular. and bestie, it's the block version of the algorithm, calling Level 3 BLAS β€” she's efficient, she's fast, she ate. πŸ”₯

πŸŽ€ Parameters πŸŽ€

  • UPLO β€” this one's CHARACTER*1 and it's the vibe selector:
    • = 'U': only the upper triangle of A is stored;
    • = 'L': only the lower triangle of A is stored.
  • N β€” INTEGER, the order of the matrix A. constraint: N >= 0. (yes zero is allowed, she's chill like that πŸ“)
  • A β€” COMPLEX*16 array, dimension (LDA,N).
    • on entry: the Hermitian matrix A. if UPLO = 'U', then 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', then 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. like, don't even worry about that other triangle, she's not looking at it πŸ™ˆ
    • on exit: if INFO = 0, you get the factor U or L from the Cholesky factorization A = U**H *U or A = L*L**H. slay. ✨
  • LDA β€” INTEGER, the leading dimension of the array A. requirement: LDA >= max(1,N). periodt.
  • INFO β€” INTEGER, the receipts:
    • = 0: successful exit πŸŽ‰
    • < 0: if INFO = -i, the i-th argument had an illegal value (oops, someone passed something sus πŸ’€)
    • > 0: if INFO = i, the leading principal minor of order i is not positive, and the factorization could not be completed. like, it tried and it couldn't, and that's the tea 😭
ngl, if you get INFO > 0, your matrix wasn't positive definite enough for her, and no amount of manifesting will fix it. she's telling you the truth. 🧚

πŸ‘‘ Author πŸ‘‘

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

⭐ Definition ⭐

definition located at line 106 of file zpotrf.f.


πŸ’œ Author (the meta one) πŸ’œ

generated automatically by Doxygen for LAPACK from the source code. she was born from a build script, and honestly? icon behavior. 🌈


k that's the whole page bestie, every flag, every constraint, every single INFO case β€” nothing skipped, we ate and left no crumbs 🫢

LAPACK β€” Version 3.12.0 β€” from /home/abui...RC/zpotrf.f(3) πŸ’– mwah, go factor something positive definite πŸ’–

πŸ“¦ where this page comes from