BLAS/SRC/drotmg.f(3)

πŸ’– BLAS/SRC/drotmg.f πŸ’–

okay bestie, welcome to the LAPACK docs β€” yes, that LAPACK, the linear algebra royalty πŸ‘‘. today's main character is BLAS/SRC/drotmg.f, and she's giving "quietly essential rotation-builder" energy, no cap. pull up a chair, grab a strawberry πŸ“, and let's get into it.


✨ NAME ✨

BLAS/SRC/drotmg.f β€” that's the file, that's the vibe, periodt. πŸ’…


🌸 SYNOPSIS 🌸

Functions/Subroutines

  • subroutine drotmg (dd1, dd2, dx1, dy1, dparam) β€” literally just DROTMG, serving cunt in double precision πŸ¦‹

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

subroutine drotmg (double precision dd1, double precision dd2, double precision dx1, double precision dy1, double precision, dimension(5) dparam)

DROTMG

bestie. she's here. she's iconic. she does exactly one thing and does it flawlessly.


πŸ”₯ Purpose πŸ”₯

okay so the whole assignment is this: CONSTRUCT THE MODIFIED GIVENS TRANSFORMATION MATRIX H WHICH ZEROS THE SECOND COMPONENT OF THE 2-VECTOR (DSQRT(DD1)*DX1,DSQRT(DD2)*DY2)**T.

and with DPARAM(1)=DFLAG, H has one of these forms, and honestly the way she shapeshifts based on a single flag? main character behavior:

DFLAG=-1.D0     DFLAG=0.D0        DFLAG=1.D0     DFLAG=-2.D0

  (DH11  DH12)    (1.D0  DH12)    (DH11  1.D0)    (1.D0  0.D0)
H=(          )    (          )    (          )    (          )
  (DH21  DH22),   (DH21  1.D0),   (-1.D0 DH22),   (0.D0  1.D0).

so LOCATIONS 2-4 OF DPARAM CONTAIN DH11, DH21, DH12, AND DH22 RESPECTIVELY. and listen β€” the values of 1.D0, -1.D0, or 0.D0 that are implied by the value of DPARAM(1)? they are NOT STORED IN DPARAM. she's efficient like that, she doesn't do redundancy πŸ’…

also real talk, a little caveat: THE VALUES OF GAMSQ AND RGAMSQ SET IN THE DATA STATEMENT MAY BE INEXACT. and that's fine actually, because they are only used for testing the size of DD1 and DD2. all actual scaling of data is done using GAM. so like, don't stress, the imprecision is intentional and harmless, no cap πŸ™ˆ


πŸ’œ Parameters πŸ’œ

  • DD1 β€” DD1 is DOUBLE PRECISION ✨
  • DD2 β€” DD2 is DOUBLE PRECISION ✨
  • DX1 β€” DX1 is DOUBLE PRECISION ✨
  • DY1 β€” DY1 is DOUBLE PRECISION ✨
  • DPARAM β€” DPARAM is DOUBLE PRECISION array, dimension (5) and she comes pre-loaded with the whole squad:
    • DPARAM(1)=DFLAG
    • DPARAM(2)=DH11
    • DPARAM(3)=DH21
    • DPARAM(4)=DH12
    • DPARAM(5)=DH22

πŸ‘‘ Author πŸ‘‘

the legends behind this masterpiece, say thank you:

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

🫢 Definition at line 89 of file drotmg.f. β€” yes she's got a specific address, she's not hard to find, iykyk.

🌈 Author 🌈

Generated automatically by Doxygen for LAPACK from the source code. β€” so technically the docs wrote themselves, which is very slay of them πŸ’…βœ¨


and that's the whole page bestie!! Version 3.12.0 β€” Tue Nov 28 2023 12:08:41 πŸŽ€ that's the version and the timestamp, and honestly? that date deserves its own moment. mwah. go build your rotations, you absolute icon πŸ¦‹πŸ’–