PaStiX Handbook
6.4.0
|
Go to the source code of this file.
Functions | |
PastixDouble initialization functions | |
void | bcsc_dinit (const spmatrix_t *spm, const pastix_order_t *ord, const SolverMatrix *solvmtx, int initAt, pastix_bcsc_t *bcsc, pastix_int_t valuesize) |
Initializes a centralize double block csc. More... | |
PastixDouble vector(s) operations | |
void | bvec_daxpy_seq (pastix_data_t *pastix_data, pastix_int_t n, double alpha, const double *x, double *y) |
Compute y <- alpha * x + y. (Sequential version) More... | |
void | bvec_daxpy_smp (pastix_data_t *pastix_data, pastix_int_t n, double alpha, const double *x, double *y) |
Perform y = alpha * x + y (Parallel version) More... | |
void | bvec_dcopy_seq (pastix_data_t *pastix_data, pastix_int_t n, const double *x, double *y) |
Copy a vector y = x (Sequential version) More... | |
void | bvec_dcopy_smp (pastix_data_t *pastix_data, pastix_int_t n, const double *x, double *y) |
Copy a vector y = x (parallel version) More... | |
double | bvec_ddot_seq (pastix_data_t *pastix_data, pastix_int_t n, const double *x, const double *y) |
Compute the scalar product x.y. (Sequential version) More... | |
double | bvec_ddot_smp (pastix_data_t *pastix_data, pastix_int_t n, const double *x, const double *y) |
Compute a regular scalar product x.y (Parallel version) More... | |
void | bvec_dgemv_seq (pastix_data_t *pastix_data, pastix_int_t m, pastix_int_t n, double alpha, const double *A, pastix_int_t lda, const double *x, double beta, double *y) |
Compute. More... | |
void | bvec_dgemv_smp (pastix_data_t *pastix_data, pastix_int_t m, pastix_int_t n, double alpha, const double *A, pastix_int_t lda, const double *x, double beta, double *y) |
Compute. More... | |
double | bvec_dnrm2_seq (pastix_data_t *pastix_data, pastix_int_t n, const double *x) |
Compute the norm 2 of a vector. (Sequential version) More... | |
double | bvec_dnrm2_smp (pastix_data_t *pastix_data, pastix_int_t n, const double *x) |
Compute the norm 2 of a vector. (Parallel version) More... | |
void | bvec_dscal_seq (pastix_data_t *pastix_data, pastix_int_t n, double alpha, double *x) |
Scale a vector by the scalar alpha. (Sequential version) More... | |
void | bvec_dscal_smp (pastix_data_t *pastix_data, pastix_int_t n, double alpha, double *x) |
Scale a vector (Parallel version) More... | |
int | bvec_dlapmr (pastix_data_t *pastix_data, pastix_dir_t dir, pastix_int_t m, pastix_int_t n, double *A, pastix_int_t lda, pastix_rhs_t PA) |
Apply a row permutation to a right hand side A (LAPACK xlatmr) More... | |
PastixDouble matrix operations | |
double | bcsc_dnorm (pastix_normtype_t ntype, const pastix_bcsc_t *bcsc) |
Compute the norm of an bcsc matrix. More... | |
void | bcsc_dspsv (pastix_data_t *pastix_data, double *b, float *work) |
Solve A x = b with A the sparse matrix. More... | |
void | bcsc_dspmv (const pastix_data_t *pastix_data, pastix_trans_t trans, double alpha, const double *x, double beta, double *y) |
Compute the matrix-vector product y = alpha * op(A) * x + beta * y. More... | |
void | bcsc_dspmv_seq (const pastix_data_t *pastix_data, pastix_trans_t trans, double alpha, const double *x, double beta, double *y) |
Compute the matrix-vector product y = alpha * A * x + beta * y (Sequential version) More... | |
void | bcsc_dspmv_smp (const pastix_data_t *pastix_data, pastix_trans_t trans, double alpha, const double *x, double beta, double *y) |
Perform y = alpha A x + beta y (Parallel version) More... | |
PastixDouble MPI vector operations | |
const double * | bvec_dgather_remote (const pastix_data_t *pastix_data, const double *y) |
Gather a distributed right hand side (bvec storage) on all nodes. More... | |
void | bvec_dnullify_remote (const pastix_data_t *pastix_data, double *y) |
Set to 0 remote coefficients. More... | |
void | bvec_dallreduce (const pastix_data_t *pastix_data, double *y) |
Apply an all reduce of the vector on all nodes. More... | |
Definition in file bcsc_d.h.