DSTECH(3)
okay so welcome to DSTECH(3) π this one lives in the Library Functions Manual, and the header-path vibe is the very truncated-looking /home/abui...IG/dstech.f(3). We are keeping every fact exactly where it belongs, bestie. No cap. π
π NAME π
DSTECH(3) β and the NAME entry is literally this full source path:
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/TESTING/EIG/dstech.f
That's the source-file realness. Periodt. β¨
β¨ SYNOPSIS β¨
π¦ Functions/Subroutines π¦
subroutine DSTECH (n, a, b, eig, tol, work, info)
DSTECH
That's the teaser, bestie. The full signature is next and it's lowkey long. π
π«Ά Function/Subroutine Documentation π«Ά
subroutine DSTECH (integer n, double precision, dimension( * ) a, double
precision, dimension( * ) b, double precision, dimension( * ) eig,
double precision tol, double precision, dimension( * ) work, integer
info)
DSTECH
π Purpose π
Let T be the tridiagonal matrix with diagonal entries A(1) ,..., A(N) and offdiagonal entries B(1) ,..., B(N-1)). DSTECH checks to see if EIG(1) ,..., EIG(N) are indeed accurate eigenvalues of T.
It does this by expanding each EIG(I) into an interval [SVD(I) - EPS, SVD(I) + EPS], merging overlapping intervals if any, and using Sturm sequences to count and verify whether each resulting interval has the correct number of eigenvalues (using DSTECT). Here EPS = TOL*MAZHEPS*MAXEIG, where MACHEPS is the machine precision and MAXEIG is the absolute value of the largest eigenvalue.
If each interval contains the correct number of eigenvalues, INFO = 0 is returned, otherwise INFO is the index of the first eigenvalue in the first bad interval. πβ¨
bestie note: the source really spells itMAZHEPSin the formula andMACHEPSin the explanation β both stay exactly as written, okay? No typo-fixing crimes here. π«Ά
π Parameters π
NβN is INTEGER; the dimension of the tridiagonal matrixT. πAβA is DOUBLE PRECISION array, dimension (N); the diagonal entries of the tridiagonal matrixT. π¦BβB is DOUBLE PRECISION array, dimension (N-1); the offdiagonal entries of the tridiagonal matrixT. πΈEIGβEIG is DOUBLE PRECISION array, dimension (N); the purported eigenvalues to be checked. πTOLβTOL is DOUBLE PRECISION; error tolerance for checking, a multiple of the machine precision. βWORKβWORK is DOUBLE PRECISION array, dimension (N). π§INFOβINFO is INTEGER;0if the eigenvalues are all correct (to within1 +- TOL*MAZHEPS*MAXEIG);>0if the interval containing theINFO-th eigenvalue contains the incorrect number of eigenvalues. π₯
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 100 of file dstech.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
okay that's the whole page, bestie π«Ά footer sign-off time: source/manual is LAPACK, version is Version 3.12.0, and the path is /home/abui...IG/dstech.f(3) β the date isn't printed in this footer, so I'm not inventing one. Slay. πβ¨
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms