Speclib  0.1.2
The library for writing better CUDA libraries
sp::UnitOctonions< T > Struct Template Reference

A container for the eight basis unit octonions. More...

#include <Complex.hpp>

Public Types

using R = UnderlyingRealType< T >
 

Static Public Attributes

constexpr static Octonion< R > one = {{{o, z}, {z, z}}, {{z, z}, {z, z}}}
 
constexpr static Octonion< R > e1 = {{{z, o}, {z, z}}, {{z, z}, {z, z}}}
 
constexpr static Octonion< R > e2 = {{{z, z}, {o, z}}, {{z, z}, {z, z}}}
 
constexpr static Octonion< R > e4 = {{{z, z}, {z, o}}, {{z, z}, {z, z}}}
 
constexpr static Octonion< R > e0 = {{{z, z}, {z, z}}, {{o, z}, {z, z}}}
 
constexpr static Octonion< R > e3 = {{{z, z}, {z, z}}, {{z, -o}, {z, z}}}
 
constexpr static Octonion< R > e6 = {{{z, z}, {z, z}}, {{z, z}, {-o, z}}}
 
constexpr static Octonion< R > e5 = {{{z, z}, {z, z}}, {{z, z}, {z, -o}}}
 

Detailed Description

template<typename T>
struct sp::UnitOctonions< T >

A container for the eight basis unit octonions.

They can be accessed in the following manner:

A container for the eight basis unit octonions.
Definition: Complex.hpp:485

These obey the multiplicative rules \( e_{i+1} e_{i+2} = e_{i+4} \) for all \( i \in \mathbb{Z} / 7 \mathbb{Z} \), where each rule is antisymmetric when the terms are permuted.