GluCat is a library of C++ template classes for calculations with the universal Clifford algebras over the real field. The dimension of the algebras you can use is limited only by computer word size. Unlike some software packages for
Clifford algebras, the maximum signature is fixed by default or by user defined template parameter values, and calculations are performed in the appropriate subalgebra.
GluCat classes are meant to be used as numeric classes with other template libraries. To do this, GluCat classes need to look and behave like floating point numeric types such as float and double. The GluCat classes do this by providing a definition for std::numeric_limits<>, most or all the expected operators like +, -, *, /, and functions like sqrt(). In use with other template libraries, you will need to look out for the differences between GluCat classes and floating point numeric types. Two key differences are that Clifford algebras do not have a total ordering, and that multiplication in Clifford algebras is not necessarily commutative. A third difference is that not all non-zero elements of a Clifford algebra have a multiplicative inverse.
PyClical is a Python extension module that is designed to make it easy for you to use Python to perform computations in Clifford algebras, and to implement algorithms and programs that use these computations. The syntax and semantics
of the main index_set and clifford classes in PyClical is designed to be as similar as possible to that of the GluCat template classes index_set<> and matrix_multi, so that you should be able to use PyClical to teach yourself how to use calculations in Clifford algebras, and then transfer that knowledge to your ability to use GluCat template classes in C++.