v0.14.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | List of all members
EigenMatrix::GetDiffMatImpl< E, C, T > Struct Template Reference

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

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

Public Types

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

Public Member Functions

 GetDiffMatImpl (E &e, T &t_a)
 
template<int i, int j, int k, int l>
void set (const Number< i > &, const Number< j > &, const Number< k > &, const Number< l > &)
 
template<int j, int k, int l>
void set (const Number< 1 > &, const Number< j > &, const Number< k > &, const Number< l > &)
 
template<int k, int l>
void set (const Number< 1 > &, const Number< 1 > &, const Number< k > &, const Number< l > &)
 
template<int l>
void set (const Number< 1 > &, const Number< 1 > &, const Number< 1 > &, const Number< l > &)
 
void set (const Number< 1 > &, const Number< 1 > &, const Number< 1 > &, const Number< 1 > &)
 

Public Attributes

FirstMatrixDirectiveImpl< E, C > r
 
TtA
 

Detailed Description

template<typename E, typename C, typename T>
struct EigenMatrix::GetDiffMatImpl< E, C, T >

Definition at line 529 of file MatrixFunctionTemplate.hpp.

Member Typedef Documentation

◆ Fun

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

Definition at line 532 of file MatrixFunctionTemplate.hpp.

◆ Number

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

Definition at line 537 of file MatrixFunctionTemplate.hpp.

◆ NumberDim

template<typename E , typename C , typename T >
using EigenMatrix::GetDiffMatImpl< E, C, T >::NumberDim = typename E::NumberDim

Definition at line 535 of file MatrixFunctionTemplate.hpp.

◆ NumberNb

template<typename E , typename C , typename T >
using EigenMatrix::GetDiffMatImpl< E, C, T >::NumberNb = typename E::NumberNb

Definition at line 534 of file MatrixFunctionTemplate.hpp.

◆ Val

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

Definition at line 530 of file MatrixFunctionTemplate.hpp.

◆ Vec

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

Definition at line 531 of file MatrixFunctionTemplate.hpp.

Constructor & Destructor Documentation

◆ GetDiffMatImpl()

template<typename E , typename C , typename T >
EigenMatrix::GetDiffMatImpl< E, C, T >::GetDiffMatImpl ( E e,
T t_a 
)
inline

Definition at line 539 of file MatrixFunctionTemplate.hpp.

539: r(e), tA(t_a) {}
FirstMatrixDirectiveImpl< E, C > r

Member Function Documentation

◆ set() [1/5]

template<typename E , typename C , typename T >
void EigenMatrix::GetDiffMatImpl< E, C, T >::set ( const Number< 1 > &  ,
const Number< 1 > &  ,
const Number< 1 > &  ,
const Number< 1 > &   
)
inline

Definition at line 587 of file MatrixFunctionTemplate.hpp.

588 {
589
590 tA(Number<0>(), Number<0>(), Number<0>(), Number<0>()) =
591 r.eval(NumberDim(), Number<0>(), Number<0>(), Number<0>(), Number<0>());
592 }

◆ set() [2/5]

template<typename E , typename C , typename T >
template<int l>
void EigenMatrix::GetDiffMatImpl< E, C, T >::set ( const Number< 1 > &  ,
const Number< 1 > &  ,
const Number< 1 > &  ,
const Number< l > &   
)
inline

Definition at line 577 of file MatrixFunctionTemplate.hpp.

578 {
579
580 tA(Number<0>(), Number<0>(), Number<0>(), Number<l - 1>()) =
581 r.eval(NumberDim(), Number<0>(), Number<0>(), Number<0>(),
582 Number<l - 1>());
583
584 set(NumberDim(), NumberDim(), Number<l - 1>(), Number<l - 1>());
585 }
void set(const Number< i > &, const Number< j > &, const Number< k > &, const Number< l > &)

◆ set() [3/5]

template<typename E , typename C , typename T >
template<int k, int l>
void EigenMatrix::GetDiffMatImpl< E, C, T >::set ( const Number< 1 > &  ,
const Number< 1 > &  ,
const Number< k > &  ,
const Number< l > &   
)
inline

Definition at line 566 of file MatrixFunctionTemplate.hpp.

567 {
568
569 tA(Number<0>(), Number<0>(), Number<k - 1>(), Number<l - 1>()) =
570 r.eval(NumberDim(), Number<0>(), Number<0>(), Number<k - 1>(),
571 Number<l - 1>());
572
573 set(NumberDim(), NumberDim(), Number<k - 1>(), Number<l>());
574 }

◆ set() [4/5]

template<typename E , typename C , typename T >
template<int j, int k, int l>
void EigenMatrix::GetDiffMatImpl< E, C, T >::set ( const Number< 1 > &  ,
const Number< j > &  ,
const Number< k > &  ,
const Number< l > &   
)
inline

Definition at line 555 of file MatrixFunctionTemplate.hpp.

556 {
557
558 tA(Number<0>(), Number<j - 1>(), Number<k - 1>(), Number<l - 1>()) =
559 r.eval(NumberDim(), Number<0>(), Number<j - 1>(), Number<k - 1>(),
560 Number<l - 1>());
561
562 set(Number<j - 1>(), Number<j - 1>(), Number<k>(), Number<l>());
563 }

◆ set() [5/5]

template<typename E , typename C , typename T >
template<int i, int j, int k, int l>
void EigenMatrix::GetDiffMatImpl< E, C, T >::set ( const Number< i > &  ,
const Number< j > &  ,
const Number< k > &  ,
const Number< l > &   
)
inline

Definition at line 544 of file MatrixFunctionTemplate.hpp.

545 {
546
547 tA(Number<i - 1>(), Number<j - 1>(), Number<k - 1>(), Number<l - 1>()) =
548 r.eval(NumberDim(), Number<i - 1>(), Number<j - 1>(), Number<k - 1>(),
549 Number<l - 1>());
550
551 set(Number<i - 1>(), Number<j>(), Number<k>(), Number<l>());
552 }

Member Data Documentation

◆ r

template<typename E , typename C , typename T >
FirstMatrixDirectiveImpl<E, C> EigenMatrix::GetDiffMatImpl< E, C, T >::r

Definition at line 540 of file MatrixFunctionTemplate.hpp.

◆ tA

template<typename E , typename C , typename T >
T& EigenMatrix::GetDiffMatImpl< E, C, T >::tA

Definition at line 541 of file MatrixFunctionTemplate.hpp.


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