16#ifndef dealii_mg_tools_h
17#define dealii_mg_tools_h
34template <
int dim,
int spacedim>
57 template <
int dim,
int spacedim>
61 const unsigned int level,
62 std::vector<unsigned int> & row_lengths,
69 template <
int dim,
int spacedim>
72 const unsigned int level,
73 std::vector<unsigned int> & row_lengths,
89 template <
int dim,
int spacedim,
typename number =
double>
94 const unsigned int level,
96 const bool keep_constrained_dofs =
true);
106 template <
int dim,
int spacedim,
typename number =
double>
111 const unsigned int level,
113 const bool keep_constrained_dofs =
true);
122 template <
int dim,
int spacedim>
126 const unsigned int level);
136 template <
int dim,
int spacedim>
140 const unsigned int level,
152 template <
int dim,
int spacedim>
157 const unsigned int level,
167 template <
int dim,
int spacedim>
172 const unsigned int level);
181 template <
int dim,
int spacedim>
185 std::vector<std::vector<types::global_dof_index>> &dofs_per_block,
186 std::vector<unsigned int> target_block = {});
195 template <
int dim,
int spacedim>
199 std::vector<std::vector<types::global_dof_index>> &result,
200 const bool only_once =
false,
201 std::vector<unsigned int> target_component = {});
222 template <
int dim,
int spacedim>
228 std::vector<std::set<types::global_dof_index>> &boundary_indices,
238 template <
int dim,
int spacedim>
243 std::vector<IndexSet> &boundary_indices,
253 template <
int dim,
int spacedim>
256 const std::set<types::boundary_id> &boundary_ids,
257 std::vector<IndexSet> & boundary_indices,
265 template <
int dim,
int spacedim>
268 std::vector<IndexSet> & interface_dofs);
279 template <
int dim,
int spacedim>
293 template <
int dim,
int spacedim>
294 std::vector<types::global_dof_index>
304 template <
int dim,
int spacedim>
305 std::vector<types::global_dof_index>
328 template <
int dim,
int spacedim>
337 template <
int dim,
int spacedim>
350 template <
int dim,
int spacedim>
351 std::vector<std::pair<types::global_dof_index, types::global_dof_index>>
362 template <
int dim,
int spacedim>
363 std::vector<std::pair<types::global_dof_index, types::global_dof_index>>
379 template <
int dim,
int spacedim>
388 template <
int dim,
int spacedim>
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_CXX20_REQUIRES(condition)
#define DEAL_II_NAMESPACE_CLOSE
const ::Triangulation< dim, spacedim > & tria