8#include <kernel/lafem/dense_vector_blocked.hpp> 
   19    template<
typename DT_, 
typename IT_, 
int BlockSize_>
 
   33      template <
typename DT2_ = DT_, 
typename IT2_ = IT_, 
int BlockSize2_ = BlockSize_>
 
   37      template <
typename DataType2_, 
typename IndexType2_, 
int BS2_>
 
  119          _vec_prim = std::forward<VectorType>(other._vec_prim);
 
  120          _vec_dual = std::forward<VectorType>(other._vec_dual);
 
  154      template<
typename DT2_, 
typename IT2_, 
int BlockSize2_>
 
  293      template<
typename MT_>
 
#define XASSERTM(expr, msg)
Assertion macro definition with custom message.
bool empty() const
Checks whether the container is empty.
virtual void clear()
Free all allocated arrays.
Blocked Dense data vector class template.
void convert(const DenseVectorBlocked< DT2_, IT2_, BlockSize_ > &other)
Conversion method.
ValueType dot_blocked(const DenseVectorBlocked &x) const
Calculate .
DenseVectorBlocked clone(CloneMode clone_mode=CloneMode::Deep) const
Clone operation.
IT_ IndexType
Our indextype.
DT_ DataType
Our datatype.
void axpy_blocked(const DenseVectorBlocked &x, const ValueType alpha)
Calculate .
Mean Filter Blocked class template.
MeanFilterBlocked(VectorType &&vec_prim, VectorType &&vec_dual, ValueType sol_mean, ValueType volume)
Constructor.
void filter_def(VectorType &vector) const
Applies the filter onto a defect vector.
void filter_cor(VectorType &vector) const
Applies the filter onto a correction vector.
void filter_mat(MT_ &matrix) const
Applies the filter onto a system matrix.
MeanFilterBlocked(VectorType &&vec_prim, VectorType &&vec_dual, ValueType sol_mean=ValueType(0))
Constructor.
void filter_sol(VectorType &vector) const
Applies the filter onto the solution vector.
ValueType _sol_mean
desired solution vector mean
void clear()
Clears this filter.
VectorType::ValueType ValueType
value-type typedef
void clone(const MeanFilterBlocked &other, CloneMode clone_mode=CloneMode::Deep)
Clones data from another MeanFilterBlocked.
void convert(const MeanFilterBlocked< DT2_, IT2_, BlockSize2_ > &other)
Conversion method.
VectorType::IndexType IndexType
index-type typedef
void filter_rhs(VectorType &vector) const
Applies the filter onto the right-hand-side vector.
MeanFilterBlocked clone(CloneMode clone_mode=CloneMode::Deep) const
Creates a clone of itself.
DenseVectorBlocked< DT_, IT_, BlockSize_ > VectorType
vector-type typedef
MeanFilterBlocked(MeanFilterBlocked &&other)
move ctor
VectorType::DataType DataType
data-type typedef
VectorType _vec_dual
dual weighting vector
VectorType _vec_prim
primal weighting vector
MeanFilterBlocked & operator=(MeanFilterBlocked &&other)
move-assign operator
ValueType _volume
weight volume
virtual ~MeanFilterBlocked()
virtual destructor
Tiny Vector class template.
static constexpr int n
the length of the vector
CUDA_HOST_DEVICE DataType norm_euclid_sqr() const
Computes the squared euclid norm of this vector.