16 #ifndef dealii_dof_handler_policy_h 17 # define dealii_dof_handler_policy_h 21 # include <deal.II/base/config.h> 23 # include <deal.II/base/exceptions.h> 24 # include <deal.II/base/template_constraints.h> 26 # include <deal.II/dofs/dof_renumbering.h> 27 # include <deal.II/dofs/dof_tools.h> 33 DEAL_II_NAMESPACE_OPEN
41 namespace DoFHandlerImplementation
51 struct Implementation;
58 template <
int dim,
int spacedim>
83 virtual std::vector<NumberCache>
93 const std::vector<types::global_dof_index> &new_numbers)
const = 0;
105 const unsigned int level,
106 const std::vector<types::global_dof_index> &new_numbers)
const = 0;
114 template <
class DoFHandlerType>
116 DoFHandlerType::space_dimension>
131 virtual std::vector<NumberCache>
136 renumber_dofs(
const std::vector<types::global_dof_index> &new_numbers)
142 const std::vector<types::global_dof_index>
143 &new_numbers)
const override;
158 template <
class DoFHandlerType>
160 DoFHandlerType::space_dimension>
184 virtual std::vector<NumberCache>
197 renumber_dofs(
const std::vector<types::global_dof_index> &new_numbers)
203 const std::vector<types::global_dof_index>
204 &new_numbers)
const override;
218 template <
class DoFHandlerType>
220 :
public PolicyBase<DoFHandlerType::dimension,
221 DoFHandlerType::space_dimension>
236 virtual std::vector<NumberCache>
241 renumber_dofs(
const std::vector<types::global_dof_index> &new_numbers)
247 const std::vector<types::global_dof_index>
248 &new_numbers)
const override;
262 DEAL_II_NAMESPACE_CLOSE
virtual NumberCache renumber_mg_dofs(const unsigned int level, const std::vector< types::global_dof_index > &new_numbers) const override
virtual NumberCache distribute_dofs() const =0
virtual std::vector< NumberCache > distribute_mg_dofs() const =0
virtual NumberCache renumber_dofs(const std::vector< types::global_dof_index > &new_numbers) const =0
virtual NumberCache distribute_dofs() const override
virtual std::vector< NumberCache > distribute_mg_dofs() const override
virtual std::vector< NumberCache > distribute_mg_dofs() const override
ParallelDistributed(DoFHandlerType &dof_handler)
virtual std::vector< NumberCache > distribute_mg_dofs() const override
virtual NumberCache distribute_dofs() const override
virtual NumberCache distribute_dofs() const override
Sequential(DoFHandlerType &dof_handler)
virtual NumberCache renumber_dofs(const std::vector< types::global_dof_index > &new_numbers) const override
virtual NumberCache renumber_dofs(const std::vector< types::global_dof_index > &new_numbers) const override
virtual NumberCache renumber_mg_dofs(const unsigned int level, const std::vector< types::global_dof_index > &new_numbers) const override
virtual NumberCache renumber_mg_dofs(const unsigned int level, const std::vector< types::global_dof_index > &new_numbers) const =0
virtual NumberCache renumber_mg_dofs(const unsigned int level, const std::vector< types::global_dof_index > &new_numbers) const override
virtual ~PolicyBase()=default
SmartPointer< DoFHandlerType > dof_handler
ParallelShared(DoFHandlerType &dof_handler)
SmartPointer< DoFHandlerType > dof_handler
virtual NumberCache renumber_dofs(const std::vector< types::global_dof_index > &new_numbers) const override
SmartPointer< DoFHandlerType > dof_handler