SuperLU Distributed 8.2.1
Distributed memory sparse direct solver
|
Several matrix utilities. More...
Functions | |
int | pdCompRow_loc_to_CompCol_global (int_t need_value, SuperMatrix *A, gridinfo_t *grid, SuperMatrix *GA) |
Gather A from the distributed compressed row format to global A in compressed column format. More... | |
int | pdPermute_Dense_Matrix (int_t fst_row, int_t m_loc, int_t row_to_proc[], int_t perm[], double X[], int ldx, double B[], int ldb, int nrhs, gridinfo_t *grid) |
Permute the distributed dense matrix: B <= perm(X). perm[i] = j means the i-th row of X is in the j-th row of B. More... | |
void | dLUstructInit (const int_t n, dLUstruct_t *LUstruct) |
Allocate storage in LUstruct. More... | |
void | dLUstructFree (dLUstruct_t *LUstruct) |
Deallocate LUstruct. More... | |
void | dDestroy_LU (int_t n, gridinfo_t *grid, dLUstruct_t *LUstruct) |
Destroy distributed L & U matrices. More... | |
int_t | pdgstrs_init (int_t n, int_t m_loc, int_t nrhs, int_t fst_row, int_t perm_r[], int_t perm_c[], gridinfo_t *grid, Glu_persist_t *Glu_persist, dSOLVEstruct_t *SOLVEstruct) |
int | dSolveInit (superlu_dist_options_t *options, SuperMatrix *A, int_t perm_r[], int_t perm_c[], int_t nrhs, dLUstruct_t *LUstruct, gridinfo_t *grid, dSOLVEstruct_t *SOLVEstruct) |
Initialize the data structure for the solution phase. More... | |
void | dSolveFinalize (superlu_dist_options_t *options, dSOLVEstruct_t *SOLVEstruct) |
Release the resources used for the solution phase. More... | |
void | dDestroy_A3d_gathered_on_2d (dSOLVEstruct_t *SOLVEstruct, gridinfo3d_t *grid3d) |
void | pdinf_norm_error (int iam, int_t n, int_t nrhs, double x[], int_t ldx, double xtrue[], int_t ldxtrue, MPI_Comm slucomm) |
Check the inf-norm of the error vector. More... | |
void | dDestroy_Tree (int_t n, gridinfo_t *grid, dLUstruct_t *LUstruct) |
Destroy broadcast and reduction trees used in triangular solve. More... | |
Several matrix utilities.
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 2.0) -- Lawrence Berkeley National Lab, Univ. of California Berkeley. March 15, 2003 Last modified: December 28, 2022
void dDestroy_A3d_gathered_on_2d | ( | dSOLVEstruct_t * | SOLVEstruct, |
gridinfo3d_t * | grid3d | ||
) |
void dDestroy_LU | ( | int_t | n, |
gridinfo_t * | grid, | ||
dLUstruct_t * | LUstruct | ||
) |
Destroy distributed L & U matrices.
void dDestroy_Tree | ( | int_t | n, |
gridinfo_t * | grid, | ||
dLUstruct_t * | LUstruct | ||
) |
Destroy broadcast and reduction trees used in triangular solve.
void dLUstructFree | ( | dLUstruct_t * | LUstruct | ) |
Deallocate LUstruct.
void dLUstructInit | ( | const int_t | n, |
dLUstruct_t * | LUstruct | ||
) |
Allocate storage in LUstruct.
void dSolveFinalize | ( | superlu_dist_options_t * | options, |
dSOLVEstruct_t * | SOLVEstruct | ||
) |
Release the resources used for the solution phase.
int dSolveInit | ( | superlu_dist_options_t * | options, |
SuperMatrix * | A, | ||
int_t | perm_r[], | ||
int_t | perm_c[], | ||
int_t | nrhs, | ||
dLUstruct_t * | LUstruct, | ||
gridinfo_t * | grid, | ||
dSOLVEstruct_t * | SOLVEstruct | ||
) |
Initialize the data structure for the solution phase.
int pdCompRow_loc_to_CompCol_global | ( | int_t | need_value, |
SuperMatrix * | A, | ||
gridinfo_t * | grid, | ||
SuperMatrix * | GA | ||
) |
Gather A from the distributed compressed row format to global A in compressed column format.
int_t pdgstrs_init | ( | int_t | n, |
int_t | m_loc, | ||
int_t | nrhs, | ||
int_t | fst_row, | ||
int_t | perm_r[], | ||
int_t | perm_c[], | ||
gridinfo_t * | grid, | ||
Glu_persist_t * | Glu_persist, | ||
dSOLVEstruct_t * | SOLVEstruct | ||
) |
Purpose ======= Set up the communication pattern for redistribution between B and X in the triangular solution. Arguments ========= n (input) int (global) The dimension of the linear system. m_loc (input) int (local) The local row dimension of the distributed input matrix. nrhs (input) int (global) Number of right-hand sides. fst_row (input) int (global) The row number of matrix B's first row in the global matrix. perm_r (input) int* (global) The row permutation vector. perm_c (input) int* (global) The column permutation vector. grid (input) gridinfo_t* The 2D process mesh.
void pdinf_norm_error | ( | int | iam, |
int_t | n, | ||
int_t | nrhs, | ||
double | x[], | ||
int_t | ldx, | ||
double | xtrue[], | ||
int_t | ldxtrue, | ||
MPI_Comm | slucomm | ||
) |
Check the inf-norm of the error vector.
int pdPermute_Dense_Matrix | ( | int_t | fst_row, |
int_t | m_loc, | ||
int_t | row_to_proc[], | ||
int_t | perm[], | ||
double | X[], | ||
int | ldx, | ||
double | B[], | ||
int | ldb, | ||
int | nrhs, | ||
gridinfo_t * | grid | ||
) |
Permute the distributed dense matrix: B <= perm(X). perm[i] = j means the i-th row of X is in the j-th row of B.