ZSYTRI_3(3)

๐Ÿ“ฆ version 3.12.0, in opensuse-leap 16.0

okay bestie, welcome to the zsytri_3.f(3) page from the Library Functions Manual โ€” weโ€™re folding that header info in right here so it doesnโ€™t get lonely โœจ

๐ŸŒธ NAME ๐ŸŒธ

the NAME section is literally this path, no extra lore, no cap:

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

โœจ SYNOPSIS โœจ

๐Ÿซถ Functions/Subroutines ๐Ÿซถ

  • subroutine ZSYTRI_3 (uplo, n, a, lda, e, ipiv, work, lwork, info) โ€” ZSYTRI_3

๐Ÿ’… Function/Subroutine Documentation ๐Ÿ’…

hereโ€™s the full signature from the docs, copied exactly because we do not mess with source code vibes:

subroutine ZSYTRI_3 (character uplo, integer n, complex*16, dimension( lda,
     * ) a, integer lda, complex*16, dimension( * ) e, integer, dimension( *
     ) ipiv, complex*16, dimension( * ) work, integer lwork, integer info)

ZSYTRI_3 โ€” main character energy ๐Ÿ”ฅ

๐Ÿงฎ Purpose ๐Ÿงฎ

okay so ZSYTRI_3 computes the inverse of a complex symmetric indefinite matrix A using the factorization computed by ZSYTRF_RK or ZSYTRF_BK:

A = P*U*D*(U**T)*(P**T) or A = P*L*D*(L**T)*(P**T),

where U (or L) is unit upper (or lower) triangular matrix, U**T (or L**T) is the transpose of U (or L), P is a permutation matrix, P**T is the transpose of P, and D is symmetric and block diagonal with 1-by-1 and 2-by-2 diagonal blocks.

ZSYTRI_3 sets the leading dimension of the workspace before calling ZSYTRI_3X that actually computes the inverse. This is the blocked version of the algorithm, calling Level 3 BLAS. iconic behavior fr fr ๐Ÿ’…

๐ŸŽ€ Parameters ๐ŸŽ€

๐Ÿ’– UPLO ๐Ÿ’–

  • UPLO โ€” CHARACTER*1. Specifies whether the details of the factorization are stored as an upper or lower triangular matrix.
    • = 'U': Upper triangle of A is stored;
    • = 'L': Lower triangle of A is stored.

๐ŸŒผ N ๐ŸŒผ

  • N โ€” INTEGER. The order of the matrix A. N >= 0.

๐Ÿฆ‹ A ๐Ÿฆ‹

  • A โ€” COMPLEX*16 array, dimension (LDA,N).
    • On entry, diagonal of the block diagonal matrix D and factors U or L as computed by ZSYTRF_RK and ZSYTRF_BK:
      • a) ONLY diagonal elements of the symmetric block diagonal matrix D on the diagonal of A, i.e. D(k,k) = A(k,k); (superdiagonal (or subdiagonal) elements of D should be provided on entry in array E), and
      • b) If UPLO = 'U': factor U in the superdiagonal part of A. If UPLO = 'L': factor L in the subdiagonal part of A.
    • On exit, if INFO = 0, the symmetric inverse of the original matrix.
      • If UPLO = 'U': the upper triangular part of the inverse is formed and the part of A below the diagonal is not referenced;
      • If UPLO = 'L': the lower triangular part of the inverse is formed and the part of A above the diagonal is not referenced.

๐Ÿ“ LDA ๐Ÿ“

  • LDA โ€” INTEGER. The leading dimension of the array A. LDA >= max(1,N).

๐ŸŒˆ E ๐ŸŒˆ

  • E โ€” COMPLEX*16 array, dimension (N).
    • On entry, contains the superdiagonal (or subdiagonal) elements of the symmetric block diagonal matrix D with 1-by-1 or 2-by-2 diagonal blocks, where
      • If UPLO = 'U': E(i) = D(i-1,i),i=2:N, E(1) not referenced;
      • If UPLO = 'L': E(i) = D(i+1,i),i=1:N-1, E(N) not referenced.
    • NOTE: For 1-by-1 diagonal block D(k), where 1 <= k <= N, the element E(k) is not referenced in both UPLO = 'U' or UPLO = 'L' cases.

๐Ÿงš IPIV ๐Ÿงš

  • IPIV โ€” INTEGER array, dimension (N). Details of the interchanges and the block structure of D as determined by ZSYTRF_RK or ZSYTRF_BK.

๐Ÿ‘‘ WORK ๐Ÿ‘‘

  • WORK โ€” COMPLEX*16 array, dimension (N+NB+1)*(NB+3). On exit, if INFO = 0, WORK(1) returns the optimal LWORK.

๐Ÿ”ฅ LWORK ๐Ÿ”ฅ

  • LWORK โ€” INTEGER. The length of WORK. LWORK >= (N+NB+1)*(NB+3).
    • If LDWORK = -1, then a workspace query is assumed; the routine only calculates the optimal size of the optimal size of the WORK array, returns this value as the first entry of the WORK array, and no error message related to LWORK is issued by XERBLA.
yes bestie, the source literally says LDWORK = -1 here, and it really says โ€œoptimal size of the optimal sizeโ€ โ€” we copy it exactly, no editing the source ๐Ÿ’€

โญ INFO โญ

  • INFO โ€” INTEGER.
    • = 0: successful exit
    • < 0: if INFO = -i, the i-th argument had an illegal value
    • > 0: if INFO = i, D(i,i) = 0; the matrix is singular and its inverse could not be computed.

๐Ÿ‘‘ Author ๐Ÿ‘‘

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

๐ŸŒˆ Contributors ๐ŸŒˆ

the contributor block, vibes and all:

November 2017,  Igor Kozachenko,
                Computer Science Division,
                University of California, Berkeley

๐Ÿ“Œ Definition at line ๐Ÿ“Œ

Definition at line 168 of file zsytri_3.f.

๐Ÿค– Author ๐Ÿค–

Generated automatically by Doxygen for LAPACK from the source code.


okay thatโ€™s the whole page, bestie! cute little sign-off: LAPACK Version 3.12.0, /home/abui.../zsytri_3.f(3). byeee ๐Ÿซถโœจ

๐Ÿ“ฆ where this page comes from