17 #ifndef dealii__mg_transfer_internal_h 18 #define dealii__mg_transfer_internal_h 20 #include <deal.II/base/mg_level_object.h> 21 #include <deal.II/dofs/dof_handler.h> 22 #include <deal.II/lac/la_parallel_vector.h> 23 #include <deal.II/multigrid/mg_constrained_dofs.h> 25 DEAL_II_NAMESPACE_OPEN
36 template <
int dim,
int spacedim>
37 void fill_copy_indices(const ::DoFHandler<dim,spacedim> &mg_dof,
39 std::vector<std::vector<std::pair<types::global_dof_index, types::global_dof_index> > > ©_indices,
40 std::vector<std::vector<std::pair<types::global_dof_index, types::global_dof_index> > > ©_indices_global_mine,
41 std::vector<std::vector<std::pair<types::global_dof_index, types::global_dof_index> > > ©_indices_level_mine);
52 compute_shift_within_children(
const unsigned int child,
53 const unsigned int fe_shift_1d,
54 const unsigned int fe_degree);
61 template <
typename Number>
107 template <
int dim,
typename Number>
108 void setup_transfer(const ::DoFHandler<dim> &mg_dof,
111 std::vector<std::vector<unsigned int> > &level_dof_indices,
112 std::vector<std::vector<std::pair<unsigned int,unsigned int> > > &parent_child_connect,
113 std::vector<unsigned int> &n_owned_level_cells,
114 std::vector<std::vector<std::vector<unsigned short> > > &dirichlet_indices,
115 std::vector<std::vector<Number> > &weights_on_refined,
116 std::vector<std::vector<std::pair<unsigned int, unsigned int> > > ©_indices_global_mine,
122 DEAL_II_NAMESPACE_CLOSE
unsigned int n_components
bool element_is_continuous
std::vector< Number > prolongation_matrix_1d
unsigned int n_child_cell_dofs
std::vector< unsigned int > lexicographic_numbering