Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

clifford

Package Overview
Dependencies
Maintainers
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

clifford

Numerical Geometric Algebra Module

  • 1.4.0
  • PyPI
  • Socket score

Maintainers
2

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

SyntaxOperation
|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}
}

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc