Skip to main content

Three Dimensional Multivector, based on numpy.

Project description

Multivector3D

Basic python class for a 3D multivector, implemented using numpy for efficient numerical computation. The following operations are implemented:

from multivector3d import Multivector3D

a = Multivector3D(vector=[1,2,3])
b = Multivector3D(bivector=[4,5,6])
c = 2.0
  • a+b Addition
  • a*c Scalar multiplication (limitation: scalar must be on the right)
  • a/c Scalar division
  • a*b Geometric product
  • a.dot(b) Dot product
  • a^b Wedge product
  • ~a Dual multivector (multiplication by unit pseudoscalar)

The multivector attributes for the four grades, each of which can be specified in the constructor:

  • a.scalar Scalar
  • a.vector Vector, in the canonical {e_1, e_2, e_3} basis
  • a.bivector Bivector, in the {e_2 e_3, e_3 e_1, e_1 e_2} basis
  • a.pscalar Pseudoscalar e_1 e_2 e_3.

This project is more of an academic exercise than anything production ready at this point. If you want to do computations with the geometric algebra in python, check out the clifford package.

Installation

The package can be installed from pip: pip install multivector3d. The only dependency is numpy.

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

multivector3d-0.1.1.tar.gz (3.2 kB view hashes)

Uploaded Source

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