16 #ifndef dealii_mg_transfer_block_h 17 #define dealii_mg_transfer_block_h 41 template <
int dim,
int spacedim>
90 template <
int dim,
int spacedim>
103 template <
int dim,
int spacedim>
136 mutable std::vector<std::vector<types::global_dof_index>>
sizes;
170 std::vector<std::vector<std::vector<std::pair<unsigned int, unsigned int>>>>
200 template <
typename number>
220 initialize(
const std::vector<number> & factors,
229 template <
int dim,
int spacedim>
232 const std::vector<bool> &
selected);
242 template <
int dim,
int spacedim>
246 const std::vector<bool> & selected);
249 prolongate(
const unsigned int to_level,
254 restrict_and_add(
const unsigned int from_level,
269 template <
int dim,
typename number2,
int spacedim>
281 template <
int dim,
typename number2,
int spacedim>
292 template <
int dim,
typename number2,
int spacedim>
329 template <
typename number>
360 template <
int dim,
int spacedim>
377 template <
int dim,
int spacedim>
381 unsigned int selected);
387 select(
const unsigned int block);
390 prolongate(
const unsigned int to_level,
395 restrict_and_add(
const unsigned int from_level,
405 template <
int dim,
typename number2,
int spacedim>
409 const Vector<number2> & src)
const;
417 template <
int dim,
typename number2,
int spacedim>
420 Vector<number2> & dst,
428 template <
int dim,
typename number2,
int spacedim>
431 Vector<number2> & dst,
441 template <
int dim,
typename number2,
int spacedim>
453 template <
int dim,
typename number2,
int spacedim>
464 template <
int dim,
typename number2,
int spacedim>
480 template <
int dim,
class OutVector,
int spacedim>
485 const unsigned int offset)
const;
490 template <
int dim,
class OutVector,
int spacedim>
495 const unsigned int offset)
const;
500 template <
int dim,
class InVector,
int spacedim>
504 const InVector & src,
505 const unsigned int offset)
const;
515 template <
typename number>
519 selected_block = block;
void build_matrices(const DoFHandler< dim, spacedim > &dof, const DoFHandler< dim, spacedim > &mg_dof)
std::size_t memory_consumption() const
std::vector< types::global_dof_index > block_start
SmartPointer< const MGConstrainedDoFs, MGTransferBlockBase > mg_constrained_dofs
std::vector< std::vector< types::global_dof_index > > sizes
std::vector< std::shared_ptr< BlockSparseMatrix< double > > > prolongation_matrices
#define DeclException0(Exception0)
void build(const DoFHandler< dim, spacedim > &dof_handler)
#define DEAL_II_NAMESPACE_CLOSE
std::vector< std::shared_ptr< BlockSparsityPattern > > prolongation_sparsities
void select(const unsigned int block)
std::vector< std::vector< std::vector< std::pair< unsigned int, unsigned int > > > > copy_indices
std::vector< unsigned int > mg_block
static ::ExceptionBase & ExcMatricesNotBuilt()
std::vector< std::vector< types::global_dof_index > > mg_block_start
#define DEAL_II_NAMESPACE_OPEN
SmartPointer< VectorMemory< Vector< number > >, MGTransferBlock< number > > memory
std::vector< number > factors
#define DEAL_II_DEPRECATED
std::vector< bool > selected
unsigned int selected_block