Skip to main content

Numerical Geometric Algebra Module

Project description

clifford: Geometric Algebra for Python

PyPI DOI Binder Documentation Status Build Status Build Status codecov

clifford is a numerical Geometric Algebra (a.k.a. Clifford algebra) package for python.

Geometric Algebra (GA) is a universal algebra which among several other independent mathematical systems, subsumes:

  • Complex numbers
  • Quaternions
  • Linear algebra

Scalars, vectors, and higher-grade entities can be mixed freely and consistently in the form of mixed-grade multivectors. Like this,

Visual explanation of blades

Quick Installation

Requires Python version >=3.5

Install using conda:

conda install clifford -c conda-forge

Install using pip:

pip3 install clifford

Detailed instructions

Quickstart

Try out a notebook in binder

Or have a go on your own pc:

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!

Citing This Library

As linked at the top of this page, clifford is published to zenodo. DOI 10.5281/zenodo.1453978 refers to all versions of clifford.

To obtain BibTex citation information for a specific release (recommended):

  • Run python -m pip show clifford to determine which version you are using (or print clifford.__version__ from python)
  • Click on the corresponding version from this list of versions
  • Scroll down to the bottom of the page, and click the "BibTex" link in the "Export" sidebar

If you want to cite all releases, use:

@software{python_clifford,
  author       = {Hugo Hadfield and
                  Eric Wieser and
                  Alex Arsenovic and
                  Robert Kern and
                  {The Pygae Team}},
  title        = {pygae/clifford},
  publisher    = {Zenodo},
  doi          = {10.5281/zenodo.1453978},
  url          = {https://doi.org/10.5281/zenodo.1453978}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clifford-1.4.0.dev0.tar.gz (136.9 kB view details)

Uploaded Source

Built Distribution

clifford-1.4.0.dev0-py3-none-any.whl (156.9 kB view details)

Uploaded Python 3

File details

Details for the file clifford-1.4.0.dev0.tar.gz.

File metadata

  • Download URL: clifford-1.4.0.dev0.tar.gz
  • Upload date:
  • Size: 136.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.6

File hashes

Hashes for clifford-1.4.0.dev0.tar.gz
Algorithm Hash digest
SHA256 fe998bdc800ecc2705edf2c8f525bd42eadbc9ba8955ceab54f2a5897e1153f4
MD5 c78586a2de9f9bf200ce1363de2653bb
BLAKE2b-256 c308fef238a19f57dc3d9d41b5d9b56d8e111b2db8770cf9589999d6aee3898d

See more details on using hashes here.

File details

Details for the file clifford-1.4.0.dev0-py3-none-any.whl.

File metadata

  • Download URL: clifford-1.4.0.dev0-py3-none-any.whl
  • Upload date:
  • Size: 156.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.6

File hashes

Hashes for clifford-1.4.0.dev0-py3-none-any.whl
Algorithm Hash digest
SHA256 de701efb06de0b82798a882805b0220a2e1d702049d5d2ac1f4eff6c669537dc
MD5 ae6a0de5b9850ca2292df075f49bc85d
BLAKE2b-256 eba4b6a5439032f6f5a3f01f1271bac405f4b6678bd74de6eff1e072aff9eb76

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page