an efficient C++ finite element environment
|
|
Go to the documentation of this file. 1 #ifndef _RHEOLEF_ILUT_H
2 #define _RHEOLEF_ILUT_H
86 #include "rheolef/solver.h"
87 #ifdef _RHEOLEF_HAVE_EIGEN
88 #pragma GCC diagnostic push
89 #pragma GCC diagnostic ignored "-Weffc++"
90 #include <Eigen/Sparse>
91 #pragma GCC diagnostic pop
97 template<
class T,
class M>
111 bool good()
const {
return true; }
129 template<
class T,
class M>
134 _fill_factor(fill_factor),
140 template<
class T,
class M>
145 _fill_factor(x._fill_factor),
146 _drop_tol(x._drop_tol),
152 template <
class T,
class M>
154 solver_abstract_rep<T,M>*
158 return new_macro (rep(*
this));
164 template <
class T,
class M>
167 size_t fill_factor = 10,
171 template <
class T,
class M>
177 p.solver_basic<
T,
M>::base::operator= (new_macro(rep(
a,fill_factor,drop_tol)));
182 #endif // _RHEOLEF_HAVE_EIGEN
183 #endif // _RHEOLEF_ILUT_H
Eigen::IncompleteLUT< T > _ilut_a
solver_ilut_rep(const csr< T, M > &a, size_type fill_factor, T drop_tol)
base::size_type size_type
see the vec page for the full documentation
solver_ilut_rep(const solver_ilut_rep &)
void update_values(const csr< T, M > &a)
see the csr page for the full documentation
vec< T, M > solve(const vec< T, M > &rhs) const
base::determinant_type determinant_type
This file is part of Rheolef.
csr< T, M >::size_type size_type
solver_basic< T, M > ilut(const csr< T, M > &a, size_t fill_factor=10, T drop_tol=1e3 *std::numeric_limits< T >::epsilon())
vec< T, M > trans_solve(const vec< T, M > &rhs) const
see the solver_option page for the full documentation
solver_abstract_rep< T, M > * clone() const
solver_abstract_rep< T, M > base