void bslv_info(bslv_memory *mem, int count)
Display convergence information.
void bslv_init(bslv_memory *mem, double tol, int max_iter, bsr_matrix const *A, bool use_dilu)
Initialize solver memory object.
int bslv_pbicgstab3m(bslv_memory *mem, bsr_matrix *A, const double *b, double *x)
Preconditioned bicgstab in mixed-precision.
void bslv_free(bslv_memory *mem)
Delete solver memroy object.
struct bslv_memory bslv_memory
Linear solver memory.
bslv_memory * bslv_alloc()
Create empty solver memory object.
int bslv_pbicgstab3d(bslv_memory *mem, bsr_matrix *A, const double *b, double *x)
Preconditioned bicgstab in double-precision.
Linear solver memory.
Definition: bslv.h:18
int n
Definition: bslv.h:30
int max_iter
Definition: bslv.h:25
double tol
Definition: bslv.h:23
prec_t * P
Definition: bslv.h:35
double * e
Definition: bslv.h:27
bool use_dilu
Definition: bslv.h:20
double ** dtmp
Definition: bslv.h:32
Mixed-precision bsr matrix.
Definition: bsr.h:12
Preconditioner struct.
Definition: prec.h:14