https://github.com/pygae/clifford
Geometric Algebra for Python
https://github.com/pygae/clifford
clifford-algebras geometric-algebra physics python quaternions
Last synced: 5 months ago
JSON representation
Geometric Algebra for Python
- Host: GitHub
- URL: https://github.com/pygae/clifford
- Owner: pygae
- License: bsd-3-clause
- Created: 2014-11-13T13:28:48.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2022-01-20T10:07:20.000Z (about 3 years ago)
- Last Synced: 2024-11-14T16:11:33.393Z (5 months ago)
- Topics: clifford-algebras, geometric-algebra, physics, python, quaternions
- Language: Python
- Homepage: http://clifford.rtfd.io
- Size: 2.46 MB
- Stars: 774
- Watchers: 23
- Forks: 72
- Open Issues: 90
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
- Citation: CITATION.md
Awesome Lists containing this project
- jimsghstars - pygae/clifford - Geometric Algebra for Python (Python)
README
[clifford](http://clifford.readthedocs.org/en/latest/): Geometric Algebra for Python
=========================================================[](https://pypi.org/project/clifford/)
[](https://zenodo.org/badge/latestdoi/26588915)
[](https://mybinder.org/v2/gh/pygae/clifford/master?filepath=examples%2Fg3c.ipynb)
[](http://clifford.readthedocs.io/en/latest/?badge=latest)
[](https://github.com/pygae/clifford/actions/workflows/python-package.yml)
[](https://dev.azure.com/hadfieldhugo/clifford/_build/latest?definitionId=1&branchName=master)
[](https://codecov.io/gh/pygae/clifford)`clifford` is a numerical Geometric Algebra (a.k.a. Clifford algebra) package for python.
- **Documentation:** http://clifford.readthedocs.org
- **Source code:** https://github.com/pygae/clifford
- **Bug reports:** https://github.com/pygae/clifford/issuesGeometric Algebra (GA) is a universal algebra which among several other independent mathematical systems, subsumes:
* Complex numbers
* Quaternions
* Linear algebraScalars, vectors, and higher-grade entities can be mixed freely and consistently in the form of mixed-grade multivectors. Like this,

Quick Installation
------------------
Requires Python version >=3.5Install using `conda`:
```
conda install clifford -c conda-forge
```
Install using `pip`:
```
pip3 install clifford
```
[Detailed instructions](https://clifford.readthedocs.io/en/latest/installation.html)Quickstart
----------Try out a notebook in [binder](https://mybinder.org/v2/gh/pygae/clifford/master?filepath=examples%2Fg3c.ipynb)
Or have a go on your own pc:
```python
from clifford.g3 import * # import GA for 3D space
from math import e, pi
a = e1 + 2*e2 + 3*e3 # vector
R = e**(pi/4*e12) # rotor
R*a*~R # rotate the vector
```Syntax Summary
----------| Syntax | Operation |
|:-:|:-:|
| \| | Symmetric inner product |
| << | Left contraction |
| ^ | Outer product |
| * | Geometric product |
| X\(i\) | Return the section of the multivector X of grade i |
| X\(ei\) | Return the section of the multivector X for which ei is the pseudo scalar |
| X\[i\] | Return the i'th coefficient from the multivector X
| X.normal() | Return the normalised multivector so that X*~X is +- 1 |---
For installation instructions, api documention, and tutorials, [head over to our documentation](https://clifford.readthedocs.io/)!
Citing This Library
-------------------For citation information, see [our `CITATION.md` file](https://github.com/pygae/clifford/blob/master/CITATION.md).