|
static bool | canInterpolateVector (BlockLattice< T, DESCRIPTOR > const &blockLattice, int iX, int iY, int iZ) |
|
static void | interpolateVector (T velDeriv[DESCRIPTOR::d], BlockLattice< T, DESCRIPTOR > const &blockLattice, int iX, int iY, int iZ) |
|
static void | interpolateScalar (T &rhoDeriv, BlockLattice< T, DESCRIPTOR > const &blockLattice, int iX, int iY, int iZ) |
|
template<typename CELL > |
static void | interpolateVector (T velDeriv[DESCRIPTOR::d], CELL &cell) any_platform |
|
template<typename T, typename DESCRIPTOR, int direction, int orientation, int deriveDirection>
struct olb::fd::DirectedGradients3D< T, DESCRIPTOR, direction, orientation, deriveDirection, true >
Definition at line 75 of file finiteDifference3D.h.
template<typename T , typename DESCRIPTOR , int direction, int orientation, int deriveDirection>
static void olb::fd::DirectedGradients3D< T, DESCRIPTOR, direction, orientation, deriveDirection, true >::interpolateScalar |
( |
T & | rhoDeriv, |
|
|
BlockLattice< T, DESCRIPTOR > const & | blockLattice, |
|
|
int | iX, |
|
|
int | iY, |
|
|
int | iZ ) |
|
inlinestatic |
Definition at line 112 of file finiteDifference3D.h.
115 {
116 using namespace fd;
117
118
119 T rho0 = blockLattice.get(iX,iY,iZ).computeRho();
120 T rho1 = blockLattice.get (
121 iX+(direction==0 ? (-orientation):0),
122 iY+(direction==1 ? (-orientation):0),
123 iZ+(direction==2 ? (-orientation):0) ).computeRho();
124 T rho2 = blockLattice.get (
125 iX+(direction==0 ? (-2*orientation):0),
126 iY+(direction==1 ? (-2*orientation):0),
127 iZ+(direction==2 ? (-2*orientation):0) ).computeRho();
128
130 }
constexpr T boundaryGradient(T u_0, T u_1, T u_2) any_platform
Second-order asymmetric gradient (u_1 = u(x+1))
References olb::fd::boundaryGradient(), and olb::BlockLattice< T, DESCRIPTOR >::get().
template<typename T , typename DESCRIPTOR , int direction, int orientation, int deriveDirection>
static void olb::fd::DirectedGradients3D< T, DESCRIPTOR, direction, orientation, deriveDirection, true >::interpolateVector |
( |
T | velDeriv[DESCRIPTOR::d], |
|
|
BlockLattice< T, DESCRIPTOR > const & | blockLattice, |
|
|
int | iX, |
|
|
int | iY, |
|
|
int | iZ ) |
|
inlinestatic |
Definition at line 89 of file finiteDifference3D.h.
92 {
93 using namespace fd;
94
95 T u0[DESCRIPTOR::d], u1[DESCRIPTOR::d], u2[DESCRIPTOR::d];
96
97 blockLattice.get(iX,iY,iZ).computeU(u0);
98 blockLattice.get (
99 iX+(direction==0 ? (-orientation):0),
100 iY+(direction==1 ? (-orientation):0),
101 iZ+(direction==2 ? (-orientation):0) ).computeU(u1);
102 blockLattice.get (
103 iX+(direction==0 ? (-2*orientation):0),
104 iY+(direction==1 ? (-2*orientation):0),
105 iZ+(direction==2 ? (-2*orientation):0) ).computeU(u2);
106
107 for (int iD=0; iD<DESCRIPTOR::d; ++iD) {
109 }
110 }
References olb::fd::boundaryGradient(), and olb::BlockLattice< T, DESCRIPTOR >::get().