monolish
0.14.0
MONOlithic LIner equation Solvers for Highly-parallel architecture
|
QR solver class (Dense, GPU only now). can use set_tol(), get_tol(), set_reorder(), get_singularity(). More...
#include <monolish_equation.hpp>
Public Member Functions | |
void | apply_precond (const vector< Float > &r, vector< Float > &z) |
void | create_precond (MATRIX &A) |
int | get_sigularity () |
-1 if A is symmetric postive definite. default reorder algorithm is csrmetisnd More... | |
std::string | name () const |
get solver name "monolish::equation::QR" More... | |
void | set_reorder (int r) |
0: no ordering 1: symrcm, 2: symamd, 3: csrmetisnd is used to reduce zero fill-in. More... | |
int | solve (MATRIX &A, vector< Float > &x, vector< Float > &b) |
solve Ax=b More... | |
Public Member Functions inherited from monolish::solver::solver< MATRIX, Float > | |
initvec_scheme | get_initvec_scheme () const |
get handling scheme of initial vector handling More... | |
int | get_lib () const |
get library option More... | |
size_t | get_maxiter () const |
get maxiter More... | |
size_t | get_miniter () const |
get miniter More... | |
bool | get_print_rhistory () const |
get print rhistory status More... | |
size_t | get_residual_method () const |
get residual method(default=0) More... | |
double | get_tol () const |
get tolerance More... | |
template<class PRECOND > | |
void | set_apply_precond (PRECOND &p) |
set precondition apply fucntion More... | |
template<class PRECOND > | |
void | set_create_precond (PRECOND &p) |
set precondition create fucntion More... | |
void | set_initvec_scheme (initvec_scheme scheme) |
set how to handle initial vector More... | |
void | set_lib (int l) |
set library option (to change library, monolish, cusolver, etc.) More... | |
void | set_maxiter (size_t max) |
set max iter. (default = SIZE_MAX) More... | |
void | set_miniter (size_t min) |
set min iter. (default = 0) More... | |
void | set_print_rhistory (bool flag) |
print rhistory to standart out true/false. (default = false) More... | |
void | set_residual_method (size_t r) |
set residual method (default=0) More... | |
void | set_rhistory_filename (std::string file) |
rhistory filename More... | |
void | set_tol (double t) |
set tolerance (default:1.0e-8) More... | |
solver () | |
create solver class More... | |
~solver () | |
delete solver class More... | |
Private Member Functions | |
int | cusolver_QR (MATRIX &A, vector< double > &x, vector< double > &b) |
int | cusolver_QR (MATRIX &A, vector< float > &x, vector< float > &b) |
int | cusolver_QR (matrix::CRS< double > &A, vector< double > &x, vector< double > &b) |
int | cusolver_QR (matrix::CRS< float > &A, vector< float > &x, vector< float > &b) |
Private Attributes | |
int | lib = 1 |
int | reorder = 3 |
int | singularity |
Additional Inherited Members | |
Protected Member Functions inherited from monolish::solver::solver< MATRIX, Float > | |
Float | get_residual (vector< Float > &x) |
Protected Attributes inherited from monolish::solver::solver< MATRIX, Float > | |
initvec_scheme | initvecscheme = initvec_scheme::RANDOM |
int | lib = 0 |
size_t | maxiter = SIZE_MAX |
size_t | miniter = 0 |
precondition< MATRIX, Float > | precond |
bool | print_rhistory = false |
size_t | resid_method = 0 |
std::string | rhistory_file |
std::ostream * | rhistory_stream |
double | tol = 1.0e-8 |
QR solver class (Dense, GPU only now). can use set_tol(), get_tol(), set_reorder(), get_singularity().
Definition at line 248 of file monolish_equation.hpp.
|
inline |
Definition at line 276 of file monolish_equation.hpp.
|
inline |
Definition at line 273 of file monolish_equation.hpp.
|
private |
|
private |
|
private |
|
private |
|
inline |
-1 if A is symmetric postive definite. default reorder algorithm is csrmetisnd
Definition at line 267 of file monolish_equation.hpp.
|
inline |
get solver name "monolish::equation::QR"
Definition at line 287 of file monolish_equation.hpp.
|
inline |
0: no ordering 1: symrcm, 2: symamd, 3: csrmetisnd is used to reduce zero fill-in.
Definition at line 261 of file monolish_equation.hpp.
template int monolish::equation::QR< MATRIX, Float >::solve | ( | MATRIX & | A, |
vector< Float > & | x, | ||
vector< Float > & | b | ||
) |
|
private |
Definition at line 250 of file monolish_equation.hpp.
|
private |
Definition at line 254 of file monolish_equation.hpp.
|
private |
Definition at line 253 of file monolish_equation.hpp.