monolish
MONOlithic LInear equation Solvers for Highly-parallel architecture
|
Go to the documentation of this file.
28 template <
typename MATRIX,
typename Float>
48 throw std::runtime_error(
"this precond. is not impl.");
52 throw std::runtime_error(
"this precond. is not impl.");
62 [[nodiscard]] std::string
name()
const {
63 return "monolish::standard_eigen::LOBPCG";
73 [[nodiscard]] std::string
solver_name()
const {
return "LOBPCG"; }
91 template <
typename MATRIX,
typename Float>
100 throw std::runtime_error(
"this precond. is not impl.");
104 throw std::runtime_error(
"this precond. is not impl.");
114 [[nodiscard]] std::string
name()
const {
115 return "monolish::standard_eigen::DC";
void apply_precond(const vector< Float > &r, vector< Float > &z)
std::string name() const
get solver name "monolish::standard_eigen::LOBPCG"
int LAPACK_DC(MATRIX &A, vector< Float > &lambda)
void apply_precond(const vector< Float > &r, vector< Float > &z)
int solve(MATRIX &A, vector< Float > &lambda)
int monolish_LOBPCG(MATRIX &A, vector< Float > &lambda, matrix::Dense< Float > &x)
void create_precond(MATRIX &A)
std::string name() const
get solver name "monolish::standard_eigen::DC"
std::string solver_name() const
get solver name "DC"
Devide and Conquer solver.
int solve(MATRIX &A, vector< Float > &lambda, matrix::Dense< Float > &x)
calculate eigenvalues and eigenvectors or A by LOBPCG method(lib=0: monolish)
std::string solver_name() const
get solver name "LOBPCG"
void create_precond(MATRIX &A)
handling eigenvalues and eigenvectors