hyper.deal
Loading...
Searching...
No Matches
hyperdeal::internal::MatrixFreeFunctions::DoFInfo Struct Reference

#include <dof_info.h>

Public Member Functions

std::size_t memory_consumption () const
 

Public Attributes

std::array< std::vector< unsigned char >, 4 > n_vectorization_lanes_filled
 
std::array< std::vector< std::pair< unsigned int, unsigned int > >, 4 > dof_indices_contiguous_ptr
 

Detailed Description

The class that stores the indices of the degrees of freedom for all the cells and faces within the shared-memory domain. As a consequence the index is a pair consisting of:

  • the rank of the process owning the cell (with the shared memory)
  • the offset from the beginning of the array of that rank.

Member Data Documentation

◆ dof_indices_contiguous_ptr

std::array<std::vector<std::pair<unsigned int, unsigned int> >, 4> hyperdeal::internal::MatrixFreeFunctions::DoFInfo::dof_indices_contiguous_ptr

Stores the indices of the degrees of freedom for each face/cell in the shared-memory domain. The first number of the pair is the rank within the shared-memory communicator and the second number is the offset with the corresponding local array.

Note
Faces might be stand alone or might be embedded into cells: ghost faces vs. faces of cells owned by a process in the same shared memory domain. The number here gives the starting point of the corresponding primitive. If a face is embedded into a cell additional info is needed from FaceInfo for reading/writing.
(0) FCL (interior); (1) FCL (exterior); (2) cell; (3) ECL (exterior)

◆ n_vectorization_lanes_filled

std::array<std::vector<unsigned char>, 4> hyperdeal::internal::MatrixFreeFunctions::DoFInfo::n_vectorization_lanes_filled

Caches the number of indices filled when vectorizing.

Note
(0) FCL (interior); (1) FCL (exterior); (2) cell; (3) ECL (exterior - TODO remove should be the same as (2))

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