Skip to content

Class TempLat::ScalarSymTracelessMultiply

template <typename R, typename T>

ClassList > TempLat > ScalarSymTracelessMultiply

A class which implements scalar multiplication over symmetric traceless numbers. More...

  • #include <scalarsymtracelessmultiply.h>

Inherits the following classes: TempLat::SymTracelessBinaryOperator

Public Types inherited from TempLat::SymTracelessBinaryOperator

See TempLat::SymTracelessBinaryOperator

Type Name
typedef SymTracelessGetter Getter

Public Static Attributes inherited from TempLat::SymTracelessBinaryOperator

See TempLat::SymTracelessBinaryOperator

Type Name
constexpr size_t size = 5

Public Functions

Type Name
ScalarSymTracelessMultiply (const R & pR, const T & pT)
auto SymTracelessGet (Tag< 0 > t) const
auto SymTracelessGet (Tag< 1 > t) const
auto SymTracelessGet (Tag< 2 > t) const
auto SymTracelessGet (Tag< 3 > t) const
auto SymTracelessGet (Tag< 4 > t) const
auto SymTracelessGet (Tag< 5 > t) const
auto SymTracelessGet (Tag< 1 > t1, Tag< 1 > t2) const
auto SymTracelessGet (Tag< 1 > t1, Tag< 2 > t2) const
auto SymTracelessGet (Tag< 1 > t1, Tag< 3 > t2) const
auto SymTracelessGet (Tag< 2 > t1, Tag< 1 > t2) const
auto SymTracelessGet (Tag< 2 > t1, Tag< 2 > t2) const
auto SymTracelessGet (Tag< 2 > t1, Tag< 3 > t2) const
auto SymTracelessGet (Tag< 3 > t1, Tag< 1 > t2) const
auto SymTracelessGet (Tag< 3 > t1, Tag< 2 > t2) const
auto SymTracelessGet (Tag< 3 > t1, Tag< 3 > t2) 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::SymTracelessBinaryOperator

See TempLat::SymTracelessBinaryOperator

Type Name
SymTracelessBinaryOperator (const R & pR, const T & pT)
auto SymTracelessFieldGet (Tag< 1 > t1, Tag< 1 > t2) const
auto SymTracelessFieldGet (Tag< 1 > t1, Tag< 2 > t2) const
auto SymTracelessFieldGet (Tag< 1 > t1, Tag< 3 > t2) const
auto SymTracelessFieldGet (Tag< 2 > t1, Tag< 1 > t2) const
auto SymTracelessFieldGet (Tag< 2 > t1, Tag< 2 > t2) const
auto SymTracelessFieldGet (Tag< 2 > t1, Tag< 3 > t2) const
auto SymTracelessFieldGet (Tag< 3 > t1, Tag< 1 > t2) const
auto SymTracelessFieldGet (Tag< 3 > t1, Tag< 2 > t2) const
auto SymTracelessFieldGet (Tag< 3 > t1, Tag< 3 > t2) const
auto getDx () const
auto getKIR () const
auto getToolBox () const
virtual std::string operatorString () const = 0
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 "a OP b" (where OP is * or whatever), this toString method does all the work for you.

Public Static Functions inherited from TempLat::SymTracelessBinaryOperator

See TempLat::SymTracelessBinaryOperator

Type Name
consteval size_t getNDim ()

Protected Attributes inherited from TempLat::SymTracelessBinaryOperator

See TempLat::SymTracelessBinaryOperator

Type Name
R mR
T mT

Detailed Description

Unit test: ctest -R test-scalarcomplexfieldmultiply

Public Functions Documentation

function ScalarSymTracelessMultiply

inline TempLat::ScalarSymTracelessMultiply::ScalarSymTracelessMultiply (
    const R & pR,
    const T & pT
) 

function SymTracelessGet [1/15]

inline auto TempLat::ScalarSymTracelessMultiply::SymTracelessGet (
    Tag < 0 > t
) const

function SymTracelessGet [2/15]

inline auto TempLat::ScalarSymTracelessMultiply::SymTracelessGet (
    Tag < 1 > t
) const

function SymTracelessGet [3/15]

inline auto TempLat::ScalarSymTracelessMultiply::SymTracelessGet (
    Tag < 2 > t
) const

function SymTracelessGet [4/15]

inline auto TempLat::ScalarSymTracelessMultiply::SymTracelessGet (
    Tag < 3 > t
) const

function SymTracelessGet [5/15]

inline auto TempLat::ScalarSymTracelessMultiply::SymTracelessGet (
    Tag < 4 > t
) const

function SymTracelessGet [6/15]

inline auto TempLat::ScalarSymTracelessMultiply::SymTracelessGet (
    Tag < 5 > t
) const

function SymTracelessGet [7/15]

inline auto TempLat::ScalarSymTracelessMultiply::SymTracelessGet (
    Tag < 1 > t1,
    Tag < 1 > t2
) const

function SymTracelessGet [8/15]

inline auto TempLat::ScalarSymTracelessMultiply::SymTracelessGet (
    Tag < 1 > t1,
    Tag < 2 > t2
) const

function SymTracelessGet [9/15]

inline auto TempLat::ScalarSymTracelessMultiply::SymTracelessGet (
    Tag < 1 > t1,
    Tag < 3 > t2
) const

function SymTracelessGet [10/15]

inline auto TempLat::ScalarSymTracelessMultiply::SymTracelessGet (
    Tag < 2 > t1,
    Tag < 1 > t2
) const

function SymTracelessGet [11/15]

inline auto TempLat::ScalarSymTracelessMultiply::SymTracelessGet (
    Tag < 2 > t1,
    Tag < 2 > t2
) const

function SymTracelessGet [12/15]

inline auto TempLat::ScalarSymTracelessMultiply::SymTracelessGet (
    Tag < 2 > t1,
    Tag < 3 > t2
) const

function SymTracelessGet [13/15]

inline auto TempLat::ScalarSymTracelessMultiply::SymTracelessGet (
    Tag < 3 > t1,
    Tag < 1 > t2
) const

function SymTracelessGet [14/15]

inline auto TempLat::ScalarSymTracelessMultiply::SymTracelessGet (
    Tag < 3 > t1,
    Tag < 2 > t2
) const

function SymTracelessGet [15/15]

inline auto TempLat::ScalarSymTracelessMultiply::SymTracelessGet (
    Tag < 3 > t1,
    Tag < 3 > t2
) const

function eval

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

function operatorString

Override this method in your derived class, to have an easy implementation of your toString method.

inline virtual std::string TempLat::ScalarSymTracelessMultiply::operatorString () override const

Implements TempLat::SymTracelessBinaryOperator::operatorString



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