Geometric Algebra Primer
Total Page:16
File Type:pdf, Size:1020Kb
Geometric Algebra Primer Jaap Suter March 12, 2003 Abstract Adopted with great enthusiasm in physics, geometric algebra slowly emerges in computational science. Its elegance and ease of use is unparalleled. By introducing two simple concepts, the multivector and its geometric product, we obtain an algebra that allows subspace arithmetic. It turns out that being able to ‘calculate’ with subspaces is extremely powerful, and solves many of the hacks required by traditional methods. This paper provides an introduction to geometric algebra. The intention is to give the reader an understanding of the basic concepts, so advanced material becomes more accessible. Copyright °c 2003 Jaap Suter. Permission to make digital or hard copies of part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation. Abstracting with credit is per- mitted. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission and/or a fee. Request permission through email at cliff[email protected]. See http://www.jaapsuter.com for more infor- mation. Contents 1 Introduction 4 1.1 Rationale ............................... 4 1.2 Overview ............................... 4 1.3 Acknowledgements .......................... 5 1.4 Disclaimer ............................... 5 2 Subspaces 6 2.1 Bivectors ............................... 7 2.1.1 The Euclidian Plane ..................... 8 2.1.2 Three Dimensions ...................... 10 2.2 Trivectors ............................... 12 2.3 Blades ................................. 14 3 Geometric Algebra 16 3.1 The Geometric Product ....................... 17 3.2 Multivectors .............................. 17 3.3 The Geometric Product Continued ................. 18 3.4 The Dot and Outer Product revisited ............... 22 3.5 The Inner Product .......................... 23 3.6 Inner, Outer and Geometric ..................... 25 4 Tools 27 4.1 Grades ................................. 27 4.2 The Inverse .............................. 28 4.3 Pseudoscalars ............................. 29 4.4 The Dual ............................... 30 4.5 Projection and Rejection ....................... 31 4.6 Reflections ............................... 34 4.7 The Meet ............................... 36 5 Applications 37 5.1 The Euclidian Plane ......................... 37 5.1.1 Complex Numbers ...................... 37 5.1.2 Rotations ........................... 38 1 5.1.3 Lines .............................. 41 5.2 Euclidian Space ............................ 43 5.2.1 Rotations ........................... 43 5.2.2 Lines .............................. 53 5.2.3 Planes ............................. 53 5.3 Homogeneous Space ......................... 55 5.3.1 Three dimensional homogeneous space ........... 55 5.3.2 Four dimensional homogeneous space ............ 58 5.3.3 Concluding Homogeneous Space .............. 60 6 Conclusion 61 6.1 The future of geometric algebra ................... 62 6.2 Further Reading ........................... 62 2 List of Figures 2.1 The dot product ........................... 6 2.2 Vector a extended along vector b .................. 7 2.3 Vector b extended along vector a .................. 7 2.4 A two dimensional basis ....................... 9 2.5 A 3-dimensional bivector basis ................... 10 2.6 A Trivector .............................. 12 2.7 Basis blades in 2 dimensions ..................... 14 2.8 Basis blades in 3 dimensions ..................... 14 2.9 Basis blades in 4 dimensions ..................... 14 3.1 Multiplication Table for basis blades in C`2 ............ 21 3.2 Multiplication Table for basis blades in C`3 ............ 22 3.3 The dot product of a bivector and a vector ............ 24 4.1 Projection and rejection of vector a in bivector B ......... 32 4.2 Reflection ............................... 35 4.3 The Meet ............................... 36 5.1 Lines in the Euclidian plane ..................... 42 5.2 Rotation in an arbitrary plane ................... 44 5.3 An arbitrary rotation ......................... 48 5.4 A rotation using two reflections ................... 51 5.5 A two dimensional line in the homogeneous model ........ 56 5.6 An homogeneous intersection .................... 57 3 Chapter 1 Introduction 1.1 Rationale Information about geometric algebra is widely available in the field of physics. Knowledge applicable to computer science, graphics in particular, is lacking. As Leo Dorst [1] puts it: “. A computer scientist first pointed to geometric algebra as a promising way to ‘do geometry’ is likely to find a rather confusing collection of material, of which very little is experienced as imme- diately relevant to the kind of geometrical problems occurring in practice. After perusing some of these, the computer scientist may well wonder what all the fuss is about, and decide to stick with the old way of doing things . ” And indeed, disappointed by the mathematical obscurity many people dis- card geometric algebra as something for academics only. Unfortunately they miss out on the elegance and power that geometric algebra has to offer. Not only does geometric algebra provide us with new ways to reason about computational geometry, it also embeds and explains all existing theories in- cluding complex numbers, quaternions, matrix-algebra, and Pl¨uckerspace. Geo- metric algebra gives us the necessary and unifying tools to express geometry and its relations without the need for tricks or special cases. Ultimately, it makes communicating ideas easier. 1.2 Overview The layout of the paper is as follows; I start out by talking a bit about sub- spaces, what they are, what we can do with them and how traditional vectors or one-dimensional subspaces fit in the picture. After that I will define what a 4 geometric algebra is, and what the fundamental concepts are. This chapter is the most important as all other theory builds upon it. The following chapter will introduce some common and handy concepts which I call tools. They are not fundamental, but useful in many applications. Once we have mastered the fundamentals, and armed with our tools, we can tackle some applications of geometric algebra. It is this chapter that tries to demonstrate the elegance of geometric algebra, and how and where it replaces traditional methods. Finally, I wrap things up, and provide a few references and a roadmap on how to continue a study of geometric algebra.. 1.3 Acknowledgements I would like to thank David Hestenes for his books [7][8] and papers [10] and Leo Dorst for the papers on his website [6]. Anything you learn from this introduction, you indirectly learned from them. My gratitude to Per Vognsen for explaining many of the mathematical ob- scurities that I encountered, and providing me with some of the proofs in this paper. Thanks to Kurt Miller, Conor Stokes, Patrick Harty, Matt Newport, Willem De Boer, Frank A. Krueger and Robert Valkenburg for comments. Fi- nally, I am greatly indebted to Dirk Gerrits. His excellent skills as an editor and his thorough proofreading allowed me to correct many errors. 1.4 Disclaimer Of course, any mistakes in this text are entirely mine. I only hope to provide an easy-to-read introduction. Proofs will be omitted if the required mathematics are beyond the scope of this paper. Many times only an example or an intuitive outline will be given. I am certain that some of my reasoning won’t hold in a thorough mathematical review, but at least you should get an impression. The enthusiastic reader should pick up some of the references to extend his knowledge, learn about some of the subtleties and find the actual proofs. 5 Chapter 2 Subspaces It is often neglected that vectors represent 1-dimensional subspaces. This is mainly due to the fact that it seems the only concept at hand. Hence we abuse vectors to form higher-dimensional subspaces. We use them to represent planes by defining normals. We combine them in strange ways to create oriented subspaces. Some papers even mention quaternions as vectors on a 4-dimensional unit hypersphere. For no apparent reason we have been denying the existence of 2-, 3- and higher-dimensional subspaces as simple concepts, similar to the vector. Ge- ometric algebra introduces these and even defines the operators to perform arithmetic with them. Using geometric algebra we can finally represent planes as true 2-dimensional subspaces, define oriented subspaces, and reveal the true identity of quaternions. We can add and subtract subspaces of different dimen- sions, and even multiply and divide them, resulting in powerful expressions that can express any geometric relation or concept. This chapter will demonstrate how vectors represent 1-dimensional subspaces and uses this knowledge to express subspaces of arbitrary dimensions. However, before we get to that, let us consider the very basics by using a familiar example. a b Figure 2.1: The dot product What if we project a 1-dimensional subspace onto another? The answer is well known; For vectors a and b, the dot product a ¢ b projects a onto b resulting in the scalar magnitude of the projection relative to b’s magnitude. This is 6 depicted in figure 2.1 for the case where b is a unit vector. Scalars can be treated as 0-dimensional subspaces. Thus, the projection of a 1-dimensional subspace onto another results in a 0-dimensional subspace. 2.1 Bivectors Geometric algebra introduces an operator that is in some ways