v0.14.0
Public Types | Public Member Functions | Public Attributes | List of all members
EigenMatrix::ReconstructMatImpl< E, C > Struct Template Reference

#include <src/ftensor/src/MatrixFunctionTemplate.hpp>

Collaboration diagram for EigenMatrix::ReconstructMatImpl< E, C >:
[legend]

Public Types

using Val = typename E::Val
 
using Vec = typename E::Vec
 
using Fun = typename E::Fun
 
template<int N>
using Number = FTensor::Number< N >
 

Public Member Functions

 ReconstructMatImpl (E &e)
 
template<int a, int i, int j>
term () const
 
template<int nb, int i, int j>
eval (const Number< nb > &, const Number< i > &, const Number< j > &) const
 
template<int i, int j>
eval (const Number< 1 > &, const Number< i > &, const Number< j > &) const
 

Public Attributes

Ee
 

Detailed Description

template<typename E, typename C>
struct EigenMatrix::ReconstructMatImpl< E, C >

Definition at line 356 of file MatrixFunctionTemplate.hpp.

Member Typedef Documentation

◆ Fun

template<typename E , typename C >
using EigenMatrix::ReconstructMatImpl< E, C >::Fun = typename E::Fun

Definition at line 359 of file MatrixFunctionTemplate.hpp.

◆ Number

template<typename E , typename C >
template<int N>
using EigenMatrix::ReconstructMatImpl< E, C >::Number = FTensor::Number<N>

Definition at line 361 of file MatrixFunctionTemplate.hpp.

◆ Val

template<typename E , typename C >
using EigenMatrix::ReconstructMatImpl< E, C >::Val = typename E::Val

Definition at line 357 of file MatrixFunctionTemplate.hpp.

◆ Vec

template<typename E , typename C >
using EigenMatrix::ReconstructMatImpl< E, C >::Vec = typename E::Vec

Definition at line 358 of file MatrixFunctionTemplate.hpp.

Constructor & Destructor Documentation

◆ ReconstructMatImpl()

template<typename E , typename C >
EigenMatrix::ReconstructMatImpl< E, C >::ReconstructMatImpl ( E e)
inline

Definition at line 363 of file MatrixFunctionTemplate.hpp.

363 : e(e) {}

Member Function Documentation

◆ eval() [1/2]

template<typename E , typename C >
template<int i, int j>
C EigenMatrix::ReconstructMatImpl< E, C >::eval ( const Number< 1 > &  ,
const Number< i > &  ,
const Number< j > &   
) const
inline

Definition at line 378 of file MatrixFunctionTemplate.hpp.

378  {
379  return term<0, i, j>();
380  }

◆ eval() [2/2]

template<typename E , typename C >
template<int nb, int i, int j>
C EigenMatrix::ReconstructMatImpl< E, C >::eval ( const Number< nb > &  ,
const Number< i > &  ,
const Number< j > &   
) const
inline

Definition at line 371 of file MatrixFunctionTemplate.hpp.

372  {
373  return term<nb - 1, i, j>() +
374  eval(Number<nb - 1>(), Number<i>(), Number<j>());
375  }

◆ term()

template<typename E , typename C >
template<int a, int i, int j>
C EigenMatrix::ReconstructMatImpl< E, C >::term ( ) const
inline

Definition at line 366 of file MatrixFunctionTemplate.hpp.

366  {
367  return e.aM[a](Number<i>(), Number<j>()) * e.fVal(a);
368  }

Member Data Documentation

◆ e

template<typename E , typename C >
E& EigenMatrix::ReconstructMatImpl< E, C >::e

Definition at line 364 of file MatrixFunctionTemplate.hpp.


The documentation for this struct was generated from the following file:
EigenMatrix::ReconstructMatImpl::e
E & e
Definition: MatrixFunctionTemplate.hpp:364
EigenMatrix::ReconstructMatImpl::eval
C eval(const Number< nb > &, const Number< i > &, const Number< j > &) const
Definition: MatrixFunctionTemplate.hpp:371
a
constexpr double a
Definition: approx_sphere.cpp:30
EigenMatrix::ReconstructMatImpl::term
C term() const
Definition: MatrixFunctionTemplate.hpp:366
i
FTensor::Index< 'i', SPACE_DIM > i
Definition: hcurl_divergence_operator_2d.cpp:27
j
FTensor::Index< 'j', 3 > j
Definition: matrix_function.cpp:19