TESTING/LIN/zsyt01_aa.f(3)
π TESTING/LIN/zsyt01_aa.f π
Okay so bestie, this is the manual page for TESTING/LIN/zsyt01_aa.f from the LAPACK library β it's giving very niche linear algebra energy and honestly? We're obsessed. π§β¨
β¨ NAME β¨
TESTING/LIN/zsyt01_aa.f β no cap, that's literally the whole name, periodt. π
π SYNOPSIS π
π Functions/Subroutines π
subroutine zsyt01_aa(uplo,n,a,lda,afac,ldafac,ipiv,c,ldc,rwork,resid) β the main character of this whole page, fr fr.ZSYT01β yes queen, that's the short name and it ate. π
π¦ Function/Subroutine Documentation π¦
β¨ subroutine zsyt01_aa β¨
subroutine zsyt01_aa (character uplo, integer n, complex*16, dimension( lda,
* ) a, integer lda, complex*16, dimension( ldafac, * ) afac, integer
ldafac, integer, dimension( * ) ipiv, complex*16, dimension( ldc, * ) c,
integer ldc, double precision, dimension( * ) rwork, double precision
resid)
ZSYT01 β that's the vibe check. π
πΈ Purpose πΈ
!>!> ZSYT01 reconstructs a hermitian indefinite matrix A from its!> block L*D*L' or U*D*U' factorization and computes the residual!> norm( C - A ) / ( N * norm(A) * EPS ),!> where C is the reconstructed matrix and EPS is the machine epsilon.!>
So like, it takes the factored version of your matrix, puts it back together (reconstruction era π), and then checks how close it got. The residual formula is the whole point β it's literally norm( C - A ) / ( N * norm(A) * EPS ). Slay. π₯
π Parameters π
UPLOβ is aCHARACTER*1. It tells us whether we're storing the upper or lower triangular part of the hermitian matrixA. The options are:= 'U': Upper triangular β the top half, iykyk. β¬οΈ= 'L': Lower triangular β the bottom half, periodt. β¬οΈ
Nβ is anINTEGER. The number of rows and columns of the matrixA. And bestie,N >= 0β no negative dimensions allowed, that's not the vibe. π«Aβ is aCOMPLEX*16array, dimension(LDA,N). The original hermitian matrixA. The blueprint, the source material, the main character before reconstruction. πLDAβ is anINTEGER. The leading dimension of the arrayA. Constraint:LDA >= max(1,N). Respect the leading dimension, okay? πAFACβ is aCOMPLEX*16array, dimension(LDAFAC,N). The factored form of the matrixA.AFACcontains the block diagonal matrixDand the multipliers used to obtain the factorLorUfrom the blockL*D*L'orU*D*U'factorization as computed byZSYTRF. So like, it's the already-glow-up version β we're just checking the reconstruction. β¨LDAFACβ is anINTEGER. The leading dimension of the arrayAFAC. Constraint:LDAFAC >= max(1,N). Again β respect it. π«ΆIPIVβ is anINTEGERarray, dimension(N). The pivot indices fromZSYTRF. They're the receipts from the factorization, basically. π§ΎCβ is aCOMPLEX*16array, dimension(LDC,N). (No extra description needed, she's self-explanatory and that's iconic. πββοΈ)LDCβ is anINTEGER. The leading dimension of the arrayC. Constraint:LDC >= max(1,N). You already know the drill. πRWORKβ is aCOMPLEX*16array, dimension(N). (Just vibes. No further notes. π)RESIDβ is aCOMPLEX*16. And here's where it gets juicy:- If
UPLO = 'L', it returnsnorm(L*D*L' - A) / ( N * norm(A) * EPS ) - If
UPLO = 'U', it returnsnorm(U*D*U' - A) / ( N * norm(A) * EPS )
- If
So it's literally the residual, based on which triangle you picked. Lowkey the most important part. ππ₯
π Author π
Shoutout to the brainiacs behind this:
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
They ate and left no crumbs. π β¨
β Definition at line 122 of file zsyt01_aa.f. β
That's the exact location if you wanna go read the source β go off, bestie. π
π Author π
Generated automatically by Doxygen for LAPACK from the source code. So like, not me writing this by hand β the robots did it, and they understood the assignment. π€β¨
So yeah, that's the whole page. LAPACK Version 3.12.0, TESTING/LIN/zsyt01_aa.f(3) β brought to you by Doxygen and the LAPACK girlies. No cap, this was a journey. ππΈπ¦
π¦ 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