versor  3.0
C++11 library for Geometric algebra
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
vsr::SpaceGroup3D< V > Struct Template Reference
Inheritance diagram for vsr::SpaceGroup3D< V >:
vsr::PointGroup3D< V > vsr::Group< V >

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 >
a
 
b
 
c
 
vector< OpIdxopIdx
 
- 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)
 

The documentation for this struct was generated from the following file: