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

#include <src/ftensor/src/FTensor/Tensor2_symmetric/diffusion_Tensor2_symmetric.hpp>

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

Public Member Functions

promote< T, double >::V operator() (const int N1, const int N2) const
 
 diffusion_Tensor2_symmetric (const Tensor2_symmetric< T *, Dim > &A, const int Di, const int Dj, const int Dk, const double Dx)
 

Private Attributes

const Tensor2_symmetric< T *, Dim > & a
 
const int di
 
const int dj
 
const int dk
 
const double dx
 

Detailed Description

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

Definition at line 8 of file diffusion_Tensor2_symmetric.hpp.

Constructor & Destructor Documentation

◆ diffusion_Tensor2_symmetric()

template<class T , int Dim, char i, char j>
FTensor::diffusion_Tensor2_symmetric< T, Dim, i, j >::diffusion_Tensor2_symmetric ( const Tensor2_symmetric< T *, Dim > &  A,
const int  Di,
const int  Dj,
const int  Dk,
const double  Dx 
)

Member Function Documentation

◆ operator()()

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

Definition at line 15 of file diffusion_Tensor2_symmetric.hpp.

16  {
17  return ((*(a.ptr(N1, N2) + di) - 2 * a(N1, N2) + *(a.ptr(N1, N2) - di))
18  + (*(a.ptr(N1, N2) + dj) - 2 * a(N1, N2) + *(a.ptr(N1, N2) - dj))
19  + (*(a.ptr(N1, N2) + dk) - 2 * a(N1, N2) + *(a.ptr(N1, N2) - dk))
20  + ((*(a.ptr(N1, N2) + di + dj) + *(a.ptr(N1, N2) + di - dj)
21  + *(a.ptr(N1, N2) - di + dj) + *(a.ptr(N1, N2) - di - dj)
22  - 4 * a(N1, N2))
23  + (*(a.ptr(N1, N2) + di + dk) + *(a.ptr(N1, N2) + di - dk)
24  + *(a.ptr(N1, N2) - di + dk) + *(a.ptr(N1, N2) - di - dk)
25  - 4 * a(N1, N2))
26  + (*(a.ptr(N1, N2) + dj + dk) + *(a.ptr(N1, N2) + dj - dk)
27  + *(a.ptr(N1, N2) - dj + dk) + *(a.ptr(N1, N2) - dj - dk)
28  - 4 * a(N1, N2)))
29  / (std::sqrt(2.0)))
30  * dx * dx;
31  }
const Tensor2_symmetric< T *, Dim > & a

Member Data Documentation

◆ a

template<class T , int Dim, char i, char j>
const Tensor2_symmetric<T *, Dim>& FTensor::diffusion_Tensor2_symmetric< T, Dim, i, j >::a
private

Definition at line 10 of file diffusion_Tensor2_symmetric.hpp.

◆ di

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

Definition at line 11 of file diffusion_Tensor2_symmetric.hpp.

◆ dj

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

Definition at line 11 of file diffusion_Tensor2_symmetric.hpp.

◆ dk

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

Definition at line 11 of file diffusion_Tensor2_symmetric.hpp.

◆ dx

template<class T , int Dim, char i, char j>
const double FTensor::diffusion_Tensor2_symmetric< T, Dim, i, j >::dx
private

Definition at line 12 of file diffusion_Tensor2_symmetric.hpp.


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