deal.II version GIT relicensing-2287-g6548a49e0a 2024-12-20 18:30:00+00:00
\(\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\}}\)
Loading...
Searching...
No Matches
Public Attributes | List of all members
MGTwoLevelTransfer< dim, VectorType >::MGTransferScheme Struct Reference

Public Attributes

unsigned int n_coarse_cells
 
unsigned int n_dofs_per_cell_coarse
 
unsigned int n_dofs_per_cell_fine
 
unsigned int degree_coarse
 
unsigned int degree_fine
 
AlignedVector< double > prolongation_matrix
 
AlignedVector< double > restriction_matrix
 
internal::MatrixFreeFunctions::ShapeInfo< double > shape_info_coarse
 

Detailed Description

template<int dim, typename VectorType>
struct MGTwoLevelTransfer< dim, VectorType >::MGTransferScheme

A multigrid transfer scheme. A multrigrid transfer class can have different transfer schemes to enable p-adaptivity (one transfer scheme per polynomial degree pair) and to enable global coarsening (one transfer scheme for transfer between children and parent cells, as well as, one transfer scheme for cells that are not refined).

Definition at line 589 of file mg_transfer_global_coarsening.h.

Member Data Documentation

◆ n_coarse_cells

template<int dim, typename VectorType >
unsigned int MGTwoLevelTransfer< dim, VectorType >::MGTransferScheme::n_coarse_cells

Number of coarse cells.

Definition at line 594 of file mg_transfer_global_coarsening.h.

◆ n_dofs_per_cell_coarse

template<int dim, typename VectorType >
unsigned int MGTwoLevelTransfer< dim, VectorType >::MGTransferScheme::n_dofs_per_cell_coarse

Number of degrees of freedom of a coarse cell.

Note
For tensor-product elements, the value equals n_components * (degree_coarse + 1)^dim.

Definition at line 602 of file mg_transfer_global_coarsening.h.

◆ n_dofs_per_cell_fine

template<int dim, typename VectorType >
unsigned int MGTwoLevelTransfer< dim, VectorType >::MGTransferScheme::n_dofs_per_cell_fine

Number of degrees of freedom of fine cell.

Note
For tensor-product elements, the value equals n_components * (n_dofs_per_cell_fine + 1)^dim.

Definition at line 610 of file mg_transfer_global_coarsening.h.

◆ degree_coarse

template<int dim, typename VectorType >
unsigned int MGTwoLevelTransfer< dim, VectorType >::MGTransferScheme::degree_coarse

Polynomial degree of the finite element of a coarse cell.

Definition at line 615 of file mg_transfer_global_coarsening.h.

◆ degree_fine

template<int dim, typename VectorType >
unsigned int MGTwoLevelTransfer< dim, VectorType >::MGTransferScheme::degree_fine

"Polynomial degree" of the finite element of the union of all children of a coarse cell, i.e., actually degree_fine * 2 + 1 if a cell is refined.

Definition at line 622 of file mg_transfer_global_coarsening.h.

◆ prolongation_matrix

template<int dim, typename VectorType >
AlignedVector<double> MGTwoLevelTransfer< dim, VectorType >::MGTransferScheme::prolongation_matrix

Prolongation matrix used for the prolongate_and_add() and restrict_and_add() functions.

Definition at line 628 of file mg_transfer_global_coarsening.h.

◆ restriction_matrix

template<int dim, typename VectorType >
AlignedVector<double> MGTwoLevelTransfer< dim, VectorType >::MGTransferScheme::restriction_matrix

Restriction matrix used for the interpolate() function.

Definition at line 633 of file mg_transfer_global_coarsening.h.

◆ shape_info_coarse

template<int dim, typename VectorType >
internal::MatrixFreeFunctions::ShapeInfo<double> MGTwoLevelTransfer< dim, VectorType >::MGTransferScheme::shape_info_coarse

ShapeInfo description of the coarse cell. Needed during the fast application of hanging-node constraints.

Definition at line 639 of file mg_transfer_global_coarsening.h.


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