Reference documentation for deal.II version GIT relicensing-224-gc660c0d696 2024-03-28 18:40:02+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 Types | Static Public Member Functions | Static Public Attributes | List of all members
Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::SymmetricTensor< 2 > > Struct Template Reference

#include <deal.II/differentiation/ad/ad_helpers.h>

Public Types

template<typename NumberType >
using tensor_type = SymmetricTensor< rank, dim, NumberType >
 
template<typename NumberType >
using value_type = tensor_type< NumberType >
 
template<typename NumberType >
using gradient_type = Tensor< rank+1, dim, NumberType >
 

Static Public Member Functions

static unsigned int first_component (const FEValuesExtractors::SymmetricTensor< 2 > &extractor)
 
static bool symmetric_component (const unsigned int unrolled_index)
 
template<int rank_in>
static TableIndices< ranktable_index_view (const TableIndices< rank_in > &table_indices, const unsigned int column_offset)
 
template<typename IndexType = unsigned int, int rank_in>
static IndexType local_component (const TableIndices< rank_in > &table_indices, const unsigned int column_offset)
 

Static Public Attributes

static const unsigned int n_components
 
static const unsigned int rank = SymmetricTensor<2, dim>::rank
 

Detailed Description

template<int dim>
struct Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::SymmetricTensor< 2 > >

A helper struct that assists with the extraction of data associated with fields that are defined by FEExtractors. This particular specialization is for rank-2 symmetric tensor fields.

Definition at line 2065 of file ad_helpers.h.

Member Typedef Documentation

◆ tensor_type

template<int dim>
template<typename NumberType >
using Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::SymmetricTensor< 2 > >::tensor_type = SymmetricTensor<rank, dim, NumberType>

The tensor type associated with this field.

Definition at line 2082 of file ad_helpers.h.

◆ value_type

template<int dim>
template<typename NumberType >
using Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::SymmetricTensor< 2 > >::value_type = tensor_type<NumberType>

The value type associated with this field.

Definition at line 2088 of file ad_helpers.h.

◆ gradient_type

template<int dim>
template<typename NumberType >
using Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::SymmetricTensor< 2 > >::gradient_type = Tensor<rank + 1, dim, NumberType>

The gradient type associated with this field.

Definition at line 2094 of file ad_helpers.h.

Member Function Documentation

◆ first_component()

template<int dim>
static unsigned int Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::SymmetricTensor< 2 > >::first_component ( const FEValuesExtractors::SymmetricTensor< 2 > &  extractor)
inlinestatic

Return the first global component of this field.

Definition at line 2100 of file ad_helpers.h.

◆ symmetric_component()

template<int dim>
static bool Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::SymmetricTensor< 2 > >::symmetric_component ( const unsigned int  unrolled_index)
inlinestatic

Return a flag that indicates if the input unrolled_index corresponds to a symmetric component of the field.

For a rank-2 symmetric tensor field, each of the off-diagonal components have a symmetric counterpart, while the diagonal components do not.

Definition at line 2114 of file ad_helpers.h.

◆ table_index_view()

template<int dim>
template<int rank_in>
static TableIndices< rank > Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::SymmetricTensor< 2 > >::table_index_view ( const TableIndices< rank_in > &  table_indices,
const unsigned int  column_offset 
)
inlinestatic

Return the table indices corresponding to column_offset entry of the input table_indices.

Definition at line 2127 of file ad_helpers.h.

◆ local_component()

template<int dim>
template<typename IndexType = unsigned int, int rank_in>
static IndexType Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::SymmetricTensor< 2 > >::local_component ( const TableIndices< rank_in > &  table_indices,
const unsigned int  column_offset 
)
inlinestatic

Return the local unrolled component corresponding to column_offset entry of the table_indices.

This function computes and returns a local component associated with the extractor's tensor_type from a set of table_indices that are generally associated with a tensor of equal or greater order. In effect, it creates a view of a selected number of indices of the input table, and interprets that subtable's indices as the local index to be returned. Since the table_indices may be of size greater than the extractor's rank, the column_offset specifies the first index of the input table to create the view from.

Definition at line 2153 of file ad_helpers.h.

Member Data Documentation

◆ n_components

template<int dim>
const unsigned int Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::SymmetricTensor< 2 > >::n_components
static
Initial value:

The number of components of the field.

Definition at line 2070 of file ad_helpers.h.

◆ rank

template<int dim>
const unsigned int Differentiation::AD::internal::Extractor< dim, FEValuesExtractors::SymmetricTensor< 2 > >::rank = SymmetricTensor<2, dim>::rank
static

The tensor rank of the field.

Definition at line 2076 of file ad_helpers.h.


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