DROTM(3)

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

🌸 NAME 🌸

okay so bestie, this page is literally all about drotm.f β€” no cap, that's the whole name. It lives at /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/BLAS/SRC/drotm.f and the man page is filed under /home/abui...SRC/drotm.f(3) in the Library Functions Manual. Yes, the header says the same path twice, that's just how it is, we don't question it πŸ’…


✨ SYNOPSIS ✨

Functions/Subroutines

subroutine DROTM (n, dx, incx, dy, incy, dparam)

That's it. That's the subroutine. Its name is DROTM, iconic, no notes πŸŽ€


🫢 Function/Subroutine Documentation 🫢

subroutine DROTM (integer n, double precision, dimension(*) dx, integer
    incx, double precision, dimension(*) dy, integer incy, double precision,
    dimension(5) dparam)

Again, for the people in the back: DROTM. Slay.

⭐ Purpose ⭐

Straight from the source, she says:

!>    APPLY THE MODIFIED GIVENS TRANSFORMATION, H, TO THE 2 BY N MATRIX
!>
!>    (DX**T) , WHERE **T INDICATES TRANSPOSE. THE ELEMENTS OF DX ARE IN
!>    (DY**T)
!>
!>    DX(LX+I*INCX), I = 0 TO N-1, WHERE LX = 1 IF INCX .GE. 0, ELSE
!>    LX = (-INCX)*N, AND SIMILARLY FOR SY USING LY AND INCY.
!>    WITH DPARAM(1)=DFLAG, H HAS ONE OF THE FOLLOWING FORMS..
!>
!>    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).
!>    SEE DROTMG FOR A DESCRIPTION OF DATA STORAGE IN DPARAM.
!>

So like, the vibe is: you're applying this modified Givens transformation H to a 2-by-N matrix made of (DX**T) stacked on (DY**T) β€” **T means transpose, iykyk. The elements of DX sit at DX(LX+I*INCX), I = 0 TO N-1, where LX = 1 if INCX .GE. 0, otherwise LX = (-INCX)*N β€” and SY works the same way with LY and INCY. With DPARAM(1)=DFLAG, H takes one of those four forms up there πŸ‘†. And if you're curious how the data gets stored in DPARAM, go read DROTMG β€” she explains it, fr fr.

πŸ’– Parameters πŸ’–

  • N β€” INTEGER, the number of elements in the input vector(s). Gotta know how many, bestie.
  • DX β€” DOUBLE PRECISION array, dimension ( 1 + ( N - 1 )*abs( INCX ) ). This is the DX half of the party.
  • INCX β€” INTEGER, the storage spacing between elements of DX. How far apart they're sitting.
  • DY β€” DOUBLE PRECISION array, dimension ( 1 + ( N - 1 )*abs( INCY ) ). The DY half, matching energy.
  • DPARAM β€” DOUBLE PRECISION array, dimension (5). And here's the breakdown, literally:
DPARAM(1)=DFLAG
DPARAM(2)=DH11
DPARAM(3)=DH21
DPARAM(4)=DH12
DPARAM(5)=DH22

Each slot has a job and she does it πŸ’…

πŸ‘‘ Author πŸ‘‘

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

Definition at line 95 of file drotm.f. Noted, bookmarked, screenshotted πŸ“Œ


🌈 Author 🌈

Generated automatically by Doxygen for LAPACK from the source code. So technically the author of this particular page is Doxygen, and honestly? She ate.


okay that's the whole page bestie, every last flag and dimension and author line accounted for 🫢

✨ Sign-off time: this is LAPACK, Version 3.12.0, and the page file is /home/abui...SRC/drotm.f(3). Bye, love you, go transform some vectors πŸ’–πŸŽ€πŸ¦‹
πŸ“¦ where this page comes from