TESTING/EIG/sslect.f(3)

πŸ“¦
version 3.12.1 Β· 3 versions
, in arch rolling

πŸ’… TESTING/EIG/sslect.f

ok so this page lives under TESTING/EIG/sslect.f(3) β€” that's the LAPACK testing-suite corner of the manual, bestie. It's giving "small file, big job." Let's get into it 🫢


✨ SYNOPSIS ✨

Functions/Subroutines

  • logical function sslect (zr, zi) β€” literally the whole personality of this file. It's SSLECT.

πŸŽ€ Function/Subroutine Documentation πŸŽ€

logical function sslect (real zr, real zi)

SSLECT β€” no cap, that's the name πŸ‘‘

🌸 Purpose:

!>
!> SSLECT returns .TRUE. if the eigenvalue ZR+sqrt(-1)*ZI is to be
!> selected, and otherwise it returns .FALSE.
!> It is used by SCHK41 to test if SGEES successfully sorts eigenvalues,
!> and by SCHK43 to test if SGEESX successfully sorts eigenvalues.
!>
!> The common block /SSLCT/ controls how eigenvalues are selected.
!> If SELOPT = 0, then SSLECT return .TRUE. when ZR is less than zero,
!> and .FALSE. otherwise.
!> If SELOPT is at least 1, SSLECT returns SELVAL(SELOPT) and adds 1
!> to SELOPT, cycling back to 1 at SELMAX.
!>

So here's the vibe check 🧚 β€” SSLECT hands back .TRUE. if the eigenvalue ZR+sqrt(-1)*ZI is one we want to select, and .FALSE. if it's not it, bestie.

It's the little gremlin behind two bigger checks: SCHK41 uses it to test whether SGEES successfully sorts eigenvalues, and SCHK43 uses it to test whether SGEESX successfully sorts eigenvalues. Iconic teamwork, honestly πŸ”₯

The common block /SSLCT/ is the main character controlling how eigenvalues get selected:

  • If SELOPT = 0, then SSLECT returns .TRUE. when ZR is less than zero, and .FALSE. otherwise. Simple. Clean. Slay.
  • If SELOPT is at least 1, SSLECT returns SELVAL(SELOPT) and adds 1 to SELOPT, cycling back to 1 at SELMAX. That's the rotation, periodt πŸ’«

πŸ’– Parameters πŸ’–

  • ZR β€” ZR is REAL. It's the real part of a complex eigenvalue ZR + i*ZI. The down-to-earth half πŸ“
!>          ZR is REAL
!>          The real part of a complex eigenvalue ZR + i*ZI.
!>
  • ZI β€” ZI is REAL. It's the imaginary part of a complex eigenvalue ZR + i*ZI. The dramatic half, as imaginary parts do πŸ’…
!>          ZI is REAL
!>          The imaginary part of a complex eigenvalue ZR + i*ZI.
!>

πŸ‘‘ Author πŸ‘‘

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

Definition at line 61 of file sslect.f. Yes, line 61 β€” mark it, iykyk πŸ“Œ

🌈 Author 🌈

Generated automatically by Doxygen for LAPACK from the source code. (Not me writing my own autobiography β€” Doxygen did that 😭)


⭐ okay that's the whole page, bestie β€” LAPACK, Version 3.12.0, from the source file TESTING/EIG/sslect.f(3). Go sort some eigenvalues, you absolute icon πŸ’œπŸ¦‹πŸŒΈ

πŸ“¦ where this page comes from