TESTING/EIG/dlarfy.f(3)

πŸ’… TESTING/EIG/dlarfy.f β€” from the Library Functions Manual, bestie

okay so this is TESTING/EIG/dlarfy.f(3), and it's literally the glow-up page for one single subroutine: dlarfy. she's a LAPACK testing-zone icon, she applies a Householder reflector to a symmetric matrix from both sides, and yes she ate. let's get into it πŸŽ€


✨ NAME ✨

TESTING/EIG/dlarfy.f β€” that's the file, that's the whole name, no notes πŸ’–


🌸 SYNOPSIS 🌸

Functions/Subroutines

  • subroutine dlarfy (uplo, n, v, incv, tau, c, ldc, work) β€” DLARFY

πŸ¦‹ Function/Subroutine Documentation πŸ¦‹

subroutine dlarfy (character uplo, integer n, double precision, dimension( * ) v, integer incv, double precision tau, double precision, dimension( ldc, * ) c, integer ldc, double precision, dimension( * ) work)

DLARFY πŸ‘‘ β€” that's her, that's the whole signature, memorize it fr fr.

🎯 Purpose 🎯

!> !> DLARFY applies an elementary reflector, or Householder matrix, H, !> to an n x n symmetric matrix C, from both the left and the right. !> !> H is represented in the form !> !> H = I - tau * v * v' !> !> where tau is a scalar and v is a vector. !> !> If tau is zero, then H is taken to be the unit matrix. !>

so basically: H shows up on both sides of C β€” left and right β€” which is giving main character energy for a matrix operation, honestly. and the H = I - tau * v * v' form? iconic. if tau is zero, H just becomes the unit matrix, no drama, we move on πŸ’…

🧚 Parameters 🧚

  • UPLO β€” UPLO is CHARACTER*1. tells us which triangular half of the symmetric matrix C is the one actually being stored. = 'U': Upper triangle, = 'L': Lower triangle. pick a lane, bestie 🌈
  • N β€” N is INTEGER. how many rows and columns matrix C has (square vibes only). constraint check: N >= 0 ✨
  • V β€” V is DOUBLE PRECISION array, dimension (1 + (N-1)*abs(INCV)). this is the vector v from the whole H = I - tau * v * v' situation described above, no cap 🫢
  • INCV β€” INCV is INTEGER. the increment between successive elements of v. and listen: INCV must not be zero. like, at all. that's the vibe check and you will fail it πŸ’€
  • TAU β€” TAU is DOUBLE PRECISION. the scalar tau from the formula above, exactly as described 😌
  • C β€” C is DOUBLE PRECISION array, dimension (LDC, N). on entry: the actual matrix C, the moment. on exit: C is overwritten by H * C * H' β€” so she gets fully replaced, hope you didn't need the original πŸ™ˆ
  • LDC β€” LDC is INTEGER. the leading dimension of the array C. LDC >= max( 1, N ) β€” required, non-negotiable πŸŽ€
  • WORK β€” WORK is DOUBLE PRECISION array, dimension (N). scratch space, the backstage area, the get-ready room ⭐

πŸ‘‘ Author πŸ‘‘

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

(iconic institutions only, we love a credentialed squad 🌸)

πŸ“ Definition πŸ“

Definition at line 107 of file dlarfy.f.


🌟 Author 🌟

Generated automatically by Doxygen for LAPACK from the source code. β€” so yes, a robot wrote this page, but the lore is real, iykyk πŸ€–πŸ’œ


okay that's the whole page, bestie, every flag and every constraint accounted for, no details dropped, periodt πŸ“

LAPACK β€” Version 3.12.0 β€” that's the version, that's the date stamp, so this page is certified vintage-adjacent. stay slay, go call dlarfy responsibly πŸ’…βœ¨πŸ”₯
πŸ“¦ where this page comes from