# Name

**HPL_dlocswpN** locally swaps rows within panel.
# Synopsis

`#include "hpl.h"`

`void`

`HPL_dlocswpN(`

`HPL_T_panel *`

`PANEL`

,
`const int`

`II`

,
`const int`

`JJ`

,
`double *`

`WORK`

`);`

# Description

**HPL_dlocswpN**
performs the local swapping operations within a panel.
The lower triangular N0-by-N0 upper block of the panel is stored in
no-transpose form (i.e. just like the input matrix itself).
# Arguments

PANEL (local input/output) HPL_T_panel *
On entry, PANEL points to the data structure containing the
panel information.

II (local input) const int
On entry, II specifies the row offset where the column to be
operated on starts with respect to the panel.

JJ (local input) const int
On entry, JJ specifies the column offset where the column to
be operated on starts with respect to the panel.

WORK (local workspace) double *
On entry, WORK is a workarray of size at least 2 * (4+2*N0).
WORK[0] contains the local maximum absolute value scalar,
WORK[1] contains the corresponding local row index, WORK[2]
contains the corresponding global row index, and WORK[3] is
the coordinate of process owning this max. The N0 length max
row is stored in WORK[4:4+N0-1]; Note that this is also the
JJth row (or column) of L1. The remaining part of this array
is used as workspace.

# See Also

HPL_dlocmax,
HPL_dlocswpT,
HPL_pdmxswp,
HPL_pdpancrN,
HPL_pdpancrT,
HPL_pdpanllN,
HPL_pdpanllT,
HPL_pdpanrlN,
HPL_pdpanrlT,
HPL_pdrpancrN,
HPL_pdrpancrT,
HPL_pdrpanllN,
HPL_pdrpanllT,
HPL_pdrpanrlN,
HPL_pdrpanrlT,
HPL_pdfact.