deal.II version GIT relicensing-6839-g338455934c 2026-10-02 12:10:01+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
Portable::MatrixFree< dim, Number >::DoFInfo Struct Reference

Detailed Description

template<int dim, typename Number = double>
struct Portable::MatrixFree< dim, Number >::DoFInfo

Store data that is specific to each DoFHandler.

Definition at line 934 of file portable_matrix_free.h.

Public Attributes

types::global_dof_index n_dofs
 
::internal::MatrixFreeFunctions::ElementType element_type
 
unsigned int scratch_pad_size
 
unsigned int fe_degree
 
unsigned int n_components
 
unsigned int scalar_dofs_per_cell
 
unsigned int dofs_per_cell
 
unsigned int n_constrained_dofs
 
std::vector< Kokkos::View< types::global_dof_index **, MemorySpace::Default::kokkos_space > > local_to_global
 
Kokkos::View< types::global_dof_index *, MemorySpace::Default::kokkos_space > constrained_dofs
 
std::vector< Kokkos::View<::internal::MatrixFreeFunctions::ConstraintKinds *, MemorySpace::Default::kokkos_space > > constraint_mask
 
Kokkos::View< Number *, MemorySpace::Default::kokkos_space > shape_values
 
Kokkos::View< Number *, MemorySpace::Default::kokkos_space > shape_gradients
 
Kokkos::View< Number *, MemorySpace::Default::kokkos_space > co_shape_gradients
 
Kokkos::View< Number *, MemorySpace::Default::kokkos_space > constraint_weights
 
const DoFHandler< dim > * dof_handler
 
std::shared_ptr< const Utilities::MPI::Partitioner > partitioner
 

Member Data Documentation

◆ n_dofs

template<int dim, typename Number = double>
types::global_dof_index Portable::MatrixFree< dim, Number >::DoFInfo::n_dofs

Total number of degrees of freedom.

Definition at line 939 of file portable_matrix_free.h.

◆ element_type

template<int dim, typename Number = double>
::internal::MatrixFreeFunctions::ElementType Portable::MatrixFree< dim, Number >::DoFInfo::element_type

Encodes the type of element detected at construction. FEEvaluation will select the most efficient algorithm based on the given element type.

Definition at line 946 of file portable_matrix_free.h.

◆ scratch_pad_size

template<int dim, typename Number = double>
unsigned int Portable::MatrixFree< dim, Number >::DoFInfo::scratch_pad_size

Size of the scratch pad for temporary storage in shared memory.

Definition at line 951 of file portable_matrix_free.h.

◆ fe_degree

template<int dim, typename Number = double>
unsigned int Portable::MatrixFree< dim, Number >::DoFInfo::fe_degree

Degree of the finite element used.

Definition at line 956 of file portable_matrix_free.h.

◆ n_components

template<int dim, typename Number = double>
unsigned int Portable::MatrixFree< dim, Number >::DoFInfo::n_components

Number of components.

Definition at line 961 of file portable_matrix_free.h.

◆ scalar_dofs_per_cell

template<int dim, typename Number = double>
unsigned int Portable::MatrixFree< dim, Number >::DoFInfo::scalar_dofs_per_cell

Number of scalar degrees of freedom per cell.

Definition at line 966 of file portable_matrix_free.h.

◆ dofs_per_cell

template<int dim, typename Number = double>
unsigned int Portable::MatrixFree< dim, Number >::DoFInfo::dofs_per_cell

Number of degrees of freedom per cell.

Definition at line 971 of file portable_matrix_free.h.

◆ n_constrained_dofs

template<int dim, typename Number = double>
unsigned int Portable::MatrixFree< dim, Number >::DoFInfo::n_constrained_dofs

Number of constrained degrees of freedom.

Definition at line 976 of file portable_matrix_free.h.

◆ local_to_global

template<int dim, typename Number = double>
std::vector<Kokkos::View<types::global_dof_index **, MemorySpace::Default::kokkos_space> > Portable::MatrixFree< dim, Number >::DoFInfo::local_to_global

Map the position in the local vector to the position in the global vector.

Definition at line 984 of file portable_matrix_free.h.

◆ constrained_dofs

template<int dim, typename Number = double>
Kokkos::View<types::global_dof_index *, MemorySpace::Default::kokkos_space> Portable::MatrixFree< dim, Number >::DoFInfo::constrained_dofs

Kokkos::View to the constrained degrees of freedom.

Definition at line 991 of file portable_matrix_free.h.

◆ constraint_mask

template<int dim, typename Number = double>
std::vector< Kokkos::View<::internal::MatrixFreeFunctions::ConstraintKinds *, MemorySpace::Default::kokkos_space> > Portable::MatrixFree< dim, Number >::DoFInfo::constraint_mask

Mask deciding where constraints are set on a given cell.

Definition at line 999 of file portable_matrix_free.h.

◆ shape_values

template<int dim, typename Number = double>
Kokkos::View<Number *, MemorySpace::Default::kokkos_space> Portable::MatrixFree< dim, Number >::DoFInfo::shape_values

Values of the shape functions.

Definition at line 1004 of file portable_matrix_free.h.

◆ shape_gradients

template<int dim, typename Number = double>
Kokkos::View<Number *, MemorySpace::Default::kokkos_space> Portable::MatrixFree< dim, Number >::DoFInfo::shape_gradients

Gradients of the shape functions.

Definition at line 1010 of file portable_matrix_free.h.

◆ co_shape_gradients

template<int dim, typename Number = double>
Kokkos::View<Number *, MemorySpace::Default::kokkos_space> Portable::MatrixFree< dim, Number >::DoFInfo::co_shape_gradients

Gradients of the shape functions for collocation methods.

Definition at line 1016 of file portable_matrix_free.h.

◆ constraint_weights

template<int dim, typename Number = double>
Kokkos::View<Number *, MemorySpace::Default::kokkos_space> Portable::MatrixFree< dim, Number >::DoFInfo::constraint_weights

Weights used when resolving hanging nodes.

Definition at line 1022 of file portable_matrix_free.h.

◆ dof_handler

template<int dim, typename Number = double>
const DoFHandler<dim>* Portable::MatrixFree< dim, Number >::DoFInfo::dof_handler

Pointer to the DoFHandler object.

Definition at line 1027 of file portable_matrix_free.h.

◆ partitioner

template<int dim, typename Number = double>
std::shared_ptr<const Utilities::MPI::Partitioner> Portable::MatrixFree< dim, Number >::DoFInfo::partitioner

Shared pointer to a Partitioner for distributed Vectors used in cell_loop. When MPI is not used the pointer is null.

Definition at line 1033 of file portable_matrix_free.h.


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