largv(3)

🌸 largv(3) β€” the glow-up guide ✨

okay so bestie, this is largv(3) from the Library Functions Manual, and it's literally the page that tells you how to generate a vector of plane rotations. Yes, that's the whole vibe. It's giving "niche linear algebra queen" and honestly? Obsessed. πŸ’…

This page is one of those Doxygen-generated LAPACK pages, so it's mostly a big pile of four sibling subroutines that all do the same thing but in different precisions and type-flavours. Don't panic. We're gonna walk through each one, no cap. 🫢


πŸŽ€ NAME πŸŽ€

largv β€” largv: generate vector of plane rotations. That's it, that's the name. Short, iconic, to the point. πŸ‘‘


✨ SYNOPSIS ✨

Functions

  • subroutine clargv (n, x, incx, y, incy, c, incc) β€” CLARGV generates a vector of plane rotations with real cosines and complex sines. πŸ’œ
  • subroutine dlargv (n, x, incx, y, incy, c, incc) β€” DLARGV generates a vector of plane rotations with real cosines and real sines.
  • subroutine slargv (n, x, incx, y, incy, c, incc) β€” SLARGV generates a vector of plane rotations with real cosines and real sines.
  • subroutine zlargv (n, x, incx, y, incy, c, incc) β€” ZLARGV generates a vector of plane rotations with real cosines and complex sines. πŸ’–

πŸ¦‹ Detailed Description πŸ¦‹

There isn't a big blob of prose here β€” the page just jumps straight into the function documentation below. So like… scroll down, bestie, the good stuff is right there. ⬇️


πŸ‘‘ Function Documentation πŸ‘‘

πŸ“ subroutine clargv (integer n, complex, dimension( * ) x, integer incx, complex, dimension( * ) y, integer incy, real, dimension( * ) c, integer incc)

CLARGV generates a vector of plane rotations with real cosines and complex sines. πŸ’«

Purpose:

text !> !> CLARGV generates a vector of complex plane rotations with real !> cosines, determined by elements of the complex vectors x and y. !> For i = 1,2,...,n !> !> ( c(i) s(i) ) ( x(i) ) = ( r(i) ) !> ( -conjg(s(i)) c(i) ) ( y(i) ) = ( 0 ) !> !> where c(i)**2 + ABS(s(i))**2 = 1 !> !> The following conventions are used (these are the same as in CLARTG, !> but differ from the BLAS1 routine CROTG): !> If y(i)=0, then c(i)=1 and s(i)=0. !> If x(i)=0, then c(i)=0 and s(i) is chosen so that r(i) is real. !>

Parameters

  • N
text !> N is INTEGER !> The number of plane rotations to be generated. !>
  • X
text !> X is COMPLEX array, dimension (1+(N-1)*INCX) !> On entry, the vector x. !> On exit, x(i) is overwritten by r(i), for i = 1,...,n. !>
  • INCX
text !> INCX is INTEGER !> The increment between elements of X. INCX > 0. !>
  • Y
text !> Y is COMPLEX array, dimension (1+(N-1)*INCY) !> On entry, the vector y. !> On exit, the sines of the plane rotations. !>
  • INCY
text !> INCY is INTEGER !> The increment between elements of Y. INCY > 0. !>
  • C
text !> C is REAL array, dimension (1+(N-1)*INCC) !> The cosines of the plane rotations. !>
  • INCC
text !> INCC is INTEGER !> The increment between elements of C. INCC > 0. !>

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Further Details:

text !> !> 6-6-96 - Modified with a new algorithm by W. Kahan and J. Demmel !> !> This version has a few statements commented out for thread safety !> (machine parameters are computed on each entry). 10 feb 03, SJH. !>

Definition at line 121 of file clargv.f. πŸ“


🌈 subroutine dlargv (integer n, double precision, dimension( * ) x, integer incx, double precision, dimension( * ) y, integer incy, double precision, dimension( * ) c, integer incc)

