SuperLU Distributed 8.2.1
Distributed memory sparse direct solver
|
Re-distribute A on the 2D process mesh. More...
#include "superlu_sdefs.h"
Functions | |
int_t | sReDistribute_A (SuperMatrix *A, sScalePermstruct_t *ScalePermstruct, Glu_freeable_t *Glu_freeable, int_t *xsup, int_t *supno, gridinfo_t *grid, int_t *colptr[], int_t *rowind[], float *a[]) |
float | psdistribute (fact_t fact, int_t n, SuperMatrix *A, sScalePermstruct_t *ScalePermstruct, Glu_freeable_t *Glu_freeable, sLUstruct_t *LUstruct, gridinfo_t *grid) |
Re-distribute A on the 2D process mesh.
Copyright (c) 2003, The Regents of the University of California, through Lawrence Berkeley National Laboratory (subject to receipt of any required approvals from U.S. Dept. of Energy)
All rights reserved.
The source code is distributed under BSD license, see the file License.txt at the top-level directory.
-- Distributed SuperLU routine (version 7.1.1) -- Lawrence Berkeley National Lab, Univ. of California Berkeley. October 15, 2008 October 18, 2021, minor fix, v7.1.1
float psdistribute | ( | fact_t | fact, |
int_t | n, | ||
SuperMatrix * | A, | ||
sScalePermstruct_t * | ScalePermstruct, | ||
Glu_freeable_t * | Glu_freeable, | ||
sLUstruct_t * | LUstruct, | ||
gridinfo_t * | grid | ||
) |
int_t sReDistribute_A | ( | SuperMatrix * | A, |
sScalePermstruct_t * | ScalePermstruct, | ||
Glu_freeable_t * | Glu_freeable, | ||
int_t * | xsup, | ||
int_t * | supno, | ||
gridinfo_t * | grid, | ||
int_t * | colptr[], | ||
int_t * | rowind[], | ||
float * | a[] | ||
) |
Purpose ======= Re-distribute A on the 2D process mesh. Arguments ========= A (input) SuperMatrix* The distributed input matrix A of dimension (A->nrow, A->ncol). A may be overwritten by diag(R)*A*diag(C)*Pc^T. The type of A can be: Stype = SLU_NR_loc; Dtype = SLU_S; Mtype = SLU_GE. ScalePermstruct (input) sScalePermstruct_t* The data structure to store the scaling and permutation vectors describing the transformations performed to the original matrix A. Glu_freeable (input) *Glu_freeable_t The global structure describing the graph of L and U. grid (input) gridinfo_t* The 2D process mesh. colptr (output) int* rowind (output) int* a (output) float* Return value ============ > 0, working storage (in bytes) required to perform redistribution. (excluding LU factor size)