v0.14.0
Public Member Functions | Private Attributes | List of all members
FTensor::interpolate_Tensor1< T, Dim, i > Class Template Reference

#include <src/ftensor/src/FTensor/Tensor1/interpolate_Tensor1.hpp>

Collaboration diagram for FTensor::interpolate_Tensor1< T, Dim, i >:
[legend]

Public Member Functions

promote< T, double >::V operator() (const int N1) const
 
 interpolate_Tensor1 (const Tensor1< T *, Dim > &A, const int Di, const int Dj, const int Dk, const int I0, const int J0, const int K0, const double Distance[3], const double Conjugate[3])
 

Private Attributes

const Tensor1< T *, Dim > & a
 
const int di
 
const int dj
 
const int dk
 
const int i0
 
const int j0
 
const int k0
 
const doubledistance
 
const doubleconjugate
 

Detailed Description

template<class T, int Dim, char i>
class FTensor::interpolate_Tensor1< T, Dim, i >

Definition at line 11 of file interpolate_Tensor1.hpp.

Constructor & Destructor Documentation

◆ interpolate_Tensor1()

template<class T , int Dim, char i>
FTensor::interpolate_Tensor1< T, Dim, i >::interpolate_Tensor1 ( const Tensor1< T *, Dim > &  A,
const int  Di,
const int  Dj,
const int  Dk,
const int  I0,
const int  J0,
const int  K0,
const double  Distance[3],
const double  Conjugate[3] 
)
inline

Definition at line 38 of file interpolate_Tensor1.hpp.

41  : a(A), di(Di), dj(Dj), dk(Dk), i0(I0), j0(J0), k0(K0),
42  distance(Distance), conjugate(Conjugate)
43  {}

Member Function Documentation

◆ operator()()

template<class T , int Dim, char i>
promote<T, double>::V FTensor::interpolate_Tensor1< T, Dim, i >::operator() ( const int  N1) const
inline

Definition at line 18 of file interpolate_Tensor1.hpp.

19  {
20  return conjugate[0] * conjugate[1] * conjugate[2]
21  * (*(a.ptr(N1) + di * i0 + dj * j0 + dk * k0))
22  + distance[0] * conjugate[1] * conjugate[2]
23  * (*(a.ptr(N1) + di * (i0 + 1) + dj * (j0) + dk * (k0)))
24  + conjugate[0] * distance[1] * conjugate[2]
25  * (*(a.ptr(N1) + di * (i0) + dj * (j0 + 1) + dk * (k0)))
26  + distance[0] * distance[1] * conjugate[2]
27  * (*(a.ptr(N1) + di * (i0 + 1) + dj * (j0 + 1) + dk * (k0)))
28  + conjugate[0] * conjugate[1] * distance[2]
29  * (*(a.ptr(N1) + di * (i0) + dj * (j0) + dk * (k0 + 1)))
30  + distance[0] * conjugate[1] * distance[2]
31  * (*(a.ptr(N1) + di * (i0 + 1) + dj * (j0) + dk * (k0 + 1)))
32  + conjugate[0] * distance[1] * distance[2]
33  * (*(a.ptr(N1) + di * (i0) + dj * (j0 + 1) + dk * (k0 + 1)))
34  + distance[0] * distance[1] * distance[2]
35  * (*(a.ptr(N1) + di * (i0 + 1) + dj * (j0 + 1)
36  + dk * (k0 + 1)));
37  }

Member Data Documentation

◆ a

template<class T , int Dim, char i>
const Tensor1<T *, Dim>& FTensor::interpolate_Tensor1< T, Dim, i >::a
private

Definition at line 13 of file interpolate_Tensor1.hpp.

◆ conjugate

template<class T , int Dim, char i>
const double * FTensor::interpolate_Tensor1< T, Dim, i >::conjugate
private

Definition at line 15 of file interpolate_Tensor1.hpp.

◆ di

template<class T , int Dim, char i>
const int FTensor::interpolate_Tensor1< T, Dim, i >::di
private

Definition at line 14 of file interpolate_Tensor1.hpp.

◆ distance

template<class T , int Dim, char i>
const double* FTensor::interpolate_Tensor1< T, Dim, i >::distance
private

Definition at line 15 of file interpolate_Tensor1.hpp.

◆ dj

template<class T , int Dim, char i>
const int FTensor::interpolate_Tensor1< T, Dim, i >::dj
private

Definition at line 14 of file interpolate_Tensor1.hpp.

◆ dk

template<class T , int Dim, char i>
const int FTensor::interpolate_Tensor1< T, Dim, i >::dk
private

Definition at line 14 of file interpolate_Tensor1.hpp.

◆ i0

template<class T , int Dim, char i>
const int FTensor::interpolate_Tensor1< T, Dim, i >::i0
private

Definition at line 14 of file interpolate_Tensor1.hpp.

◆ j0

template<class T , int Dim, char i>
const int FTensor::interpolate_Tensor1< T, Dim, i >::j0
private

Definition at line 14 of file interpolate_Tensor1.hpp.

◆ k0

template<class T , int Dim, char i>
const int FTensor::interpolate_Tensor1< T, Dim, i >::k0
private

Definition at line 14 of file interpolate_Tensor1.hpp.


The documentation for this class was generated from the following file:
FTensor::interpolate_Tensor1::dj
const int dj
Definition: interpolate_Tensor1.hpp:14
A
constexpr AssemblyType A
Definition: operators_tests.cpp:30
FTensor::interpolate_Tensor1::di
const int di
Definition: interpolate_Tensor1.hpp:14
FTensor::interpolate_Tensor1::i0
const int i0
Definition: interpolate_Tensor1.hpp:14
FTensor::interpolate_Tensor1::j0
const int j0
Definition: interpolate_Tensor1.hpp:14
FTensor::interpolate_Tensor1::k0
const int k0
Definition: interpolate_Tensor1.hpp:14
FTensor::interpolate_Tensor1::conjugate
const double * conjugate
Definition: interpolate_Tensor1.hpp:15
FTensor::interpolate_Tensor1::a
const Tensor1< T *, Dim > & a
Definition: interpolate_Tensor1.hpp:13
FTensor::interpolate_Tensor1::dk
const int dk
Definition: interpolate_Tensor1.hpp:14
FTensor::interpolate_Tensor1::distance
const double * distance
Definition: interpolate_Tensor1.hpp:15