Class TempLat::ExpressionShifter
template <typename R, int... SHIFTS>
ClassList > TempLat > ExpressionShifter
A class which implements shifts in coordinates. More...
#include <shift.h>
Inherits the following classes: TempLat::UnaryOperator
Public Static Attributes
| Type | Name |
|---|---|
| constexpr size_t | dim = sizeof...(SHIFTS) |
| constexpr auto | shifts = device::make\_tuple(SHIFTS...) |
Public Functions
| Type | Name |
|---|---|
| ExpressionShifter (const R & pR) |
|
| void | doWeNeedGhosts () const |
| DEVICE_INLINE_FUNCTION auto | eval (const IDX &... idx) const |
| virtual std::string | operatorString () override const Override this method in your derived class, to have an easy implementation of your toString method. |
Public Functions inherited from TempLat::UnaryOperator
| Type | Name |
|---|---|
| UnaryOperator (const R & pR) |
|
| device::Idx | confirmGhostsUpToDate () const |
| void | confirmSpace (const LayoutStruct< NDim > & newLayout, const SpaceStateType & spaceType) const |
| void | doWeNeedGhosts () const |
| auto | getDx () const |
| auto | getKIR () const |
| auto | getToolBox () const |
| virtual std::string | operatorString () const Override this method in your derived class, to have an easy implementation of your toString method. |
| void | postGet () |
| void | preGet () |
| std::string | toString () const If your descending class implements operatorString() and your operator is of the type "OP b" (where OP is * or whatever), this toString method does all the work for you, only adding parentheses if b contains spaces. |
Public Static Functions inherited from TempLat::UnaryOperator
| Type | Name |
|---|---|
| consteval size_t | getNDim () |
Protected Attributes inherited from TempLat::UnaryOperator
| Type | Name |
|---|---|
| R | mR |
Detailed Description
Unit test: ctest -R test-shift
Public Static Attributes Documentation
variable dim
variable shifts
Public Functions Documentation
function ExpressionShifter
function doWeNeedGhosts
function eval
template<typename... IDX>
inline DEVICE_INLINE_FUNCTION auto TempLat::ExpressionShifter::eval (
const IDX &... idx
) const
function operatorString
Override this method in your derived class, to have an easy implementation of your toString method.
Implements TempLat::UnaryOperator::operatorString
The documentation for this class was generated from the following file cosmolatticeweb/tmp/code_source/templat/include/TempLat/lattice/algebra/operators/shift.h