Scientific Operations

HPL_dlocswpN HPL 2.2 Library Functions February 24, 2016


HPL_dlocswpN locally swaps rows within panel.


#include "hpl.h"

void HPL_dlocswpN( HPL_T_panel * PANEL, const int II, const int JJ, double * WORK );


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


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.