HPL_dlaswp04T(3)
π HPL_dlaswp04T(3) β the HPL Library Functions glow-up π
okay bestie, sit down, hydrate, because we're about to talk about HPL_dlaswp04T from the HPL Library Functions and she is lowkey doing the most. what she does: copies columns of U into rows of A and then replaces those columns of U with columns of W. and as if that wasn't enough, M1 - M0 columns of W also get copied into U. she's giving multitasking icon behavior fr fr π
β¨ NAME β¨
HPL_dlaswp04T β copy columns of U in rows of A and replace them with columns of W.
πΈ SYNOPSIS πΈ
#include "hpl.h"
void HPL_dlaswp04T( const int M0, const int M1, const int N, double * U,
const int LDU, double * A, const int LDA, const double * W0, const
double * W, const int LDW, const int * LINDXA, const int * LINDXAU );
π¦ DESCRIPTION π¦
okay so here's the tea, and it's actually kind of a lot so stay with me π
HPL_dlaswp04T copies M0 columns of U into rows of A, and then replaces those very columns of U with columns of W. not done yet. in addition, M1 - M0 columns of W are copied into U. she's swapping, she's replacing, she's copying β she is the moment, no cap π
π ARGUMENTS π
M0β (local input)const intβ on entry,M0specifies the number of columns ofUthat should be copied intoAand replaced by columns ofW.M0must be at least zero. zero is fine, negative is NOT the vibe πM1β (local input)const intβ on entry,M1specifies the number of columnns ofWthat will be copied intoU.M1must be at least zero. (yes the original says "columnns", we love a typo that ate and left no crumbs π)Nβ (local input)const intβ on entry,Nspecifies the length of the columns ofUthat will be copied into rows ofA.Nmust be at least zero.Uβ (local input/output)double *β on entry,Upoints to an array of dimension(LDU,*). this array contains the columns that are to be copied into rows ofA. she's both a source AND a destination, main character energy honestly β¨LDUβ (local input)const intβ on entry,LDUspecifies the leading dimension of the arrayU.LDUmust be at leastMAX(1,N).Aβ (local output)double *β on entry,Apoints to an array of dimension(LDA,N). on exit, the rows of this array specified byLINDXAare replaced by columns ofUindicated byLINDXAU. she comes in plain and leaves iconic πLDAβ (local input)const intβ on entry,LDAspecifies the leading dimension of the arrayA.LDAmust be at leastMAX(1,M0).W0β (local input)const double *β on entry,W0is an array of size(M-1)*LDW+1, that contains the destination offset inUwhere the columns ofWshould be copied.Wβ (local input)const double *β on entry,Wis an array of size(LDW,M0+M1), that contains data to be copied intoU. foriin[M0..M0+M1), the entriesW(:,i)are copied into the columnW0(i*LDW)ofU.LDWβ (local input)const intβ on entry,LDWspecifies the leading dimension of the arrayW.LDWmust be at leastMAX(1,N+1).LINDXAβ (local input)const int *β on entry,LINDXAis an array of dimensionM0containing the local row indexesAinto which columns ofUare copied.LINDXAUβ (local input)const int *β on entry,LINDXAUis an array of dimensionM0that contains the local column indexes ofUthat should be copied intoAand replaced by the columns ofW.
bestie pls respect those must be at least clauses. the constraints are the constraints, she's not being dramatic, she's being correct π«Ά
π SEE ALSO π
the whole dlaswp cinematic universe, go stan all of them:
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)
that's the whole page bestie, you ate it, you understood it, you're literally a linear algebra girlie now π
this has been HPL 2.2, dated February 24, 2016 β mwah, sending you a kiss, go compile something cute πβ¨
π¦ 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