SRC/dsytri2x.f(3)
π SRC/dsytri2x.f β from the Library Functions Manual, bestie
okay so picture this: you're deep in SRC/dsytri2x.f (yes that's the file, section 3 of the Library Functions Manual, we're fancy) and you need the tea on dsytri2x. Sit down, I got you. π«Ά
β¨ SYNOPSIS β¨
Functions/Subroutines
subroutine dsytri2x (uplo, n, a, lda, ipiv, work, nb, info)β DSYTRI2X, that's the whole vibe π«
π¦ Function/Subroutine Documentation π¦
subroutine dsytri2x (character uplo, integer n, double precision, dimension(
lda, * ) a, integer lda, integer, dimension( * ) ipiv, double precision,
dimension( n+nb+1,* ) work, integer nb, integer info)
DSYTRI2X π
π Purpose:
!>
!> DSYTRI2X computes the inverse of a real symmetric indefinite matrix
!> A using the factorization A = U*D*U**T or A = L*D*L**T computed by
!> DSYTRF.
!>
so literally: it takes your real symmetric indefinite matrix A, and the factorization A = U*D*U**T or A = L*D*L**T that DSYTRF already made, and hands you back the inverse. no cap, that's the whole job. π₯
πΈ Parameters πΈ
UPLO
!> UPLO is CHARACTER*1
!> Specifies whether the details of the factorization are stored
!> as an upper or lower triangular matrix.
!> = 'U': Upper triangular, form is A = U*D*U**T;
!> = 'L': Lower triangular, form is A = L*D*L**T.
!>
UPLO is a CHARACTER*1 and it's basically the vibe check for where your factorization lives β upper triangular or lower triangular, pick your fighter:
= 'U': upper triangular, form isA = U*D*U**T= 'L': lower triangular, form isA = L*D*L**T
N
!> N is INTEGER
!> The order of the matrix A. N >= 0.
!>
N is an INTEGER, it's the order of the matrix A, and it's gotta be N >= 0. no negative girlies allowed. π
A
!> A is DOUBLE PRECISION array, dimension (LDA,N)
!> On entry, the NNB diagonal matrix D and the multipliers
!> used to obtain the factor U or L as computed by DSYTRF.
!>
!> 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.
!>
A is a DOUBLE PRECISION array, dimension (LDA,N). two moods, bestie:
- On entry: the NNB diagonal matrix
Dand the multipliers used to obtain the factorUorL, exactly as computed byDSYTRF. it's giving "I already did the hard part". - On exit, if
INFO = 0: the (symmetric) inverse of the original matrix. and here's the important bit π- if
UPLO = 'U', the upper triangular part of the inverse is formed and the part ofAbelow the diagonal is not referenced - if
UPLO = 'L', the lower triangular part of the inverse is formed and the part ofAabove the diagonal is not referenced
- if
LDA
!> LDA is INTEGER
!> The leading dimension of the array A. LDA >= max(1,N).
!>
LDA is an INTEGER, it's the leading dimension of the array A, and the rule is LDA >= max(1,N). periodt. π
IPIV
!> IPIV is INTEGER array, dimension (N)
!> Details of the interchanges and the NNB structure of D
!> as determined by DSYTRF.
!>
IPIV is an INTEGER array, dimension (N), and it's holding the details of the interchanges and the NNB structure of D as determined by DSYTRF. it's the receipts from the earlier factorization, iconic. π§Ύ
WORK
!> WORK is DOUBLE PRECISION array, dimension (N+NB+1,NB+3)
!>
WORK is a DOUBLE PRECISION array, dimension (N+NB+1,NB+3). it's the workspace, it does the behind-the-scenes work, main character energy honestly. β¨
NB
!> NB is INTEGER
!> Block size
!>
NB is an INTEGER and it's the block size. short king, huge responsibility. π
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) = 0; the matrix is singular and its
!> inverse could not be computed.
!>
INFO is an INTEGER and it's the final verdict:
= 0: successful exit, we ate. π< 0: ifINFO = -i, the i-th argument had an illegal value. not me passing bad arguments π> 0: ifINFO = i,D(i,i) = 0β the matrix is singular and its inverse could not be computed. π that's a wrap, no inverse today.
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 119 of file dsytri2x.f. π
π Author π
Generated automatically by Doxygen for LAPACK from the source code. yes, the docs wrote themselves, slay. π€β¨
π ok that's the whole page bestie, every flag, every array bound, every INFO case β nothing dropped, nothing invented. go inverse something symmetric and indefinite, you got this. π¦
LAPACK, Version 3.12.0 β catch you on the next SRC/dsytri2x.f(3) read, muah ππΈ
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms