DSTEQR(3)

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

✨ DSTEQR(3) ✨

okay so bestie, welcome to DSTEQR(3), one of the little gems living in the Library Functions Manual πŸ’– this one is a LAPACK girlie through and through, and she's about to diagonalize your whole life. buckle up πŸŽ€


🌸 NAME 🌸

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

like, that's literally the file. that's the name. she's got a full government name and it's a whole path 😭 iconic honestly.


πŸ¦‹ SYNOPSIS πŸ¦‹

Functions/Subroutines

subroutine DSTEQR (compz, n, d, e, z, ldz, work, info)

DSTEQR β€” that's her. that's the girl. πŸ’…


πŸ‘‘ Function/Subroutine Documentation πŸ‘‘

subroutine DSTEQR (character compz, integer n, double precision, dimension(
    * ) d, double precision, dimension( * ) e, double precision, dimension(
    ldz, * ) z, integer ldz, double precision, dimension( * ) work, integer
    info)

DSTEQR

πŸŽ€ Purpose πŸŽ€

okay so what does she do: DSTEQR computes all eigenvalues and, optionally, eigenvectors of a symmetric tridiagonal matrix using the implicit QL or QR method. no cap. πŸ”₯

and here's the fun part β€” the eigenvectors of a full or band symmetric matrix can also be found if DSYTRD or DSPTRD or DSBTRD has been used to reduce this matrix to tridiagonal form. so like, she'll happily finish the job your other routines started. team work makes the dream work fr fr 🫢

🧚 Parameters 🧚

COMPZ

COMPZ is CHARACTER*1

  • 'N' β€” Compute eigenvalues only.
  • 'V' β€” Compute eigenvalues and eigenvectors of the original symmetric matrix. On entry, Z must contain the orthogonal matrix used to reduce the original matrix to tridiagonal form.
  • 'I' β€” Compute eigenvalues and eigenvectors of the tridiagonal matrix. Z is initialized to the identity matrix.

so basically pick your fighter: just the eigenvalues ('N'), the whole package from the original matrix ('V'), or the whole package straight off the tridiagonal ('I') ✨

N

N is INTEGER

The order of the matrix. N >= 0. (yes, zero counts, we love a boundary condition πŸ’–)

D

D is DOUBLE PRECISION array, dimension (N)

On entry, the diagonal elements of the tridiagonal matrix. On exit, if INFO = 0, the eigenvalues in ascending order. she goes in as your diagonal and comes out as a whole sorted eigenvalue serve πŸ‘‘

E

E is DOUBLE PRECISION array, dimension (N-1)

On entry, the (n-1) subdiagonal elements of the tridiagonal matrix. On exit, E has been destroyed. πŸ’€ yeah. she does not survive the function. that's just how it is, no notes.

Z

Z is DOUBLE PRECISION array, dimension (LDZ, N)

On entry, if COMPZ = 'V', then Z contains the orthogonal matrix used in the reduction to tridiagonal form.

On exit, if INFO = 0, then if COMPZ = 'V', Z contains the orthonormal eigenvectors of the original symmetric matrix, and if COMPZ = 'I', Z contains the orthonormal eigenvectors of the symmetric tridiagonal matrix.

If COMPZ = 'N', then Z is not referenced. like, she literally doesn't even look at it. not her business πŸ™ˆ

LDZ

LDZ is INTEGER

The leading dimension of the array Z. LDZ >= 1, and if eigenvectors are desired, then LDZ >= max(1,N). read that again if you're asking for eigenvectors bestie, the vibe check is strict 🌈

WORK

WORK is DOUBLE PRECISION array, dimension (max(1,2*N-2))

If COMPZ = 'N', then WORK is not referenced. she's got a whole workspace and she'll ignore it if you don't need it, so chill πŸ“

INFO

INFO is INTEGER

  • = 0 β€” successful exit πŸŽ‰
  • < 0 β€” if INFO = -i, the i-th argument had an illegal value
  • > 0 β€” the algorithm has failed to find all the eigenvalues in a total of 30*N iterations; if INFO = i, then i elements of E have not converged to zero; on exit, D and E contain the elements of a symmetric tridiagonal matrix which is orthogonally similar to the original matrix.
okay so the > 0 case is the dramatic one 😭 she tried, she really did, but 30*N iterations was the limit and some elements of E just wouldn't converge to zero. the tea is: D and E still hold a symmetric tridiagonal matrix that's orthogonally similar to your original one, so like… it's not a total loss, but it's giving "we need to talk". don't ignore a positive INFO, bestie.

πŸ’œ Author πŸ’œ

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

the whole squad behind the magic 🫢

Definition at line 130 of file dsteqr.f. yes we're citing our sources, we're academic girlies now πŸŽ“


⭐ Author ⭐

Generated automatically by Doxygen for LAPACK from the source code. so the docs wrote themselves, slay, automation πŸ’…


and that's the page! πŸ’– sending you off with the footer energy: LAPACK, Version 3.12.0, from /home/abui...RC/dsteqr.f(3) β€” go forth and tridiagonalize responsibly, mwah πŸŽ€πŸ¦‹βœ¨

πŸ“¦ where this page comes from