Skip to main content

A Python module to manipulate Screws and Coscrews with geometrics algebra (Clifford's Algebra).

Project description

GScrew (Generalized Screw Calculus)

Documentation Status Licence Build Status

Description

A Python module to manipulate generalized Screws and Coscrews with geometric algebras (real Clifford algebras).

Installation

A Pypi package is available, please refer to the Pypi page or enter pip install gscrew in a terminal.

Exemples

First of all, you need to import the modules:

import gscrew.geometric_algebra as ga
from gscrew.screw import Screw

The screw module also provides a CoScrew object and the comoment function for calculating the comoment between a coscrew and a screw.

Once these modules have been imported, we can create the geometric algebra in which we will be working. For basic physical applications, a three-dimensionnal algebra should suffice:

my_algebra = ga.GeometricAlgebra(3)
locals().update(my_algebra.blades)

The second line adds the basis blades to the local variables so that we will be able to create new multivectors just by performing linear combinations of these basis blades. For a 3D algebra, the basis blades are: s, e1, e2, e3, e12, e13, e32, e123.

We can now start working with Screw and CoScrew classes:

O = 0 * s  # the origin of the reference frame
S = 1 + (2*e2) + (3*e3)  # the direction of the screw
M = (e1) + (5*e3)        # the moment of the screw
my_screw = Screw(O, S, M)

Licence

All the code is provided under the GNU General Public Licence v3.0+ (GPLv3+)

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

gscrew-1.0.7.tar.gz (21.8 kB view hashes)

Uploaded Source

Built Distribution

gscrew-1.0.7-py3-none-any.whl (21.7 kB view hashes)

Uploaded Python 3

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