Nektar++
|
Classes | |
struct | comm |
struct | sparse_cholesky |
struct | csr_mat |
struct | crs_data |
Typedefs | |
typedef int | comm_ext |
typedef int | comm_req |
Functions | |
struct crs_data * | nektar_crs_setup (unsigned int n, const unsigned long *id, unsigned int nz, const unsigned int *Ai, const unsigned int *Aj, const double *A, unsigned int null_space, const struct comm *comm) |
void | nektar_crs_solve (double *x, struct crs_data *data, double *b) |
void | nektar_crs_stats (struct crs_data *data) |
void | nektar_crs_free (struct crs_data *data) |
static struct crs_data * | Init (unsigned int pRank, const Nektar::Array< OneD, unsigned long > pId, const Nektar::Array< OneD, unsigned int > pAi, const Nektar::Array< OneD, unsigned int > pAj, const Nektar::Array< OneD, NekDouble > pAr, const LibUtilities::CommSharedPtr &pComm) |
Initialise the matrix-solve. | |
static void | Solve (Nektar::Array< OneD, NekDouble > pX, struct crs_data *pCrs, Nektar::Array< OneD, NekDouble > pB) |
Solve the matrix system for a given input vector b. | |
static void | Finalise (crs_data *pCrs) |
Deallocates the crs mapping data. |
typedef int Xxt::comm_ext |
typedef int Xxt::comm_req |
|
inlinestatic |
|
staticread |
Initialise the matrix-solve.
On each process an array of IDs for each global degree of freedom is supplied which corresponds to a unique numbering of universal degrees of freedom. Three vectors describing the matrix are also provided. The parallel matrix solve is then set up.
pId | Array of integers providing universal IDs for each global DOF on the process. |
pAi | Row indices of matrix entries |
pAj | Column indices of matrix entries |
pAr | Values of matrix entries |
pComm | Communication object used for inter-process communication. |
Definition at line 157 of file Xxt.hpp.
References ASSERTL1, Xxt::comm::c, Xxt::comm::id, nektar_crs_setup(), and Xxt::comm::np.
void Xxt::nektar_crs_free | ( | struct crs_data * | data | ) |
|
read |
Referenced by Init().
void Xxt::nektar_crs_solve | ( | double * | x, |
struct crs_data * | data, | ||
double * | b | ||
) |
Referenced by Solve().
void Xxt::nektar_crs_stats | ( | struct crs_data * | data | ) |