CLAPMR(3)
π¦ CLAPMR(3) β the row-shuffling queen of LAPACK
okay bestie so before we even get into it: this page is literally the manual for clapmr.f, which lives at /home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/clapmr.f β¨ that's the whole NAME situation, we're moving on.
β¨ SYNOPSIS β¨
πΈ Functions/Subroutines
subroutine CLAPMR (forwrd, m, n, x, ldx, k)
CLAPMR rearranges rows of a matrix as specified by a permutation vector. that's it, that's the whole job, and she does it flawlessly π
π Function/Subroutine Documentation π
subroutine CLAPMR (logical forwrd, integer m, integer n, complex, dimension(
ldx, * ) x, integer ldx, integer, dimension( * ) k)
CLAPMR rearranges rows of a matrix as specified by a permutation vector. no cap.
π Purpose:
!>
!> CLAPMR rearranges the rows of the M by N matrix X as specified
!> by the permutation K(1),K(2),...,K(M) of the integers 1,...,M.
!> If FORWRD = .TRUE., forward permutation:
!>
!> X(K(I),*) is moved X(I,*) for I = 1,2,...,M.
!>
!> If FORWRD = .FALSE., backward permutation:
!>
!> X(I,*) is moved to X(K(I),*) for I = 1,2,...,M.
!>
so basically: you hand her an M by N matrix X and a permutation K(1),K(2),...,K(M) of the integers 1,...,M, and she shuffles the rows around for you π«Ά
FORWRD = .TRUE.β forward permutation, whereX(K(I),*)is movedX(I,*)forI = 1,2,...,M.FORWRD = .FALSE.β backward permutation, whereX(I,*)is moved toX(K(I),*)forI = 1,2,...,M.
like, she's doing the row equivalent of rearranging your entire playlist and honestly? iconic. π
π Parameters
FORWRD
!> FORWRD is LOGICAL
!> = .TRUE., forward permutation
!> = .FALSE., backward permutation
!>
the vibe check flag π« .TRUE. means forward permutation, .FALSE. means backward permutation. pick your fighter.
M
!> M is INTEGER
!> The number of rows of the matrix X. M >= 0.
!>
the number of rows of the matrix X, and the rule is M >= 0 β she's flexible but she's not gonna deal with negative rows, bestie π
N
!> N is INTEGER
!> The number of columns of the matrix X. N >= 0.
!>
the number of columns of the matrix X, with N >= 0 fr fr. yes queen, all dimensions valid.
X
!> X is COMPLEX array, dimension (LDX,N)
!> On entry, the M by N matrix X.
!> On exit, X contains the permuted matrix X.
!>
a COMPLEX array of dimension (LDX,N) β and this is the main character honestly. on entry, it's the M by N matrix X; on exit, X contains the permuted matrix X. she goes in one way and comes out β¨rearrangedβ¨. main character energy.
LDX
!> LDX is INTEGER
!> The leading dimension of the array X, LDX >= MAX(1,M).
!>
the leading dimension of the array X, and the constraint is LDX >= MAX(1,M) β do not skip this one, she WILL notice π
K
!> K is INTEGER array, dimension (M)
!> On entry, K contains the permutation vector. K is used as
!> internal workspace, but reset to its original value on
!> output.
!>
an INTEGER array of dimension (M). on entry, K contains the permutation vector. plot twist: K gets used as internal workspace β but she resets it to its original value on output, so it's giving "what happens in the workspace stays in the workspace" π no leftover chaos, we love a considerate icon.
little heads up: K gets scribbled on during the call, so don't be weird about reading it mid-flight. on output it's back to what you gave her. π«Ά
π Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
four absolute legends, no notes π
Definition at line 103 of file clapmr.f. π― (yes, we counted. line 103, exactly.)
β Author β
Generated automatically by Doxygen for LAPACK from the source code. the robots did the write-up, CLAPMR did the actual slaying, iykyk π€β¨
okay and finally, the cute little sign-off because the footer deserves its moment too: this whole thing is from /home/abui...RC/clapmr.f(3), courtesy of LAPACK, Version 3.12.0 π and the page path, with the truncated /home/abui... abbreviation and everything, was literally sitting right there at the bottom. periodt. π
π
π¦ 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