# Maths - clifford / Geometric Algebra

From: "Martin Baker"
Subject: affine transformations using Clifford/Geometric algebra
Date: 09 July 2003 19:08

Could anyone suggest how I might model affine transformations using
Clifford/Geometric algebra

My background is more of a programmer than a mathematician and what I am
trying to do is to model solid objects with simple Newtonian mechanics. What
I would like to do is model all the quantities using multivectors so that
the linear and rotational properties can all be handled in one equation, I
don't want to do anything advanced like space-time or quantum theory, just
simple mechanics of solid objects. As I say I'm not a mathematician but I
would like to understand the principles behind this.

From reading David Hestenes book, and other material on the web, I gather
that transforms are done using the following formula:

P2=m * P1 * m^-1
Where:
P1 = original position of point
P2 = resulting position of point after transform
m= multivector
m^-1 = inverse of m

So using 3D multivectors I multiplied out all the terms and found that the
result is the sum of two vectors and a bivector. The first vector is
equivalent to using a quaternion made up of the scalar and the bivector and
the second vector is equivalent to using a quaternion made up of the
trivector and the vector.

My working for this is here:

https://www.euclideanspace.com/maths/algebra/clifford/transforms/

My question is that I want to be able to represent the position of solid (6
degree of freedom) objects, rotation + translation, but instead of the sum
of a rotational and a linear component I have ended up with the sum of two
rotational components?

So how do I model affine transformations? What I have done so far does not
seem to have any advantage over quaternions? What use are two quaternions

I gather that the same trick can be used as with matrices, i.e. add a dummy
4th dimension to represent the translation component (I have also seen it
suggested that as well as the 4th dimension to represent the origin point, a
5th dimension can be added to represent a point at infinity?).

However this is a problem, firstly I don't like the idea of using 16 (or 32)
scalar values to represent a 6 degree of freedom object. This seems like a
big overhead in memory usage and in normalising all these dummy variables.
Also I can't find any information on the arithmetic of 4D multivectors and
how to represent rotation, translation and scaling using them.

Can anyone suggest how I could take this forward?

Martin

From: "Patrick Reany"
Subject: Re: affine transformations using Clifford/Geometric algebra
Date: 09 July 2003 22:58

I belive that you could look at some other of Hestenes's papers found at:

http://modelingnts.la.asu.edu/html/ComputationalGeometry.html

and

http://modelingnts.la.asu.edu/html/UAFCG.html

Patrick

From: "Martin Baker"
Subject: Re: affine transformations using Clifford/Geometric algebra
Date: 10 July 2003 08:10

Thanks Patrick,

There are a lot of interesting documents here and I may have missed
something but I can't find any ideas about how to model affine
transformations.

Have you come across a document which covers this?

Where I am stuck is, do I have to use 3,4 or 5 D vectors? Which part of the
multvector holds the translation? And what goes in the other parts of the
multivector?

Martin

From: "Patrick Reany"
Subject: Re: affine transformations using Clifford/Geometric algebra
Date: 10 July 2003 20:29

questions, but I think you couldn't do any better than to start with
the paper

http://modelingnts.la.asu.edu/pdf/CompGeom-ch1.pdf

and take particular notice of the section "Linearizing the Euclidean
group" on page 20. As I recall, the vectors are in 4 dimensions.

Patrick

From: "M.T."
Subject: Re: affine transformations using Clifford/Geometric algebra
Date: 21 July 2003 13:27

don't know if this helps, but if one constructs the clifford algebra
on a quadratic space V(Q), then the unit ball of the resultant even
subalgebra rotates V(Q) in the form you gave. so unit complex numbers
rotate R^2, and unit quaternions rotate R^3.
M.T.

Where I can, I have put links to Amazon for books that are relevant to the subject, click on the appropriate country flag to get more details of the book or to buy it from them.      Clifford Algebra to Geometric Calculus: A Unified Language for Mathematics and Physics (Fundamental Theories of Physics). This book is intended for mathematicians and physicists rather than programmers, it is very theoretical. It covers the algebra and calculus of multivectors of any dimension and is not specific to 3D modelling.      New Foundations for Classical Mechanics (Fundamental Theories of Physics). This is very good on the geometric interpretation of this algebra. It has lots of insights into the mechanics of solid bodies. I still cant work out if the position, velocity, etc. of solid bodies can be represented by a 3D multivector or if 4 or 5D multivectors are required to represent translation and rotation.

Other Math Books