#include "Particles/Interpolation.h"
#include "Domain/Loc.h"
#include "Tiny/Vector.h"
#include "Utilities/PAssert.h"
#include "Utilities/ElementProperties.h"
#include <iostream>


Classes | |
| struct | SUDS |
| struct | SUDSCacheData< Dim, T > |
| struct | ElementProperties< SUDSCacheData< Dim, T > > |
| struct | Interpolator< Dim, T, SUDS > |
| struct | SUDSGather< FC, Dim, T > |
| struct | SUDSScatter< FC, Dim, T > |
| struct | SUDSScatterValue< FC, Dim, T, ValueT > |
| struct | SUDSGatherFillCache< FC, Dim, T > |
| struct | SUDSScatterFillCache< FC, Dim, T > |
| struct | SUDSScatterValueFillCache< FC, Dim, T, ValueT > |
| struct | SUDSGatherUseCache< FC, Dim, T > |
| struct | SUDSScatterUseCache< FC, Dim, T > |
| struct | SUDSScatterValueUseCache< FC, Dim, T, ValueT > |
Functions | |
| template<int Dim, class T > | |
| std::ostream & | operator<< (std::ostream &o, const SUDSCacheData< Dim, T > &cache) |
| template<class T , class Patch , class AxisType > | |
| void | SUDSGatherFcn (T &attrib, const Patch &field, const Loc< 1 > &index, const Vector< 1, AxisType > &delta) |
| template<class T , class Patch , class AxisType > | |
| void | SUDSGatherFcn (T &attrib, const Patch &field, const Loc< 2 > &index, const Vector< 2, AxisType > &delta) |
| template<class T , class Patch , class AxisType > | |
| void | SUDSGatherFcn (T &attrib, const Patch &field, const Loc< 3 > &index, const Vector< 3, AxisType > &delta) |
| template<class T , class Patch , class AxisType > | |
| void | SUDSScatterFcn (const T &value, const Patch &field, const Loc< 1 > &index, const Vector< 1, AxisType > &delta) |
| template<class T , class Patch , class AxisType > | |
| void | SUDSScatterFcn (const T &value, const Patch &field, const Loc< 2 > &index, const Vector< 2, AxisType > &delta) |
| template<class T , class Patch , class AxisType > | |
| void | SUDSScatterFcn (const T &value, const Patch &field, const Loc< 3 > &index, const Vector< 3, AxisType > &delta) |
SUDS is a linear interpolation method that has an advantage over CIC in three dimensions because it uses only 7 stencil points instead of 8.
Specialization of Interpolator class template for cloud-in-cell interpolation. Interpolation is performed using a PatchFunction that spawns threads to work on each patch and loop over the particles on that patch. This functor will store a copy of the Field to be gathered from or scattered to and take the appropriate view of the Field for each patch.
| std::ostream& operator<< | ( | std::ostream & | o, | |
| const SUDSCacheData< Dim, T > & | cache | |||
| ) | [inline] |
References Vector< Dim, T, EngineTag >::print().
| void SUDSGatherFcn | ( | T & | attrib, | |
| const Patch & | field, | |||
| const Loc< 2 > & | index, | |||
| const Vector< 2, AxisType > & | delta | |||
| ) | [inline] |
| void SUDSGatherFcn | ( | T & | attrib, | |
| const Patch & | field, | |||
| const Loc< 3 > & | index, | |||
| const Vector< 3, AxisType > & | delta | |||
| ) | [inline] |
| void SUDSScatterFcn | ( | const T & | value, | |
| const Patch & | field, | |||
| const Loc< 1 > & | index, | |||
| const Vector< 1, AxisType > & | delta | |||
| ) | [inline] |
Referenced by SUDSScatterValueUseCache< FC, Dim, T, ValueT >::apply(), SUDSScatterUseCache< FC, Dim, T >::apply(), SUDSScatterValueFillCache< FC, Dim, T, ValueT >::apply(), SUDSScatterFillCache< FC, Dim, T >::apply(), SUDSScatterValue< FC, Dim, T, ValueT >::apply(), and SUDSScatter< FC, Dim, T >::apply().
| void SUDSScatterFcn | ( | const T & | value, | |
| const Patch & | field, | |||
| const Loc< 2 > & | index, | |||
| const Vector< 2, AxisType > & | delta | |||
| ) | [inline] |
| void SUDSScatterFcn | ( | const T & | value, | |
| const Patch & | field, | |||
| const Loc< 3 > & | index, | |||
| const Vector< 3, AxisType > & | delta | |||
| ) | [inline] |
1.5.9