Skip to content

Commit

Permalink
docs
Browse files Browse the repository at this point in the history
  • Loading branch information
arsenovic committed Sep 4, 2016
1 parent 4dcf946 commit 44d1a01
Showing 1 changed file with 12 additions and 17 deletions.
29 changes: 12 additions & 17 deletions clifford/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,41 +40,36 @@
.. ipython::
In [4]:e0&e1 # geometric product
In [4]:e0*e1 # geometric product
In [5]:e0^e1 # outer product
In [6]:e0*e1 # inner product
In [6]:e0|e1 # inner product
Rotation
.. ipython::
In [138]: from scipy.constants import e,pi
In [138]: R = e**(pi/4. &e01)
In [138]: R = e**(pi/4 *e01)
In [138]: R&e0&~R
In [138]: R*e0*~R
Links
--------
There is also a symbolic geometric alebra module for python,
* symbolic geometric alebra module for python, https://github.com/brombo/galgebra
* https://github.com/brombo/galgebra
For more information, see the Cambridge Clifford Algebras website:
* http://www.mrao.cam.ac.uk/~clifford
and David Hestenes' website:
* http://geocalc.clas.asu.edu/
* Cambridge GA group http://www.mrao.cam.ac.uk/~clifford
* David Hestenes' (The man) http://geocalc.clas.asu.edu/
API
------
Two classes, Layout and MultiVector, and several helper functions are
provided to implement the algebras.
Expand Down Expand Up @@ -108,7 +103,7 @@
Issues
======
* Due to Python's order of operations, the bit operators & ^ << follow
* Due to Python's order of operations, the bit operators ^ << follow
the normal arithmetic operators + - * /, so
1^e0 + 2^e1 != (1^e0) + (2^e1)
Expand All @@ -131,13 +126,13 @@
* Since * is the inner product and the inner product with a scalar
vanishes by definition, an expression like
1*e0 + 2*e1
1|e0 + 2|e1
is null. Use the outer product or full geometric product, to
multiply scalars with MultiVectors. This can cause problems if
one has code that mixes Python numbers and MultiVectors. If the
code multiplies two values that can each be either type without
checking, one can run into problems as "1 * 2" has a very different
checking, one can run into problems as "1 | 2" has a very different
result from the same multiplication with scalar MultiVectors.
* Taking the inverse of a MultiVector will use a method proposed by
Expand Down

0 comments on commit 44d1a01

Please sign in to comment.