ZLARTV(3)
β¨ NAME β¨
ok so bestie, this is the manual page for ZLARTV β and the actual "name" the docs give it is literally the whole path:
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zlartv.f
yep. that's the name. it's giving "my full government name is a file path" energy π
like ok go off zlartv.f we love a humble origin story π
πΈ SYNOPSIS πΈ
Functions/Subroutines
subroutine ZLARTV (n, x, incx, y, incy, c, s, incc)β bestie, this one applies a whole vector of plane rotations with real cosines and complex sines to the elements of a pair of vectors. it's iconic, it's efficient, it does the thing π¦
π Function/Subroutine Documentation π
subroutine ZLARTV (integer n, complex*16, dimension( * ) x, integer incx,
complex*16, dimension( * ) y, integer incy, double precision, dimension(
* ) c, complex*16, dimension( * ) s, integer incc)
so what does ZLARTV do? (say it with me) β it applies a vector of plane rotations with real cosines and complex sines to the elements of a pair of vectors. lowkey the main character of this whole page π₯
π― Purpose:
!>
!> ZLARTV applies a vector of complex plane rotations with real cosines
!> to elements of the complex vectors x and y. For i = 1,2,...,n
!>
!> ( x(i) ) := ( c(i) s(i) ) ( x(i) )
!> ( y(i) ) ( -conjg(s(i)) c(i) ) ( y(i) )
!>
ok the math is mathing β¨ that little matrix right there is the whole vibe β each (x(i), y(i)) pair gets rotated by the real cosine c(i) and the complex sine s(i). note the -conjg(s(i)), that conjugate is NOT optional, bestie, she's doing heavy lifting π«Ά
π Parameters
N
!> N is INTEGER
!> The number of plane rotations to be applied.
i.e. how many rotations we're serving today. n rotations, n slay π
X
!> X is COMPLEX*16 array, dimension (1+(N-1)*INCX)
!> The vector x.
it's COMPLEX*16, it's dimension (1+(N-1)*INCX), and it's literally just the vector x. that's it. that's the whole description π
INCX
!> INCX is INTEGER
!> The increment between elements of X. INCX > 0.
the stride between elements of X. and heads up: INCX > 0. strictly. no zero, no negatives π
Y
!> Y is COMPLEX*16 array, dimension (1+(N-1)*INCY)
!> The vector y.
the other half of the duo. COMPLEX*16, dimension (1+(N-1)*INCY), it's the vector y. x and y are a package deal fr fr π¦
INCY
!> INCY is INTEGER
!> The increment between elements of Y. INCY > 0.
stride between elements of Y, and again INCY > 0 β yes this is mandatory, don't come at me π
C
!> C is DOUBLE PRECISION array, dimension (1+(N-1)*INCC)
!> The cosines of the plane rotations.
the cosines. DOUBLE PRECISION, dimension (1+(N-1)*INCC). real ones only, no cap π
S
!> S is COMPLEX*16 array, dimension (1+(N-1)*INCC)
!> The sines of the plane rotations.
the sines β and these ARE complex. COMPLEX*16, dimension (1+(N-1)*INCC). c real, s complex, that's the whole aesthetic β
INCC
!> INCC is INTEGER
!> The increment between elements of C and S. INCC > 0.
the stride for both C and S β one increment, two arrays, efficiency icon behavior π and yes: INCC > 0. always. periodt.
π§ Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
the whole squad showed up for this one π«Ά
Definition at line 106 of file zlartv.f. π if u need to find the source, now u know exactly where she lives.
π Author
Generated automatically by Doxygen for LAPACK from the source code.
no human wrote this footer, it's literally Doxygen doing its little autogenerated thing π€β¨ (we still love her)
and that's the page, bestie!! π iykyk β this whole thing shipped with LAPACK, Version 3.12.0, dated /home/abui...RC/zlartv.f(3). go rotate ur vectors responsibly, mwah ππ
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms