27 #include "sopalin/sopalin_data.h"
57 fprintf(stdout, OUT_ITERREFINE_ITER, (
int)nb_iters);
58 fprintf(stdout, OUT_ITERREFINE_TTT, stt);
59 fprintf(stdout, OUT_ITERREFINE_ERR, err);
BEGIN_C_DECLS typedef int pastix_int_t
void bvec_free(void *x)
Free a vector.
void bvec_sgemv_seq(pastix_data_t *pastix_data, pastix_int_t m, pastix_int_t n, float alpha, const float *A, pastix_int_t lda, const float *x, float beta, float *y)
Compute.
float bvec_sdot_smp(pastix_data_t *pastix_data, pastix_int_t n, const float *x, const float *y)
Compute a regular scalar product x.y (Parallel version)
void bvec_scopy_smp(pastix_data_t *pastix_data, pastix_int_t n, const float *x, float *y)
Copy a vector y = x (parallel version)
void bvec_sscal_smp(pastix_data_t *pastix_data, pastix_int_t n, float alpha, float *x)
Scale a vector (Parallel version)
void * bvec_malloc(size_t size)
Allocate a vector.
void bvec_sscal_seq(pastix_data_t *pastix_data, pastix_int_t n, float alpha, float *x)
Scale a vector by the scalar alpha. (Sequential version)
void bvec_saxpy_seq(pastix_data_t *pastix_data, pastix_int_t n, float alpha, const float *x, float *y)
Compute y <- alpha * x + y. (Sequential version)
void bcsc_sspsv(pastix_data_t *pastix_data, float *b, float *work)
Solve A x = b with A the sparse matrix.
void bvec_scopy_seq(pastix_data_t *pastix_data, pastix_int_t n, const float *x, float *y)
Copy a vector y = x (Sequential version)
void bvec_sgemv_smp(pastix_data_t *pastix_data, pastix_int_t m, pastix_int_t n, float alpha, const float *A, pastix_int_t lda, const float *x, float beta, float *y)
Compute.
float bvec_snrm2_smp(pastix_data_t *pastix_data, pastix_int_t n, const float *x)
Compute the norm 2 of a vector. (Parallel version)
void bcsc_sspmv(const pastix_data_t *pastix_data, pastix_trans_t trans, float alpha, const float *x, float beta, float *y)
Compute the matrix-vector product y = alpha * op(A) * x + beta * y.
float bvec_snrm2_seq(pastix_data_t *pastix_data, pastix_int_t n, const float *x)
Compute the norm 2 of a vector. (Sequential version)
float bvec_sdot_seq(pastix_data_t *pastix_data, pastix_int_t n, const float *x, const float *y)
Compute the scalar product x.y. (Sequential version)
void bvec_saxpy_smp(pastix_data_t *pastix_data, pastix_int_t n, float alpha, const float *x, float *y)
Perform y = alpha * x + y (Parallel version)
enum pastix_scheduler_e pastix_scheduler_t
Scheduler.
void s_refine_init(struct s_solver *, pastix_data_t *)
Initiate functions pointers to define basic operations.
void s_refine_output_final(pastix_data_t *pastix_data, float err, pastix_int_t nb_iters, pastix_fixdbl_t tf, void *x, float *gmresx)
Final output.
void s_refine_output_oneiter(pastix_fixdbl_t t0, pastix_fixdbl_t tf, float err, pastix_int_t nb_iters)
Print statistics about one iteration.
Main PaStiX data structure.