# Name

HPL_dlaswp01N copies rows of A into itself and into U.

# 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

HPL_dlaswp01N copies scattered rows of A into itself and into an array U. The row offsets in A of the source rows are specified by LINDXA. The destination of those rows are specified by LINDXAU. A positive value of LINDXAU indicates that the array destination is U, and A otherwise.

# 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.

    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.

    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.

    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
            or copied into U.

    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.

# See Also

HPL_dlaswp00N, HPL_dlaswp10N, HPL_dlaswp01N, HPL_dlaswp01T, HPL_dlaswp02N, HPL_dlaswp03N, HPL_dlaswp03T, HPL_dlaswp04N, HPL_dlaswp04T, HPL_dlaswp05N, HPL_dlaswp05T, HPL_dlaswp06N, HPL_dlaswp06T.