SRC/zpptrs.f(3)

πŸ’œ SRC/zpptrs.f

okay bestie, so this is a page from the LAPACK Library Functions Manual (that's the manual family it lives in, iykyk) and it's all about one little subroutine named zpptrs. she's a solver. she's iconic. let's get into it. ✨


✨ SYNOPSIS ✨

Functions/Subroutines

  • subroutine zpptrs (uplo, n, nrhs, ap, b, ldb, info) β€” ZPPTRS 🫢

πŸŽ€ Function/Subroutine Documentation πŸŽ€

subroutine zpptrs (character uplo, integer n, integer nrhs, complex*16,
    dimension( * ) ap, complex*16, dimension( ldb, * ) b, integer ldb,
    integer info)

ZPPTRS

🌸 Purpose 🌸

ZPPTRS solves a system of linear equations A*X = B with a Hermitian positive definite matrix A in packed storage using the Cholesky factorization A = UH * U or A = L * LH computed by ZPPTRF.

so basically she takes the Cholesky factor that ZPPTRF already did the hard work of computing, and she solves the whole A*X = B situation for you. no cap. πŸ’…

πŸ¦‹ Parameters πŸ¦‹

  • UPLO β€” UPLO is CHARACTER*1. which triangle of A are we even talking about? = 'U': Upper triangle of A is stored;  = 'L': Lower triangle of A is stored. pick one, bestie. πŸ™ˆ
  • N β€” N is INTEGER. the order of the matrix A. and like, N >= 0. (zero is allowed, she's flexible like that. ✨)
  • NRHS β€” NRHS is INTEGER. the number of right hand sides, i.e., the number of columns of the matrix B. also NRHS >= 0. πŸ‘‘
  • AP β€” AP is COMPLEX*16 array, dimension (N*(N+1)/2). this is the triangular factor U or L from the Cholesky factorization A = U**H * U or A = L * L**H, packed columnwise in a linear array. the j-th column of U or L is stored in the array AP like this:
    • if UPLO = 'U', AP(i + (j-1)*j/2) = U(i,j) for 1<=i<=j;
    • if UPLO = 'L', AP(i + (j-1)*(2n-j)/2) = L(i,j) for j<=i<=n.

yes the index math is giving main character energy, but it's literally just columnwise packing. trust. πŸ’–

  • B β€” B is COMPLEX*16 array, dimension (LDB,NRHS). on entry, it's the right hand side matrix B. on exit, plot twist, it's the solution matrix X. she ate. πŸ”₯
  • LDB β€” LDB is INTEGER. the leading dimension of the array B. LDB >= max(1,N). respect the leading dimension or face consequences, fr fr. πŸ’€
  • INFO β€” INFO is INTEGER. the vibe check:
    • = 0: successful exit πŸŽ‰
    • < 0: if INFO = -i, the i-th argument had an illegal value 😭

⭐ Author ⭐

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

Definition at line 107 of file zpptrs.f.


🌈 Author 🌈

Generated automatically by Doxygen for LAPACK from the source code. 🧚 (yes, a robot wrote the docs, she's doing her best.)


and that's the whole page, bestie β€” no notes, periodt. πŸ’…

mwah πŸ’‹ β€” this was LAPACK, Version 3.12.0, dated SRC/zpptrs.f(3), and yes the footer said so, so I'm saying so. 🫢

πŸ“¦ where this page comes from