Geometric Algebra is a powerful mathematical system encompassing many mathematical concepts (e.g., complex numbers, quaternions algebra, Grassmann-Cayley algebra, and Plücker coordinates) under the same framework. Geometric Algebra is mainly based on the algebraic system called Clifford Algebra, but with a strong emphasis on geometric interpretation. In Geometric Algebra, subspaces are treated as primitives for computation. As such, it is an appropriate mathematical tool for modeling and solving geometric problems in visual computing. Also, Geometric Algebra has been proven to be capable of representing many types of geometry.
Here you find how Leandro A. F. Fernandes has being applied Geometric Algebra in his research projects.
GATL: Geometric Algebra Template Library
Author: Leandro A. F. Fernandes
GATL is a C++ library that uses meta-programming to implement the lazy evaluation concept. As such, it is designed to automatically execute low-level algebraic manipulation in the procedures implemented by the users. This way, GATL is capable of performing some optimizations on the program at compile time.
The library is avaliable at GitHub.
TbGAL: Tensor-based Geometric Algebra Library
Authors: Eduardo V. Sousa and Leandro A. F. Fernandes
TbGAL manipulates blades and versors decomposed as vectors under a tensor structure. This library achieves high performance even in high-dimensional spaces assuming (p, q, r) metric signatures with r = 0. Additionally, to keep the simplicity of use of TbGAL, the implementation is ready to be used both as a C++ pure library and as a back-end to a Python environment. Such flexibility allows easy manipulation accordingly to the user’s experience, without impact on the performance.
The library is avaliable at GitHub.
ga-benchmark
Author: A team dedicated to the definition of standards and methodologies for benchmarking Geometric Algebra libraries
The goal of this project is to help physicists, chemists, engineers, and computer scientists to choose the Geometric Algebra library that best suits their practical needs, as well as to push further the improvement of the compared solutions and to motivate the development of new tools.
It is avaliable at GitHub.