lasq5(3)

πŸ’… lasq5(3) β€” the dqds step but make it make sense

okay so bestie, you found lasq5. she's a LAPACK routine, she does one dqds transform in ping-pong form. yes that's the real name. no I will not explain why it's called ping-pong. it just is. iconic behavior honestly.


🌸 NAME 🌸

lasq5 β€” lasq5: dqds step

like literally what the title says. she steps. she dqds. she serves.


✨ SYNOPSIS ✨

Functions

  • subroutine dlasq5 (i0, n0, z, pp, tau, sigma, dmin, dmin1, dmin2, dn, dnm1, dnm2, ieee, eps) _DLASQ5_ computes one dqds transform in ping-pong form. Used by sbdsqr and sstegr.
  • subroutine slasq5 (i0, n0, z, pp, tau, sigma, dmin, dmin1, dmin2, dn, dnm1, dnm2, ieee, eps) _SLASQ5_ computes one dqds transform in ping-pong form. Used by sbdsqr and sstegr.

two flavors, same vibes. one's double precision, one's single. choose your fighter 🫢


Detailed Description

okay so the detailed description section is lowkey just vibes and the function docs. let's get into it πŸŽ€


πŸ“– Function Documentation

subroutine dlasq5 (integer i0, integer n0, double precision, dimension( * ) z, integer pp, double precision tau, double precision sigma, double precision dmin, double precision dmin1, double precision dmin2, double precision dn, double precision dnm1, double precision dnm2, logical ieee, double precision eps)

DLASQ5 computes one dqds transform in ping-pong form. Used by sbdsqr and sstegr. that's the whole assignment. she ate.

πŸ¦‹ Purpose

!>
!> DLASQ5 computes one dqds transform in ping-pong form, one
!> version for IEEE machines another for non IEEE machines.
!>

so basically: one transform, two IEEE modes, no cap πŸ’€

πŸŽ€ Parameters

  • I0 β€” I0 is INTEGER First index. the beginning. where it all starts bestie ✨
  • N0 β€” N0 is INTEGER Last index. the end of the line πŸ₯Ί
  • Z β€” Z is DOUBLE PRECISION array, dimension ( 4*N ) Z holds the qd array. EMIN is stored in Z(4*N0) to avoid an extra argument. efficient queen behavior honestly πŸ‘‘
  • PP β€” PP is INTEGER PP=0 for ping, PP=1 for pong. yes. that's really the documentation. i'm not making this up πŸ™ˆ
  • TAU β€” TAU is DOUBLE PRECISION This is the shift. the glow-up. the plot twist πŸ’«
  • SIGMA β€” SIGMA is DOUBLE PRECISION This is the accumulated shift up to this step. she's been through things. she's carrying history 🌸
  • DMIN β€” DMIN is DOUBLE PRECISION Minimum value of d. the smallest. the humble. the underrated πŸ’œ
  • DMIN1 β€” DMIN1 is DOUBLE PRECISION Minimum value of d, excluding D( N0 ). so close to the minimum but not the whole picture 🫢
  • DMIN2 β€” DMIN2 is DOUBLE PRECISION Minimum value of d, excluding D( N0 ) and D( N0-1 ). even more exclusive. VIP list energy πŸŽ€
  • DN β€” DN is DOUBLE PRECISION d(N0), the last value of d. the final boss. main character energy πŸ‘‘
  • DNM1 β€” DNM1 is DOUBLE PRECISION d(N0-1). second to last. still slaying in her own right ✨
  • DNM2 β€” DNM2 is DOUBLE PRECISION d(N0-2). the third from the end. lowkey underappreciated honestly πŸ₯Ί
  • IEEE β€” IEEE is LOGICAL Flag for IEEE or non IEEE arithmetic. pick a lane bestie πŸ¦‹
  • EPS β€” EPS is DOUBLE PRECISION This is the value of epsilon used. tiny but mighty. the little detail that matters πŸ’…

πŸ‘‘ Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

the whole squad, fr fr 🫢

Definition at line 142 of file dlasq5.f. ✨


subroutine slasq5 (integer i0, integer n0, real, dimension( * ) z, integer pp, real tau, real sigma, real dmin, real dmin1, real dmin2, real dn, real dnm1, real dnm2, logical ieee, real eps)

SLASQ5 computes one dqds transform in ping-pong form. Used by sbdsqr and sstegr. same assignment, single precision this time. she's the real one. literally 🌈

πŸ¦‹ Purpose

!>
!> SLASQ5 computes one dqds transform in ping-pong form, one
!> version for IEEE machines another for non IEEE machines.
!>

identical purpose, identical energy, just real instead of double precision πŸ’–

πŸŽ€ Parameters

  • I0 β€” I0 is INTEGER First index. the origin story ✨
  • N0 β€” N0 is INTEGER Last index. the finale πŸ₯Ί
  • Z β€” Z is REAL array, dimension ( 4*N ) Z holds the qd array. EMIN is stored in Z(4*N0) to avoid an extra argument. same efficient era πŸ‘‘
  • PP β€” PP is INTEGER PP=0 for ping, PP=1 for pong. the duality of woman πŸ™ˆ
  • TAU β€” TAU is REAL This is the shift. the moment. the energy πŸ’«
  • SIGMA β€” SIGMA is REAL This is the accumulated shift up to this step. emotional baggage but make it math 🌸
  • DMIN β€” DMIN is REAL Minimum value of d. tiny icon πŸ’œ
  • DMIN1 β€” DMIN1 is REAL Minimum value of d, excluding D( N0 ). almost the whole picture 🫢
  • DMIN2 β€” DMIN2 is REAL Minimum value of d, excluding D( N0 ) and D( N0-1 ). even more selective πŸ’…
  • DN β€” DN is REAL d(N0), the last value of d. the closer. the icon πŸ‘‘
  • DNM1 β€” DNM1 is REAL d(N0-1). runner-up but still stunning ✨
  • DNM2 β€” DNM2 is REAL d(N0-2). third place but never third-rate πŸ₯Ί
  • IEEE β€” IEEE is LOGICAL Flag for IEEE or non IEEE arithmetic. choose wisely πŸ¦‹
  • EPS β€” EPS is REAL This is the value of epsilon used. small but she's doing her job πŸ’–

πŸ‘‘ Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

same legends, single precision edition 🫢

Definition at line 142 of file slasq5.f. ✨


🌈 Author 🌈

Generated automatically by Doxygen for LAPACK from the source code. so she was literally born this way. no notes πŸ’…


and that's the whole page bestie. lasq5 said "i do one dqds transform in ping-pong form" and made it everyone's problem. we love her for it πŸŽ€βœ¨

LAPACK β€” Version 3.12.0 🌸 lasq5(3) β€” go slay your linear algebra era πŸ’–

πŸ“¦ where this page comes from