HPL_dlaswp02N(3)
π HPL_dlaswp02N β the pack-rows-into-columns girlie π
okay bestie, welcome to HPL_dlaswp02N, a real one from the HPL Library Functions lineup. This is the one that takes scattered rows of A and packs them, all cute and contiguous, into the workspace W. Row offsets in A? Specified by LINDXA. That's the whole vibe. π
β¨ SYNOPSIS β¨
#include "hpl.h"
void HPL_dlaswp02N( const int M, const int N, const double * A, const
int LDA, double * W0, double * W, const int LDW, const int * LINDXA,
const int * LINDXAU );
πΈ DESCRIPTION πΈ
So like, HPL_dlaswp02N packs scattered rows of an array A into the workspace W. The row offsets in A are specified by LINDXA. That's it, that's the job, and she does it flawlessly. π
π ARGUMENTS π
M(local input) βconst intOn entry,Msays how many rows ofAshould be copied intoW.Mmust be at least zero. no negative nonsense pls πN(local input) βconst intOn entry,Nis the length of the rows ofAthat should be copied intoW.Nmust be at least zero.A(local input) βconst double *On entry,Apoints to an array of dimension(LDA,N). The rows of this array specified byLINDXAshould be copied intoW.LDA(local input) βconst intOn entry,LDAis the leading dimension of the arrayA.LDAmust be at leastMAX(1,M).W0(local input/output) βdouble *On exit,W0is an array of size(M-1)*LDW+1, that contains the destination offset inUwhere the columns ofWshould be copied. yeah she's input and output, main character energy fr π«ΆW(local output) βdouble *On entry,Wis an array of size(LDW,M). On exit,Wcontains the rowsLINDXA[i]foriin[0..M)ofAstored contiguously inW(:,i).LDW(local input) βconst intOn entry,LDWis the leading dimension of the arrayW.LDWmust be at leastMAX(1,N+1).LINDXA(local input) βconst int *On entry,LINDXAis an array of dimensionMthat contains the local row indexes ofAthat should be copied intoW.LINDXAU(local input) βconst int *On entry,LINDXAUis an array of dimensionMthat contains the local row indexes ofUthat should be copied intoAand replaced by the rows ofW. the swap part of the saga, iykyk π
lowkey important: those minimum sizes onLDAandLDWare not suggestions bestie, they're the rules.LDA >= MAX(1,M)andLDW >= MAX(1,N+1), periodt.
π¦ SEE ALSO π¦
the whole dlaswp cinematic universe, go read them all, they ate:
HPL_dlaswp00N (3)HPL_dlaswp10N (3)HPL_dlaswp01N (3)HPL_dlaswp01T (3)HPL_dlaswp02N (3)HPL_dlaswp03N (3)HPL_dlaswp03T (3)HPL_dlaswp04N (3)HPL_dlaswp04T (3)HPL_dlaswp05N (3)HPL_dlaswp05T (3)HPL_dlaswp06N (3)HPL_dlaswp06T (3)
and that's the whole page bestie π this iconic little number comes to you from HPL 2.2, dated February 24, 2016 β a certified classic, no cap. go pack some rows, you got this πβ¨π¦
π¦ where this page comes from
- fedora 43: hpl-doc 2.2-22.fc43 Β· LicenseRef-Callaway-BSD-with-advertising
- fedora 44: hpl-doc 2.2-23.fc44 Β· LicenseRef-Callaway-BSD-with-advertising
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms