v0.13.2
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | List of all members
FTensor::T4Ddg_times_equals_generic< A, T, U, Dim01, Dim23 > Class Template Reference

#include <src/ftensor/src/FTensor/Ddg/Ddg_Expr_equals.hpp>

Collaboration diagram for FTensor::T4Ddg_times_equals_generic< A, T, U, Dim01, Dim23 >:
[legend]

Public Member Functions

 T4Ddg_times_equals_generic (Ddg< A, Dim01, Dim23 > &a, const U &b)
 
void operator() ()
 

Private Member Functions

template<int Current_Dim0, int Current_Dim1, int Current_Dim2, int Current_Dim3>
void eval (const Number< Current_Dim0 > &, const Number< Current_Dim1 > &, const Number< Current_Dim2 > &, const Number< Current_Dim3 > &)
 
template<int Current_Dim1, int Current_Dim2, int Current_Dim3>
void eval (const Number< 1 > &, const Number< Current_Dim1 > &, const Number< Current_Dim2 > &, const Number< Current_Dim3 > &)
 
template<int Current_Dim2, int Current_Dim3>
void eval (const Number< 1 > &, const Number< 1 > &, const Number< Current_Dim2 > &, const Number< Current_Dim3 > &)
 
template<int Current_Dim3>
void eval (const Number< 1 > &, const Number< 1 > &, const Number< 1 > &, const Number< Current_Dim3 > &)
 
void eval (const Number< 1 > &, const Number< 1 > &, const Number< 1 > &, const Number< 1 > &)
 

Private Attributes

Ddg< A, Dim01, Dim23 > & iter
 
const U & u
 

Detailed Description

template<class A, class T, class U, int Dim01, int Dim23>
class FTensor::T4Ddg_times_equals_generic< A, T, U, Dim01, Dim23 >

Definition at line 238 of file Ddg_Expr_equals.hpp.

Constructor & Destructor Documentation

◆ T4Ddg_times_equals_generic()

template<class A , class T , class U , int Dim01, int Dim23>
FTensor::T4Ddg_times_equals_generic< A, T, U, Dim01, Dim23 >::T4Ddg_times_equals_generic ( Ddg< A, Dim01, Dim23 > &  a,
const U &  b 
)
inline

Definition at line 283 of file Ddg_Expr_equals.hpp.

284 : iter(a), u(b) {}
constexpr double a

Member Function Documentation

◆ eval() [1/5]

template<class A , class T , class U , int Dim01, int Dim23>
void FTensor::T4Ddg_times_equals_generic< A, T, U, Dim01, Dim23 >::eval ( const Number< 1 > &  ,
const Number< 1 > &  ,
const Number< 1 > &  ,
const Number< 1 > &   
)
inlineprivate

Definition at line 277 of file Ddg_Expr_equals.hpp.

278 {
279 iter(0, 0, 0, 0) *= u;
280 }

◆ eval() [2/5]

template<class A , class T , class U , int Dim01, int Dim23>
template<int Current_Dim3>
void FTensor::T4Ddg_times_equals_generic< A, T, U, Dim01, Dim23 >::eval ( const Number< 1 > &  ,
const Number< 1 > &  ,
const Number< 1 > &  ,
const Number< Current_Dim3 > &   
)
inlineprivate

Definition at line 270 of file Ddg_Expr_equals.hpp.

271 {
272 iter(0, 0, 0, Current_Dim3 - 1) *= u;
273 eval(Number<Dim01>(), Number<Dim01>(), Number<Current_Dim3 - 1>(),
274 Number<Current_Dim3 - 1>());
275 }
void eval(const Number< Current_Dim0 > &, const Number< Current_Dim1 > &, const Number< Current_Dim2 > &, const Number< Current_Dim3 > &)

◆ eval() [3/5]

template<class A , class T , class U , int Dim01, int Dim23>
template<int Current_Dim2, int Current_Dim3>
void FTensor::T4Ddg_times_equals_generic< A, T, U, Dim01, Dim23 >::eval ( const Number< 1 > &  ,
const Number< 1 > &  ,
const Number< Current_Dim2 > &  ,
const Number< Current_Dim3 > &   
)
inlineprivate

Definition at line 262 of file Ddg_Expr_equals.hpp.

263 {
264 iter(0, 0, Current_Dim2 - 1, Current_Dim3 - 1) *= u;
265 eval(Number<Dim01>(), Number<Dim01>(), Number<Current_Dim2 - 1>(),
266 Number<Current_Dim3>());
267 }

◆ eval() [4/5]

template<class A , class T , class U , int Dim01, int Dim23>
template<int Current_Dim1, int Current_Dim2, int Current_Dim3>
void FTensor::T4Ddg_times_equals_generic< A, T, U, Dim01, Dim23 >::eval ( const Number< 1 > &  ,
const Number< Current_Dim1 > &  ,
const Number< Current_Dim2 > &  ,
const Number< Current_Dim3 > &   
)
inlineprivate

Definition at line 254 of file Ddg_Expr_equals.hpp.

255 {
256 iter(0, Current_Dim1 - 1, Current_Dim2 - 1, Current_Dim3 - 1) *= u;
257 eval(Number<Current_Dim1 - 1>(), Number<Current_Dim1 - 1>(),
258 Number<Current_Dim2>(), Number<Current_Dim3>());
259 }

◆ eval() [5/5]

template<class A , class T , class U , int Dim01, int Dim23>
template<int Current_Dim0, int Current_Dim1, int Current_Dim2, int Current_Dim3>
void FTensor::T4Ddg_times_equals_generic< A, T, U, Dim01, Dim23 >::eval ( const Number< Current_Dim0 > &  ,
const Number< Current_Dim1 > &  ,
const Number< Current_Dim2 > &  ,
const Number< Current_Dim3 > &   
)
inlineprivate

Definition at line 245 of file Ddg_Expr_equals.hpp.

246 {
247 iter(Current_Dim0 - 1, Current_Dim1 - 1, Current_Dim2 - 1,
248 Current_Dim3 - 1) *= u;
249 eval(Number<Current_Dim0 - 1>(), Number<Current_Dim1>(),
250 Number<Current_Dim2>(), Number<Current_Dim3>());
251 }

◆ operator()()

template<class A , class T , class U , int Dim01, int Dim23>
void FTensor::T4Ddg_times_equals_generic< A, T, U, Dim01, Dim23 >::operator() ( )
inline

Definition at line 286 of file Ddg_Expr_equals.hpp.

286 {
287 eval(Number<Dim01>(), Number<Dim01>(), Number<Dim23>(), Number<Dim23>());
288 }

Member Data Documentation

◆ iter

template<class A , class T , class U , int Dim01, int Dim23>
Ddg<A, Dim01, Dim23>& FTensor::T4Ddg_times_equals_generic< A, T, U, Dim01, Dim23 >::iter
private

Definition at line 240 of file Ddg_Expr_equals.hpp.

◆ u

template<class A , class T , class U , int Dim01, int Dim23>
const U& FTensor::T4Ddg_times_equals_generic< A, T, U, Dim01, Dim23 >::u
private

Definition at line 241 of file Ddg_Expr_equals.hpp.


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