1 #ifndef _RHEOLEF_PROBLEM_H
2 #define _RHEOLEF_PROBLEM_H
114 #include "rheolef/form.h"
119 template <
class T,
class M = rheo_default_memory_model>
169 template<
class T,
class M>
176 template<
class T,
class M>
185 template<
class T,
class M>
191 _sa.update_value (
a.uu());
193 template<
class T,
class M>
198 _sa.set_preconditioner (
m);
200 template<
class T,
class M>
205 uh.
set_u() = _sa.solve (
lh.u() - _a.ub()*uh.
b());
207 template<
class T,
class M>
211 uh.
set_u() = _sa.trans_solve (
lh.u() - _a.bu().trans_mult(uh.
b()));
213 template<
class T,
class M>
218 return _sa.initialized();
220 template<
class T,
class M>
227 template<
class T,
class M>
field lh(Float epsilon, Float t, const test &v)
const vec< T, M > & b() const
problem_basic(const form_basic< T, M > &a, const solver_option &sopt=solver_option())
void set_preconditioner(const solver_basic< T, M > &)
const solver_basic< T, M > & get_solver() const
void solve(const field_basic< T, M > &lh, field_basic< T, M > &uh) const
void update_value(const form_basic< T, M > &a)
solver_basic< T, M >::determinant_type determinant_type
solver_basic< T, M >::size_type size_type
void trans_solve(const field_basic< T, M > &lh, field_basic< T, M > &uh) const
const solver_option & option() const
determinant_type det() const
see the solver_option page for the full documentation
problem_basic< Float > problem
This file is part of Rheolef.