monolish
0.14.0
MONOlithic LIner equation Solvers for Highly-parallel architecture
|
Go to the documentation of this file.
17 namespace standard_eigen {
34 template <
typename MATRIX,
typename Float>
53 throw std::runtime_error(
"this precond. is not impl.");
57 throw std::runtime_error(
"this precond. is not impl.");
67 std::string
name()
const {
return "monolish::standard_eigen::LOBPCG"; }
85 template <
typename MATRIX,
typename Float>
94 throw std::runtime_error(
"this precond. is not impl.");
98 throw std::runtime_error(
"this precond. is not impl.");
108 std::string
name()
const {
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"
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)
void create_precond(MATRIX &A)