Reference documentation for deal.II version Git 3ff8e288d2 2020-02-20 17:30:00 +0100
\(\newcommand{\vcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\vcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Public Member Functions | Private Member Functions | List of all members
CUDAWrappers::internal::HangingNodes< dim > Class Template Reference

#include <deal.II/matrix_free/cuda_hanging_nodes_internal.h>

Public Member Functions

 HangingNodes (unsigned int fe_degree, const DoFHandler< dim > &dof_handler, const std::vector< unsigned int > &lexicographic_mapping)
 
template<typename CellIterator >
void setup_constraints (std::vector< types::global_dof_index > &dof_indices, const CellIterator &cell, const std::shared_ptr< const Utilities::MPI::Partitioner > &partitioner, unsigned int &mask) const
 

Private Member Functions

void setup_line_to_cell ()
 

Detailed Description

template<int dim>
class CUDAWrappers::internal::HangingNodes< dim >

This class creates the mask used in the treatment of hanging nodes in CUDAWrappers::MatrixFree. The implementation of this class is explained in Section 3 of Matrix-Free Finite-Element Computations On Graphics Processors With Adaptively Refined Unstructured Meshes by Karl Ljungkvist, SpringSim-HPC, 2017 April 23-26.

Definition at line 46 of file cuda_hanging_nodes_internal.h.

Constructor & Destructor Documentation

◆ HangingNodes()

template<int dim>
CUDAWrappers::internal::HangingNodes< dim >::HangingNodes ( unsigned int  fe_degree,
const DoFHandler< dim > &  dof_handler,
const std::vector< unsigned int > &  lexicographic_mapping 
)
inline

Constructor.

Definition at line 170 of file cuda_hanging_nodes_internal.h.

Member Function Documentation

◆ setup_constraints()

template<int dim>
template<typename CellIterator >
void CUDAWrappers::internal::HangingNodes< dim >::setup_constraints ( std::vector< types::global_dof_index > &  dof_indices,
const CellIterator &  cell,
const std::shared_ptr< const Utilities::MPI::Partitioner > &  partitioner,
unsigned int &  mask 
) const
inline

Compute the value of the constraint mask for a given cell.

Definition at line 271 of file cuda_hanging_nodes_internal.h.

◆ setup_line_to_cell()

template<int dim>
void CUDAWrappers::internal::HangingNodes< dim >::setup_line_to_cell ( )
inlineprivate

Set up line-to-cell mapping for edge constraints in 3D.

Definition at line 190 of file cuda_hanging_nodes_internal.h.


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