15#ifndef dealii_mg_tools_h
16#define dealii_mg_tools_h
33template <
int dim,
int spacedim>
56 template <
int dim,
int spacedim>
60 const unsigned int level,
61 std::vector<unsigned int> &row_lengths,
68 template <
int dim,
int spacedim>
71 const unsigned int level,
72 std::vector<unsigned int> &row_lengths,
88 template <
int dim,
int spacedim,
typename number =
double>
92 const unsigned int level,
94 const bool keep_constrained_dofs =
true);
104 template <
int dim,
int spacedim,
typename number =
double>
108 const unsigned int level,
110 const bool keep_constrained_dofs =
true);
119 template <
int dim,
int spacedim>
123 const unsigned int level);
133 template <
int dim,
int spacedim>
137 const unsigned int level,
149 template <
int dim,
int spacedim>
154 const unsigned int level,
164 template <
int dim,
int spacedim>
169 const unsigned int level);
178 template <
int dim,
int spacedim>
182 std::vector<std::vector<types::global_dof_index>> &dofs_per_block,
183 std::vector<unsigned int> target_block = {});
192 template <
int dim,
int spacedim>
196 std::vector<std::vector<types::global_dof_index>> &result,
197 const bool only_once =
false,
198 std::vector<unsigned int> target_component = {});
219 template <
int dim,
int spacedim>
225 std::vector<std::set<types::global_dof_index>> &boundary_indices,
235 template <
int dim,
int spacedim>
240 std::vector<IndexSet> &boundary_indices,
250 template <
int dim,
int spacedim>
253 const std::set<types::boundary_id> &boundary_ids,
254 std::vector<IndexSet> &boundary_indices,
262 template <
int dim,
int spacedim>
265 std::vector<IndexSet> &interface_dofs);
276 template <
int dim,
int spacedim>
290 template <
int dim,
int spacedim>
291 std::vector<types::global_dof_index>
301 template <
int dim,
int spacedim>
302 std::vector<types::global_dof_index>
325 template <
int dim,
int spacedim>
334 template <
int dim,
int spacedim>
347 template <
int dim,
int spacedim>
348 std::vector<std::pair<types::global_dof_index, types::global_dof_index>>
359 template <
int dim,
int spacedim>
360 std::vector<std::pair<types::global_dof_index, types::global_dof_index>>
376 template <
int dim,
int spacedim>
385 template <
int dim,
int spacedim>
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_CXX20_REQUIRES(condition)
#define DEAL_II_NAMESPACE_CLOSE