DUNE-ACFEM (unstable)

Dune::ACFem::Tensor::TensorResult< T > Class Template Reference

The wrapper class wrapped around each expression result. More...

+ Collaboration diagram for Dune::ACFem::Tensor::TensorResult< T >:

Public Member Functions

template<class... Dims, std::enable_if_t<(sizeof...(Dims)==rank &&IsIntegralPack< Dims... >::value), int > = 0>
decltype(auto) operator() (Dims... indices)
 Run-time dynamic access to components.
 
template<class... Dims, std::enable_if_t<(sizeof...(Dims)==rank &&IsIntegralPack< Dims... >::value), int > = 0>
decltype(auto) operator() (Dims... indices) const
 Run-time dynamic access to components.
 
template<std::size_t... Indices, std::enable_if_t< sizeof...(Indices)==rank, int > = 0>
decltype(auto) constexpr operator() (Seq< Indices... >)
 Compile-time constant access from index-sequence.
 
template<std::size_t... Indices, std::enable_if_t< sizeof...(Indices)==rank, int > = 0>
decltype(auto) constexpr operator() (Seq< Indices... >) const
 Compile-time constant access from index-sequence.
 
template<std::size_t I>
decltype(auto) operator[] (IndexConstant< I > i) &&
 Implement kind of a nested vector interface via operator[].
 
template<std::size_t I>
decltype(auto) operator[] (IndexConstant< I > i) &
 Implement kind of a nested vector interface via operator[].
 
template<std::size_t I>
decltype(auto) operator[] (IndexConstant< I > i) const &
 Implement kind of a nested vector interface via operator[].
 

Static Public Member Functions

template<std::size_t... Indices, class Pos = MakeIndexSequence<sizeof...(Indices)>>
static constexpr bool isZero (Seq< Indices... >=Seq< Indices... >{}, Pos=Pos{})
 Compile-time constant access from index-sequence.
 

Detailed Description

template<class T>
class Dune::ACFem::Tensor::TensorResult< T >

The wrapper class wrapped around each expression result.

The task of the wrapper class is to separate interfacing to the outside world from the actual tensor framework.

For the particular Dune case one of the major tasks of the wrapper is to provide the back-type-cast to Dune::FieldVector resp. Dune::FieldMatrix.

The wrapper by itself is an implementation of the tensor concept by forwarding all tensor functionality to the wrapped object.

SFINAE not needed. Remove.


The documentation for this class was generated from the following files:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.80.0 (May 16, 22:29, 2024)