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