DLARGV generates a vector of plane rotations with real cosines and real sines. (Double precision edition, she's fancy. πŸ’Ž)

Purpose:

text !> !> DLARGV generates a vector of real plane rotations, determined by !> elements of the real vectors x and y. For i = 1,2,...,n !> !> ( c(i) s(i) ) ( x(i) ) = ( a(i) ) !> ( -s(i) c(i) ) ( y(i) ) = ( 0 ) !>

Parameters

  • N
text !> N is INTEGER !> The number of plane rotations to be generated. !>
  • X
text !> X is DOUBLE PRECISION array, !> dimension (1+(N-1)*INCX) !> On entry, the vector x. !> On exit, x(i) is overwritten by a(i), for i = 1,...,n. !>
  • INCX
text !> INCX is INTEGER !> The increment between elements of X. INCX > 0. !>
  • Y
text !> Y is DOUBLE PRECISION array, !> dimension (1+(N-1)*INCY) !> On entry, the vector y. !> On exit, the sines of the plane rotations. !>
  • INCY
text !> INCY is INTEGER !> The increment between elements of Y. INCY > 0. !>
  • C
text !> C is DOUBLE PRECISION array, dimension (1+(N-1)*INCC) !> The cosines of the plane rotations. !>
  • INCC
text !> INCC is INTEGER !> The increment between elements of C. INCC > 0. !>

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line 103 of file dlargv.f. πŸ“


🧚 subroutine slargv (integer n, real, dimension( * ) x, integer incx, real, dimension( * ) y, integer incy, real, dimension( * ) c, integer incc)

SLARGV generates a vector of plane rotations with real cosines and real sines. (Single precision sib β€” same energy, smaller bits. 🌸)

Purpose:

text !> !> SLARGV generates a vector of real plane rotations, determined by !> elements of the real vectors x and y. For i = 1,2,...,n !> !> ( c(i) s(i) ) ( x(i) ) = ( a(i) ) !> ( -s(i) c(i) ) ( y(i) ) = ( 0 ) !>

Parameters

  • N
text !> N is INTEGER !> The number of plane rotations to be generated. !>
  • X
text !> X is REAL array, !> dimension (1+(N-1)*INCX) !> On entry, the vector x. !> On exit, x(i) is overwritten by a(i), for i = 1,...,n. !>
  • INCX
text !> INCX is INTEGER !> The increment between elements of X. INCX > 0. !>
  • Y
text !> Y is REAL array, !> dimension (1+(N-1)*INCY) !> On entry, the vector y. !> On exit, the sines of the plane rotations. !>
  • INCY
text !> INCY is INTEGER !> The increment between elements of Y. INCY > 0. !>
  • C
text !> C is REAL array, dimension (1+(N-1)*INCC) !> The cosines of the plane rotations. !>
  • INCC
text !> INCC is INTEGER !> The increment between elements of C. INCC > 0. !>

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line 103 of file slargv.f. πŸ“


⭐ subroutine zlargv (integer n, complex*16, dimension( * ) x, integer incx, complex*16, dimension( * ) y, integer incy, double precision, dimension( * ) c, integer incc)

ZLARGV generates a vector of plane rotations with real cosines and complex sines. The double-complex main character. 🌟

Purpose:

text !> !> ZLARGV generates a vector of complex plane rotations with real !> cosines, determined by elements of the complex vectors x and y. !> For i = 1,2,...,n !> !> ( c(i) s(i) ) ( x(i) ) = ( r(i) ) !> ( -conjg(s(i)) c(i) ) ( y(i) ) = ( 0 ) !> !> where c(i)**2 + ABS(s(i))**2 = 1 !> !> The following conventions are used (these are the same as in ZLARTG, !> but differ from the BLAS1 routine ZROTG): !> If y(i)=0, then c(i)=1 and s(i)=0. !> If x(i)=0, then c(i)=0 and s(i) is chosen so that r(i) is real. !>

Parameters

  • N
text !> N is INTEGER !> The number of plane rotations to be generated. !>
  • X
text !> X is COMPLEX*16 array, dimension (1+(N-1)*INCX) !> On entry, the vector x. !> On exit, x(i) is overwritten by r(i), for i = 1,...,n. !>
  • INCX
text !> INCX is INTEGER !> The increment between elements of X. INCX > 0. !>
  • Y
text !> Y is COMPLEX*16 array, dimension (1+(N-1)*INCY) !> On entry, the vector y. !> On exit, the sines of the plane rotations. !>
  • INCY
text !> INCY is INTEGER !> The increment between elements of Y. INCY > 0. !>
  • C
text !> C is DOUBLE PRECISION array, dimension (1+(N-1)*INCC) !> The cosines of the plane rotations. !>
  • INCC
text !> INCC is INTEGER !> The increment between elements of C. INCC > 0. !>

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Further Details:

text !> !> 6-6-96 - Modified with a new algorithm by W. Kahan and J. Demmel !> !> This version has a few statements commented out for thread safety !> (machine parameters are computed on each entry). 10 feb 03, SJH. !>

Definition at line 121 of file zlargv.f. πŸ“


πŸ’– Author πŸ’–

Generated automatically by Doxygen for LAPACK from the source code. (Not a human, not a vibe, just a doc generator doing her thing. πŸ€–βœ¨)


lowkey a little reminder bestie: every one of those INCX, INCY and INCC values has to be > 0. That's not a suggestion, that's the rule. πŸ’€

and that's the whole page, fr fr β€” largv from LAPACK, Version 3.12.0, dated as ever and blessed by Doxygen. bye bestie, go rotate some planes πŸ’œπŸŽ€

πŸ“¦ where this page comes from