DSTECH(3)

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

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 it MAZHEPS in the formula and MACHEPS in the explanation β€” both stay exactly as written, okay? No typo-fixing crimes here. 🫢

πŸŽ€ Parameters πŸŽ€

  • N β€” N is INTEGER; the dimension of the tridiagonal matrix T. πŸ’…
  • A β€” A is DOUBLE PRECISION array, dimension (N); the diagonal entries of the tridiagonal matrix T. πŸ¦‹
  • B β€” B is DOUBLE PRECISION array, dimension (N-1); the offdiagonal entries of the tridiagonal matrix T. 🌸
  • 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; 0 if the eigenvalues are all correct (to within 1 +- TOL*MAZHEPS*MAXEIG); >0 if the interval containing the INFO-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