34class AdditiveSchwarzPreconditioner :
public PreconditionerBase<typename Operator::value_type>
37 typedef typename PreconditionerBase<typename Operator::value_type>::VectorType VectorType;
39 AdditiveSchwarzPreconditioner(Operator
const & underlying_operator_in,
bool const initialize)
40 : underlying_operator(underlying_operator_in)
54 vmult(VectorType & dst, VectorType
const & src)
const final
57 not this->update_needed,
59 "Additive Schwarz preconditioner can not be applied because it needs to be updated."));
61 underlying_operator.apply_inverse_additive_schwarz_matrices(dst, src);
72 underlying_operator.compute_factorized_additive_schwarz_matrices();
73 this->update_needed =
false;
77 Operator
const & underlying_operator;