versor
3.0
C++11 library for Geometric algebra
|
Classes | |
struct | Glide |
struct | GlideParameter |
Public Types | |
enum | LatticeType { Primitive, Body, AFace, CFace, HFace, Face2, Face3, Rhombo } |
enum | GlideType { None, AxialA, AxialB, AxialC, Diagonal, Diamond } |
using | Trs = typename V::space::translator |
using | Vec = typename V::space::Vec |
Public Types inherited from vsr::PointGroup3D< V > | |
using | Biv = typename V::space::Biv |
using | Vec = typename V::space::Vec |
Public Types inherited from vsr::Group< V > | |
using | Trs = typename V::space::translator |
Trs is the translator type of whatever conformal metric we are in. | |
Public Member Functions | |
SpaceGroup3D (int p, int q, bool abar=false, bool bbar=false, bool abbar=false, LatticeType lattice=Primitive, Vec ratio=Vec(1, 1, 1), Glide glide=Glide(), int screw=0) | |
void | init () |
template<class T > | |
vector< T > | operator() (const T &p) |
template<class T > | |
vector< T > | apply (const T &p) |
template<class T > | |
vector< T > | apply (const vector< T > &p) |
Vec | vec (float x, float y, float z) |
Calculate a vector transformation basice on generators and ratio | |
template<class T > | |
vector< T > | hang (const T &motif, int x, int y, int z) |
Hang a motif on a Lattice of dimensions x,y,z | |
template<class T > | |
vector< T > | hang (const vector< T > &motif, int x, int y, int z) |
Public Member Functions inherited from vsr::PointGroup3D< V > | |
PointGroup3D (int p, int q, bool abar=false, bool bbar=false, bool abbar=false) | |
template<class T > | |
vector< T > | operator() (const T &p) |
template<class T > | |
vector< T > | operator() (const vector< T > &p) |
void | seed (const Vec &vec=Vec(.213,.659, 1.6967).unit()) |
template<class T > | |
vector< T > | apply (const T &p) |
auto | ab () -> auto |
auto | ac () -> auto |
auto | bc () -> auto |
Public Member Functions inherited from vsr::Group< V > | |
Group (vector< V > v) | |
template<class T > | |
vector< T > | operator() (const T &p) |
Applies all operators on p motif and returns results. | |
template<class T > | |
vector< T > | operator() (const vector< T > &p) |
Applies all operations on a vector of type T. | |
Public Attributes | |
LatticeType | mLatticeType |
Glide | mGlide |
Vec | mRatio |
int | mScrew |
Public Attributes inherited from vsr::PointGroup3D< V > | |
V | a |
V | b |
V | c |
vector< OpIdx > | opIdx |
Public Attributes inherited from vsr::Group< V > | |
int | numSimple |
number of simple roots used to generate group | |
vector< V > | ops |
Pin Operators (Vec, etc) | |
vector< decltype(V()*V())> | sops |
Spin Operators (Rot, etc) | |
vector< decltype(V()*V()*V())> | tops |
Triple Reflection (abbar 3d group) | |
vector< decltype(V()*Trs())> | gops |
Glide Operators. | |
vector< decltype(V()*V()*Trs())> | scrops |
Screw Operators (Motor) | |