Skip to content

Class TempLat::SU2Dagger

template <typename R>

ClassList > TempLat > SU2Dagger

A class which implements the hermitian conjugation. More...

  • #include <su2dagger.h>

Inherits the following classes: TempLat::SU2UnaryOperator

Public Types

Type Name
typedef typename SU2GetGetReturnType< R >::type SV

Public Types inherited from TempLat::SU2UnaryOperator

See TempLat::SU2UnaryOperator

Type Name
typedef SU2Getter Getter

Public Static Attributes inherited from TempLat::SU2UnaryOperator

See TempLat::SU2UnaryOperator

Type Name
constexpr size_t size = 4

Public Functions

Type Name
SU2Dagger (const R & pR)
auto SU2Get (Tag< N > t) const
DEVICE_INLINE_FUNCTION auto eval (const IDX &... idx) const
auto operator() (Tag< N > t) const
std::string toString () const

Public Functions inherited from TempLat::SU2UnaryOperator

See TempLat::SU2UnaryOperator

Type Name
SU2UnaryOperator (const R & pR)
device::Idx confirmGhostsUpToDate () const
void confirmSpace (const LayoutStruct< NDim > & newLayout, const SpaceStateType & spaceType) const
void doWeNeedGhosts () const
Space/ghost confirmation by walking the operand's structure (see SU2BinaryOperator ). Note: shifters (SU2Shifter/SU2ShifterByOne) OVERRIDE doWeNeedGhosts to trigger the actual ghost exchange for the shifted read.
DEVICE_INLINE_FUNCTION auto eval (const IDX &... idx) const
auto getDx () const
auto getKIR () const
const R & getOperand () const
Access the single operand. Used by the algebraic simplification rules (e.g. dagger involution / shift, see su2dagger.h ).
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::SU2UnaryOperator

See TempLat::SU2UnaryOperator

Type Name
consteval size_t getNDim ()

Protected Attributes inherited from TempLat::SU2UnaryOperator

See TempLat::SU2UnaryOperator

Type Name
R mR

Detailed Description

Unit test: ctest -R test-su2dagger

Public Types Documentation

typedef SV

using TempLat::SU2Dagger< R >::SV =  typename SU2GetGetReturnType<R>::type;

Public Functions Documentation

function SU2Dagger

inline TempLat::SU2Dagger::SU2Dagger (
    const R & pR
) 

function SU2Get

template<int N>
inline auto TempLat::SU2Dagger::SU2Get (
    Tag < N > t
) const

function eval

template<typename... IDX>
inline DEVICE_INLINE_FUNCTION auto TempLat::SU2Dagger::eval (
    const IDX &... idx
) const

function operator()

template<int N>
inline auto TempLat::SU2Dagger::operator() (
    Tag < N > t
) const

function toString

inline std::string TempLat::SU2Dagger::toString () const


The documentation for this class was generated from the following file cosmolatticeweb/tmp/code_source/templat/include/TempLat/lattice/algebra/su2algebra/su2dagger.h