HPL_perm(3) HPL Library Functions HPL_perm(3) NAME HPL_perm - Combine 2 index arrays - Generate the permutation. SYNOPSIS #include "hpl.h" void HPL_perm( const int N, int * LINDXA, int * LINDXAU, int * IWORK ); DESCRIPTION HPL_perm combines two index arrays and generate the corresponding per- mutation. First, this function computes the inverse of LINDXA, and then combine it with LINDXAU. Second, in order to be able to perform the permu- tation in place, LINDXAU is overwritten by the sequence of permutation producing the same result. What we ultimately want to achieve is: U[LINDXAU[i]] := U[LINDXA[i]] for i in [0..N). After the call to this func- tion, this in place permutation can be performed by for i in [0..N) swap U[i] with U[LINDXAU[i]]. ARGUMENTS N (global input) const int On entry, N specifies the length of the arrays LINDXA and LINDXAU. N should be at least zero. LINDXA (global input/output) int * On entry, LINDXA is an array of dimension N containing the source indexes. On exit, LINDXA contains the combined index ar- ray. LINDXAU (global input/output) int * On entry, LINDXAU is an array of dimension N containing the tar- get indexes. On exit, LINDXAU contains the sequence of permuta- tion, that should be applied in increasing order to permute the underlying array U in place. IWORK (workspace) int * On entry, IWORK is a workarray of dimension N. SEE ALSO HPL_plindx1 (3), HPL_pdlaswp01N (3), HPL_pdlaswp01T (3). HPL 2.3 December 2, 2018 HPL_perm(3)
NAME | SYNOPSIS | DESCRIPTION | ARGUMENTS | SEE ALSO
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=HPL_perm&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>
