16 #include <deal.II/lac/matrix_lib.templates.h> 17 #include <deal.II/lac/sparse_matrix.h> 19 DEAL_II_NAMESPACE_OPEN
27 template<
typename number,
typename vnumber>
33 m1(&mat1, typeid(*this).name()),
34 m2(&mat2, typeid(*this).name()),
35 mem(&mem, typeid(*this).name())
41 template<
typename number,
typename vnumber>
44 m1(0, typeid(*this).name()),
45 m2(0, typeid(*this).name()),
46 mem(0, typeid(*this).name())
50 template<
typename number,
typename vnumber>
64 template<
typename number,
typename vnumber>
73 template<
typename number,
typename vnumber>
89 template<
typename number,
typename vnumber>
100 m1->vmult_add (dst, *v);
105 template<
typename number,
typename vnumber>
115 m1->Tvmult (*v, src);
116 m2->Tvmult (dst, *v);
121 template<
typename number,
typename vnumber>
131 m1->Tvmult (*v, src);
132 m2->Tvmult_add (dst, *v);
169 DEAL_II_NAMESPACE_CLOSE
MeanValueFilter(const size_type component=numbers::invalid_size_type)
void vmult(Vector< number > &dst, const Vector< number > &src) const
void filter(Vector< number > &v) const
static::ExceptionBase & ExcNotInitialized()
SmartPointer< VectorMemory< VectorType >, ProductSparseMatrix< number, vector_number > > mem
virtual void vmult_add(VectorType &w, const VectorType &v) const
SmartPointer< const MatrixType, ProductSparseMatrix< number, vector_number > > m1
#define Assert(cond, exc)
static::ExceptionBase & ExcDimensionMismatch(std::size_t arg1, std::size_t arg2)
SmartPointer< const MatrixType, ProductSparseMatrix< number, vector_number > > m2
types::global_dof_index size_type
virtual void vmult(VectorType &w, const VectorType &v) const
virtual void reinit(const size_type N, const bool omit_zeroing_entries=false)
void vmult_add(Vector< number > &dst, const Vector< number > &src) const
virtual void Tvmult(VectorType &w, const VectorType &v) const
virtual void Tvmult_add(VectorType &w, const VectorType &v) const