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 vectorvfrom the wholeH = I - tau * v * v'situation described above, no cap π«ΆINCVβINCV is INTEGER. the increment between successive elements ofv. 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 scalartaufrom 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
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms