Reference documentation for deal.II version 9.2.0
|
#include <deal.II/multigrid/mg_transfer_component.h>
Public Member Functions | |
std::size_t | memory_consumption () const |
Protected Member Functions | |
template<int dim, int spacedim> | |
void | build (const DoFHandler< dim, spacedim > &dof_handler) |
template<int dim, int spacedim> | |
void | build_matrices (const DoFHandler< dim, spacedim > &dof, const DoFHandler< dim, spacedim > &mg_dof) |
Static Protected Member Functions | |
static ::ExceptionBase & | ExcMatricesNotBuilt () |
Protected Attributes | |
ComponentMask | component_mask |
ComponentMask | mg_component_mask |
std::vector< unsigned int > | target_component |
std::vector< unsigned int > | mg_target_component |
std::vector< std::vector< types::global_dof_index > > | sizes |
std::vector< types::global_dof_index > | component_start |
std::vector< std::vector< types::global_dof_index > > | mg_component_start |
std::vector< std::shared_ptr< BlockSparseMatrix< double > > > | prolongation_matrices |
std::vector< std::vector< std::pair< types::global_dof_index, unsigned int > > > | copy_to_and_from_indices |
std::vector< std::set< types::global_dof_index > > | boundary_indices |
Private Attributes | |
std::vector< std::shared_ptr< BlockSparsityPattern > > | prolongation_sparsities |
Implementation of matrix generation for component wise multigrid transfer.
Definition at line 63 of file mg_transfer_component.h.
std::size_t MGTransferComponentBase::memory_consumption | ( | ) | const |
Memory used by this object.
Definition at line 149 of file multigrid.cc.
|
protected |
Actually build the prolongation matrices for each level.
This function is only called by derived classes. These can also set the member variables selected_component
and mg_selected_component
member variables to restrict the transfer matrices to certain components. Furthermore, they use target_component
and mg_target_component
for re-ordering and grouping of components.
Definition at line 269 of file mg_transfer_component.cc.
|
protected |
Actually build the prolongation matrices for each level.
This function is only called by derived classes. These can also set the member variables selected_component
and mg_selected_component
member variables to restrict the transfer matrices to certain components. Furthermore, they use target_component
and mg_target_component
for re-ordering and grouping of components.
Definition at line 259 of file mg_transfer_component.cc.
|
protected |
Flag of selected components.
The transfer operators only act on the components having a true
entry here. If renumbering by target_component is used, this refers to the renumbered components.
Definition at line 112 of file mg_transfer_component.h.
|
protected |
Flag of selected components.
The transfer operators only act on the components having a true
entry here. If renumbering by mg_target_component is used, this refers to the renumbered components.
Definition at line 121 of file mg_transfer_component.h.
|
protected |
Target component of the fine-level vector if renumbering is required.
Definition at line 126 of file mg_transfer_component.h.
|
protected |
Target component if renumbering of level vectors is required.
Definition at line 131 of file mg_transfer_component.h.
|
mutableprotected |
Sizes of the multi-level vectors.
Definition at line 136 of file mg_transfer_component.h.
|
protected |
Start index of each component.
Definition at line 141 of file mg_transfer_component.h.
|
protected |
Start index of each component on all levels.
Definition at line 146 of file mg_transfer_component.h.
|
private |
Definition at line 154 of file mg_transfer_component.h.
|
protected |
The actual prolongation matrix. column indices belong to the dof indices of the mother cell, i.e. the coarse level. while row indices belong to the child cell, i.e. the fine level.
Definition at line 162 of file mg_transfer_component.h.
|
protected |
This variable holds the mapping for the copy_to/from_mg
-functions. The data is first the global index, then the level index.
Definition at line 169 of file mg_transfer_component.h.
|
protected |
Store the boundary_indices. These are needed for the boundary values in the restriction matrix.
Definition at line 175 of file mg_transfer_component.h.