/home/abui...RC/zhpsv.f(3)

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

πŸ’– NAME πŸ’–

okay so bestie, this page is from the Library Functions Manual for /home/abui...RC/zhpsv.f(3), and the actual NAME is this extremely long source path:

/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zhpsv.f


✨ SYNOPSIS ✨

πŸ¦‹ Functions/Subroutines πŸ¦‹

subroutine ZHPSV (uplo, n, nrhs, ap, ipiv, b, ldb, info)
     ZHPSV computes the solution to system of linear equations A * X = B
    for OTHER matrices

🌸 Function/Subroutine Documentation 🌸

The full signature is literally this, no cap:

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

And the one-line vibe is: ZHPSV computes the solution to system of linear equations A * X = B for OTHER matrices πŸ’…

πŸŽ€ Purpose πŸŽ€

ZHPSV solves a complex system of linear equations:

A * X = B

where A is an N-by-N Hermitian matrix stored in packed format, and X and B are N-by-NRHS matrices.

The diagonal pivoting method is used to factor A as:

A = U * D * U**H,  if UPLO = 'U', or
A = L * D * L**H,  if UPLO = 'L',

where U (or L) is a product of permutation and unit upper (lower) triangular matrices, and D is Hermitian and block diagonal with 1-by-1 and 2-by-2 diagonal blocks. The factored form of A is then used to solve the system of equations A * X = B. ✨

🌈 Parameters 🌈

πŸ’œ UPLO

  • UPLO is CHARACTER*1
    • = 'U': Upper triangle of A is stored;
    • = 'L': Lower triangle of A is stored.

πŸ’œ N

  • N is INTEGER
    • The number of linear equations, i.e., the order of the matrix A.
    • N >= 0.

πŸ’œ NRHS

  • NRHS is INTEGER
    • The number of right hand sides, i.e., the number of columns of the matrix B.
    • NRHS >= 0.

πŸ’œ AP

  • AP is COMPLEX*16 array, dimension (N*(N+1)/2)
    • On entry, the upper or lower triangle of the Hermitian matrix A, packed columnwise in a linear array.
    • The j-th column of A is stored in the array AP as follows:
      • if UPLO = 'U', AP(i + (j-1)*j/2) = A(i,j) for 1<=i<=j;
      • if UPLO = 'L', AP(i + (j-1)*(2n-j)/2) = A(i,j) for j<=i<=n.
    • See below for further details.
    • On exit, the block diagonal matrix D and the multipliers used to obtain the factor U or L from the factorization A = U*D*U**H or A = L*D*L**H as computed by ZHPTRF, stored as a packed triangular matrix in the same storage format as A.

πŸ’œ IPIV

  • IPIV is INTEGER array, dimension (N)
    • Details of the interchanges and the block structure of D, as determined by ZHPTRF.
    • If IPIV(k) > 0, then rows and columns k and IPIV(k) were interchanged, and D(k,k) is a 1-by-1 diagonal block.
    • If UPLO = 'U' and IPIV(k) = IPIV(k-1) < 0, then rows and columns k-1 and -IPIV(k) were interchanged and D(k-1:k,k-1:k) is a 2-by-2 diagonal block.
    • If UPLO = 'L' and IPIV(k) = IPIV(k+1) < 0, then rows and columns k+1 and -IPIV(k) were interchanged and D(k:k+1,k:k+1) is a 2-by-2 diagonal block.

πŸ’œ B

  • B is COMPLEX*16 array, dimension (LDB,NRHS)
    • On entry, the N-by-NRHS right hand side matrix B.
    • On exit, if INFO = 0, the N-by-NRHS solution matrix X.

πŸ’œ LDB

  • LDB is INTEGER
    • The leading dimension of the array B.
    • LDB >= max(1,N).

πŸ’œ INFO

  • INFO is INTEGER
    • = 0: successful exit.
    • < 0: if INFO = -i, the i-th argument had an illegal value.
    • > 0: if INFO = i, D(i,i) is exactly zero. The factorization has been completed, but the block diagonal matrix D is exactly singular, so the solution could not be computed.
bestie, that < 0 / > 0 distinction matters β€” don't sleep on it 😭

πŸ‘‘ Author πŸ‘‘

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

🧚 Further Details 🧚

The packed storage scheme is illustrated by the following example when N = 4, UPLO = 'U':

Two-dimensional storage of the Hermitian matrix A:

     a11 a12 a13 a14
         a22 a23 a24
             a33 a34     (aij = conjg(aji))
                 a44

Packed storage of the upper triangle of A:

AP = [ a11, a12, a22, a13, a23, a33, a14, a24, a34, a44 ]

Definition at line 161 of file zhpsv.f.

πŸ’« Author πŸ’«

Generated automatically by Doxygen for LAPACK from the source code.


okay that's the whole page, bestie 🫢 β€” the footer source/version stamp is LAPACK, Version 3.12.0, and the page path is /home/abui...RC/zhpsv.f(3). No date is printed on this page, so I'm not inventing one πŸ’…βœ¨

πŸ“¦ where this page comes from