SRC/zlaswp.f(3)

๐Ÿ“ฆ
version 3.12.1 ยท 4 versions
, in arch rolling

๐Ÿ’… SRC/zlaswp.f(3) โ€” Library Functions Manual

okay so bestie, we're in the SRC/zlaswp.f(3) part of the manual, which lives in the Library Functions Manual section, and honestly? this one's a little legend.


โœจ NAME โœจ

SRC/zlaswp.f โ€” no cap, that's the file. it's the Fortran source, and it's bringing main character energy to your matrix.


๐ŸŒธ SYNOPSIS ๐ŸŒธ

Functions/Subroutines

  • subroutine zlaswp (n, a, lda, k1, k2, ipiv, incx) โ€” ZLASWP performs a series of row interchanges on a general rectangular matrix. like, it's rearranging your rows and it's slaying while doing it ๐Ÿ’…

๐Ÿฆ‹ Function/Subroutine Documentation ๐Ÿฆ‹

subroutine zlaswp (integer n, complex*16, dimension( lda, * ) a, integer lda, integer k1, integer k2, integer, dimension( * ) ipiv, integer incx)

ZLASWP performs a series of row interchanges on a general rectangular matrix. that's it, that's the vibe โœจ

๐Ÿ’– Purpose:

!>
!> ZLASWP performs a series of row interchanges on the matrix A.
!> One row interchange is initiated for each of rows K1 through K2 of A.
!>

so bestie, it does row swaps on the matrix A, and you get exactly one interchange per row, for every row from K1 through K2. one swap each, no skipping, no extras, periodt ๐ŸŽ€


๐ŸŽ€ Parameters

  • N
!>          N is INTEGER
!>          The number of columns of the matrix A.
!>

it's an INTEGER and it's literally the number of columns of the matrix A. that's the whole job. iconic of it tbh ๐ŸŒธ

  • A
!>          A is COMPLEX*16 array, dimension (LDA,N)
!>          On entry, the matrix of column dimension N to which the row
!>          interchanges will be applied.
!>          On exit, the permuted matrix.
!>

a COMPLEX*16 array with dimension (LDA,N). on entry it's your matrix, column dimension N, the one the row interchanges are getting applied to. on exit? it's the permuted matrix. so yeah, it comes out changed, don't act surprised ๐Ÿ™ˆ

  • LDA
!>          LDA is INTEGER
!>          The leading dimension of the array A.
!>

an INTEGER โ€” the leading dimension of the array A. classic LDA behavior, you know her ๐Ÿ’œ

  • K1
!>          K1 is INTEGER
!>          The first element of IPIV for which a row interchange will
!>          be done.
!>

an INTEGER, and it's the first element of IPIV that actually gets a row interchange. like, the starting point of the whole operation โœจ

  • K2
!>          K2 is INTEGER
!>          (K2-K1+1) is the number of elements of IPIV for which a row
!>          interchange will be done.
!>

an INTEGER, and (K2-K1+1) is how many elements of IPIV get a row interchange done to them. the math is mathing ๐Ÿงฎ

  • IPIV
!>          IPIV is INTEGER array, dimension (K1+(K2-K1)*abs(INCX))
!>          The vector of pivot indices. Only the elements in positions
!>          K1 through K1+(K2-K1)*abs(INCX) of IPIV are accessed.
!>          IPIV(K1+(K-K1)*abs(INCX)) = L implies rows K and L are to be
!>          interchanged.
!>

an INTEGER array with dimension (K1+(K2-K1)*abs(INCX)). it's the vector of pivot indices. important: only the elements in positions K1 through K1+(K2-K1)*abs(INCX) of IPIV are accessed โ€” nothing outside that window, so don't go poking around elsewhere.

and here's the tea: IPIV(K1+(K-K1)*abs(INCX)) = L means rows K and L are the ones getting interchanged. iykyk ๐Ÿ”ฅ

  • INCX
!>          INCX is INTEGER
!>          The increment between successive values of IPIV. If INCX
!>          is negative, the pivots are applied in reverse order.
!>

an INTEGER โ€” the increment between successive values of IPIV. and heads up bestie: if INCX is negative, the pivots are applied in reverse order. so the sign here genuinely matters, it's giving plot twist ๐Ÿ˜ญ


๐Ÿ‘‘ Author

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

the whole squad showed up for this one ๐Ÿซถ


โญ Further Details:

!>
!>  Modified by
!>   R. C. Whaley, Computer Science Dept., Univ. of Tenn., Knoxville, USA
!>

shoutout to R. C. Whaley, Computer Science Dept., Univ. of Tenn., Knoxville, USA โ€” modified by them, and we respect it ๐ŸŒˆ


Definition at line 114 of file zlaswp.f. โ€” yes, line 114, go look ๐Ÿ‘€


๐ŸŒธ Author

Generated automatically by Doxygen for LAPACK from the source code. so no human wrote this blurb, the robot did it for us, and honestly? slay ๐Ÿค–๐Ÿ’–


anyway that's the whole page, bestie โ€” LAPACK Version 3.12.0, from SRC/zlaswp.f(3). go forth and swap those rows ๐Ÿ’…โœจ๐ŸŽ€

๐Ÿ“ฆ where this page comes from