Loading [MathJax]/extensions/TeX/newcommand.js
 Reference documentation for deal.II version 9.4.1
\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}} \newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=} \newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]} \newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | List of all members
MGTwoLevelTransfer< dim, VectorType > Class Template Reference

#include <deal.II/multigrid/mg_transfer_global_coarsening.h>

Public Member Functions

void prolongate_and_add (VectorType &dst, const VectorType &src) const
 
void restrict_and_add (VectorType &dst, const VectorType &src) const
 
void interpolate (VectorType &dst, const VectorType &src) const
 
void enable_inplace_operations_if_possible (const std::shared_ptr< const Utilities::MPI::Partitioner > &partitioner_coarse, const std::shared_ptr< const Utilities::MPI::Partitioner > &partitioner_fine)
 
std::size_t memory_consumption () const
 

Detailed Description

template<int dim, typename VectorType>
class MGTwoLevelTransfer< dim, VectorType >

Class for transfer between two multigrid levels for p- or global coarsening.

Definition at line 160 of file mg_transfer_global_coarsening.h.

Member Function Documentation

◆ prolongate_and_add()

template<int dim, typename VectorType >
void MGTwoLevelTransfer< dim, VectorType >::prolongate_and_add ( VectorType &  dst,
const VectorType &  src 
) const

Perform prolongation.

◆ restrict_and_add()

template<int dim, typename VectorType >
void MGTwoLevelTransfer< dim, VectorType >::restrict_and_add ( VectorType &  dst,
const VectorType &  src 
) const

Perform restriction.

◆ interpolate()

template<int dim, typename VectorType >
void MGTwoLevelTransfer< dim, VectorType >::interpolate ( VectorType &  dst,
const VectorType &  src 
) const

Perform interpolation of a solution vector from the fine level to the coarse level. This function is different from restriction, where a weighted residual is transferred to a coarser level (transposition of prolongation matrix).

◆ enable_inplace_operations_if_possible()

template<int dim, typename VectorType >
void MGTwoLevelTransfer< dim, VectorType >::enable_inplace_operations_if_possible ( const std::shared_ptr< const Utilities::MPI::Partitioner > &  partitioner_coarse,
const std::shared_ptr< const Utilities::MPI::Partitioner > &  partitioner_fine 
)

Enable inplace vector operations if external and internal vectors are compatible.

◆ memory_consumption()

template<int dim, typename VectorType >
std::size_t MGTwoLevelTransfer< dim, VectorType >::memory_consumption ( ) const

Return the memory consumption of the allocated memory in this class.


The documentation for this class was generated from the following file: