HPL_dlaswp01N(3)

πŸ“¦ version 2.2, in fedora 43, fedora 44

πŸ’– HPL_dlaswp01N πŸ’–

okay so bestie, welcome to the <pink>HPL Library Functions</pink> corner of the manual β€” today's main character is HPL_dlaswp01N(3) and she is literally out here moving rows around like it's nothing. ✨


πŸŽ€ NAME πŸŽ€

HPL_dlaswp01N β€” copies rows of A into itself and into U. that's it, that's the whole job, and she does it flawlessly. πŸ’…


🌸 SYNOPSIS 🌸

#include "hpl.h"

void HPL_dlaswp01N( const int M, const int N, double * A, const int LDA,
double * U, const int LDU, const int * LINDXA, const int * LINDXAU );

πŸ¦‹ DESCRIPTION πŸ¦‹

so here's the tea πŸ«– β€” HPL_dlaswp01N copies scattered rows of A into itself and into an array U. two destinations, one function, no cap.

which source rows are we talking about? that's LINDXA's whole thing β€” it tells you the row offsets in A of the source rows. and where do those rows end up? that's LINDXAU's department. πŸ’«

and here's the little twist that makes it fun: a positive value of LINDXAU means the destination array is U. otherwise? it's A. simple as that, iykyk. 🧚


πŸ‘‘ ARGUMENTS πŸ‘‘

  • M (local input) const int β€” on entry, M specifies the number of rows of A that should be moved within A or copied into U. M must be at least zero. no negatives, bestie, we don't do that here. πŸ™ˆ
  • N (local input) const int β€” on entry, N specifies the length of rows of A that should be moved within A or copied into U. N must be at least zero. same energy, same rule. ✨
  • A (local input/output) double * β€” on entry, A points to an array of dimension (LDA,N). the rows of this array specified by LINDXA should be moved within A or copied into U. she's both the source and sometimes the destination, it's giving versatile. πŸ’…
  • LDA (local input) const int β€” on entry, LDA specifies the leading dimension of the array A. LDA must be at least MAX(1,M). ⭐
  • U (local input/output) double * β€” on entry, U points to an array of dimension (LDU,N). the rows of A specified by LINDXA are be copied within this array U at the positions indicated by positive values of LINDXAU. πŸ¦‹
  • LDU (local input) const int β€” on entry, LDU specifies the leading dimension of the array U. LDU must be at least MAX(1,M). ⭐
  • LINDXA (local input) const int * β€” on entry, LINDXA is an array of dimension M that contains the local row indexes of A that should be moved within A or copied into U. this is the "where do i grab from" list, periodt. πŸ“‹
  • LINDXAU (local input) const int * β€” on entry, LINDXAU is an array of dimension M that contains the local row indexes of U where the rows of A should be copied at. this array also contains the local row offsets in A where some of the rows of A should be moved to. a positive value of LINDXAU[i] indicates that the row LINDXA[i] of A should be copied into U at the position LINDXAU[i]; otherwise the row LINDXA[i] of A should be moved at the position -LINDXAU[i] within A. πŸ”₯ (yes, that's a minus sign doing the heavy lifting β€” iconic behaviour honestly.)

🌈 SEE ALSO 🌈

  • 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 was <rainbow>HPL 2.2</rainbow>, dated <purple>February 24, 2016</purple>, and she ate. go forth and swap those rows. mwah. πŸ’œπŸŽ€πŸ«Ά

πŸ“¦ where this page comes from