1 / 22

GABLE: Geometric Algebra Learning Environment

GABLE: Geometric Algebra Learning Environment. Leo Dorst and Stephen Mann. Goals 2nd year tutorial Graphical GABLE Matlab 3D. Geometric Algebra. Geometric algebra is an algebra of subspaces spanning subspaces using outer product projection of subspaces using inner product

zoheret
Télécharger la présentation

GABLE: Geometric Algebra Learning Environment

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. GABLE: Geometric Algebra Learning Environment Leo Dorst and Stephen Mann Goals • 2nd year tutorial • Graphical GABLE • Matlab • 3D http://www.science.uva.nl/~leo/clifford/gable.html

  2. Geometric Algebra Geometric algebra is an algebra of subspaces • spanning subspaces using outer product • projection of subspaces using inner product • ratio of subspaces using geometric product • intersection/union of subspaces using meet/join Course 31. Geometric Algebra: GABLE

  3. Vectors • Start with vector space V • Standard vector operations • Create vectors relative to coordinate frame • Manipulate without coordinates GAD(1) Course 31. Geometric Algebra: GABLE

  4. Spanning subspaces • Span subspaces using outer product of vectors a ^b • Anti-symmetric, linear, associative • Related to cross-product • Outer product of k vectors gives k-blade GAD(2) Course 31. Geometric Algebra: GABLE

  5. Elements of geometric algebra • k-blades are basic elements of computation • Blades form a linear space • {1, e1, e2, e3, e1^e2, e2^e3, e3^e1, e1^e2^e3} • {e1, e2, e3} form vector basis • {e1^e2, e2^e3, e3^e1} form 2-blade basis Course 31. Geometric Algebra: GABLE

  6. Outer product Characterizes a k -dimensional subspace • dimensionality (grade) • attitude (stance, direction) • sense (left/right handed, (anti-) clockwise) • magnitude It is not specific on shape Course 31. Geometric Algebra: GABLE

  7. Vectors in a subspace GAD(3) • Pseudoscalar: n-blade in n-space • I3 in GABLE • Vector v in subspace A v ^A = 0 • And almost in A when v ^A is small GAD(4) Course 31. Geometric Algebra: GABLE

  8. The inner product • a •b is part of b perpendicular to a • Inner product of two of same grade is scalar • Inner product on vectors is dot product • Inner product of different grades • “Remove” lower grade from higher grade GAD(5) Course 31. Geometric Algebra: GABLE

  9. Duality • All elements have duals • Dual(b): b •I3 • Tangent plane • 2-blade vs normal vector: duals GAD(6) Course 31. Geometric Algebra: GABLE

  10. Inner and outer products • Given: a, x •a, x ^a • Compute x a x ^a x •a Course 31. Geometric Algebra: GABLE

  11. The geometric product • Geometric product of vectors a,b : ab = a •b + a ^b • a,b vectors is a scalar+bivector (!) • Can be extended to bivectors, etc. • Linear, associative GAD(7) Course 31. Geometric Algebra: GABLE

  12. Division • Non-null geometric elements have inverses • In expression ab, can multiply by inverse of b to get a • Will use ‘/’ to denote right multiplication by inverse Course 31. Geometric Algebra: GABLE

  13. Projection and rejection • Use geometric product to decompose: • x = (xa)/a • = (x•a)/a + (x^a)/a • = (x•e)/e + (x^e)/e = (x•e) e + (x^e) e • where e is unit vector in direction of a • First term is projection of x onto e • Second term is rejection of x by e GAD(8) Course 31. Geometric Algebra: GABLE

  14. c b a x? Rotations as ratios • x is to c as b is to a x/c = b/a • Solution: x = (b/a)c • b/a is an operator that rotates/dilates GAD(9) Course 31. Geometric Algebra: GABLE

  15. Complex form of rotation • Pure rotation: ratio of unit vectors v and u. For x in (u,v)-plane with unit bivector i : • Rx = (v/u)x = (vu)x = (v•u + v^u) x • = (v•u - u^v) x = (cos f - i sin f) x • Since ii = -1, we can write this as • Rx = e-ifx • Bivector angle if: rotation plane and amount! Course 31. Geometric Algebra: GABLE

  16. Rotor representation of rotations • General x (not necessarily in i-plane), only component in i should be rotated. Done by: Rx = e-if/2x eif/2 = Rx/R Rotation fully characterized by rotorR. • Product of rotations: product of rotors R2R1x = R2(R1x/R1)/R2 = (R2R1)x /(R2R1) GAD(10) Course 31. Geometric Algebra: GABLE

  17. Quaternions are subsumed GAD(11) • In 3-space, for rotation with rotation axisn = n1e1 + n2e2 + n3e3 = -i I3 • we can rewrite R =e-I3nf/2= cos(f/2) - sin(f/2) I3n = cos(f/2) - (i n1 + j n2 + k n3) sin (f/2) • on the bivector basisi=I3e1, j = I3e2, k = I3e3which satisfies ii=jj=kk=ijk=-1, ji=k, etc. • So quaternions subsumed: • Can act directly on vectors. Course 31. Geometric Algebra: GABLE

  18. Rotation/orientation interpolation • Given: two orientations RA, RB represented as rotations • Find: intermediate orientations R0=RA; Ri+1=RRi; Rn=RB GAD(12) Course 31. Geometric Algebra: GABLE

  19. Homogeneous model • Get affine/homogeneous spaces by using one dimension for “point at zero” • Point: P =e+p, suchthat e•p=0 • Vector: v, suchthat e•v=0 • Tangentplane: bivector B, e•B=0 (not a normal!) • Line: point P, point Q : P ^Q = (e+p) ^(q-p) • Line: direction v, point P : P ^v = (e+p) ^v GAD(13) Course 31. Geometric Algebra: GABLE

  20. Meet and join • Homogeneous line intersection requires blade intersection: meet(A,B) • Dual operations, join(A,B), spans lowest grade superspace of A and B GAD(14) Course 31. Geometric Algebra: GABLE

  21. Euclidean geometry • Pappus’ theorem • Given two lines and three points on each line • Then the three intersections of cross-joined lines are colinear GAD(15) Course 31. Geometric Algebra: GABLE

  22. Summary • Higher dimensional subspaces are basic elements of computation • Geometric product • Inverses • Extends homogeneous coordinates http://www.science.uva.nl/~leo/clifford/gable.html http://www.cgl.uwaterloo.ca/~smann/GABLE/ Course 31. Geometric Algebra: GABLE

More Related