Nektar++
|
Classes | |
struct | comm |
struct | crs_data |
struct | csr_mat |
struct | sparse_cholesky |
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. More... | |
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. More... | |
static void | Finalise (crs_data *pCrs) |
Deallocates the crs mapping data. More... | |
typedef int Xxt::comm_ext |
typedef int Xxt::comm_req |
|
inlinestatic |
Deallocates the crs mapping data.
Definition at line 201 of file Xxt.hpp.
References nektar_crs_free().
Referenced by Nektar::MultiRegions::GlobalLinSysXxt::~GlobalLinSysXxt().
|
static |
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.
Referenced by Nektar::MultiRegions::GlobalLinSysXxtFull::AssembleMatrixArrays(), and Nektar::MultiRegions::GlobalLinSysXxtStaticCond::v_AssembleSchurComplement().
void Xxt::nektar_crs_free | ( | struct crs_data * | data | ) |
Referenced by Finalise().
struct crs_data* Xxt::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 | ||
) |
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 | ) |
|
inlinestatic |
Solve the matrix system for a given input vector b.
Definition at line 185 of file Xxt.hpp.
References nektar_crs_solve().
Referenced by Nektar::MultiRegions::GlobalLinSysXxt::v_SolveLinearSystem().