16 #ifndef dealii__mg_transfer_matrix_free_h 17 #define dealii__mg_transfer_matrix_free_h 19 #include <deal.II/base/config.h> 21 #include <deal.II/lac/parallel_vector.h> 22 #include <deal.II/multigrid/mg_base.h> 23 #include <deal.II/multigrid/mg_constrained_dofs.h> 24 #include <deal.II/base/mg_level_object.h> 25 #include <deal.II/multigrid/mg_transfer.h> 26 #include <deal.II/matrix_free/shape_info.h> 28 #include <deal.II/dofs/dof_handler.h> 31 DEAL_II_NAMESPACE_OPEN
52 template <
int dim,
typename Number>
99 virtual void prolongate (
const unsigned int to_level,
217 template <
int degree>
225 template <
int degree>
235 DEAL_II_NAMESPACE_CLOSE
DeclException0(ExcNoProlongation)
std::vector< unsigned int > n_owned_level_cells
AlignedVector< VectorizedArray< Number > > evaluation_data
unsigned int n_components
std::size_t memory_consumption() const
std::vector< std::vector< std::vector< unsigned short > > > dirichlet_indices
SmartPointer< const MGConstrainedDoFs, MGLevelGlobalTransfer< parallel::distributed::Vector< Number > > > mg_constrained_dofs
virtual void restrict_and_add(const unsigned int from_level, parallel::distributed::Vector< Number > &dst, const parallel::distributed::Vector< Number > &src) const
std::vector< std::vector< std::pair< unsigned int, unsigned int > > > parent_child_connect
std::vector< AlignedVector< VectorizedArray< Number > > > weights_on_refined
bool element_is_continuous
virtual ~MGTransferMatrixFree()
std::vector< std::vector< unsigned int > > level_dof_indices
virtual void prolongate(const unsigned int to_level, parallel::distributed::Vector< Number > &dst, const parallel::distributed::Vector< Number > &src) const
void do_prolongate_add(const unsigned int to_level, parallel::distributed::Vector< Number > &dst, const parallel::distributed::Vector< Number > &src) const
unsigned int n_child_cell_dofs
internal::MatrixFreeFunctions::ShapeInfo< Number > shape_info
void do_restrict_add(const unsigned int from_level, parallel::distributed::Vector< Number > &dst, const parallel::distributed::Vector< Number > &src) const
void initialize_constraints(const MGConstrainedDoFs &mg_constrained_dofs)
void build(const DoFHandler< dim, dim > &mg_dof)