Synopses & Reviews
Within the last decade, Geometric Algebra (GA) has emerged as a powerful alternative to classical matrix algebra as a comprehensive conceptual language and computational system for computer science. This book will serve as a standard introduction and reference to the subject for students and experts alike. As a textbook, it provides a thorough grounding in the fundamentals of GA, with many illustrations, exercises and applications. Experts will delight in the refreshing perspective GA gives to every topic, large and small.
-David Hestenes, Distinguished research Professor, Department of Physics, Arizona State University
Geometric Algebra is becoming increasingly important in computer science. This book is a comprehensive introduction to Geometric Algebra with detailed descriptions of important applications. While requiring serious study, it has deep and powerful insights into GA’s usage. It has excellent discussions of how to actually implement GA on the computer.
-Dr. Alyn Rockwood, CTO, FreeDesign, Inc. Longmont, Colorado
Until recently, almost all of the interactions between objects in virtual 3D worlds have been based on calculations performed using linear algebra. Linear algebra relies heavily on coordinates, however, which can make many geometric programming tasks very specific and complex-often a lot of effort is required to bring about even modest performance enhancements. Although linear algebra is an efficient way to specify low-level computations, it is not a suitable high-level language for geometric programming.
Geometric Algebra for Computer Science presents a compelling alternative to the limitations of linear algebra. Geometric algebra, or GA, is a compact, time-effective, and performance-enhancing way to represent the geometry of 3D objects in computer programs. In this book you will find an introduction to GA that will give you a strong grasp of its relationship to linear algebra and its significance for your work. You will learn how to use GA to represent objects and perform geometric operations on them. And you will begin mastering proven techniques for making GA an integral part of your applications in a way that simplifies your code without slowing it down.
Features
-Explains GA as a natural extension of linear algebra and conveys its significance for 3D programming of geometry in graphics, vision, and robotics.
-Systematically explores the concepts and techniques that are key to representing elementary objects and geometric operators using GA.
-Covers in detail the conformal model, a convenient way to implement 3D geometry using a 5D representation space.
-Presents effective approaches to making GA an integral part of your programming.
-Includes numerous drills and programming exercises helpful for both students and practitioners.
-Companion web site includes links to GAViewer, a program that will allow you to interact with many of the 3D figures in the book, and Gaigen 2, the platform for the instructive programming exercises that conclude each chapter.
About the Authors
Leo Dorst is Assistant Professor of Computer Science at the University of Amsterdam, where his research focuses on geometrical issues in robotics and computer vision. He earned M.Sc. and Ph.D. degrees from Delft University of Technology and received a NYIPLA Inventor of the Year award in 2005 for his work in robot path planning.
Daniel Fontijne holds a Master’s degree in artificial Intelligence and is a Ph.D. candidate in Computer Science at the University of Amsterdam. His main professional interests are computer graphics, motion capture, and computer vision.
Stephen Mann is Associate Professor in the David R. Cheriton School of Computer Science at the University of Waterloo, where his research focuses on geometric modeling and computer graphics. He has a B.A. in Computer Science and Pure Mathematics from the University of California, Berkeley, and a Ph.D. in Computer Science and Engineering from the University of Washington.
Review
Within the last decade, Geometric Algebra (GA) has emerged as a powerful alternative to classical matrix algebra as a comprehensive conceptual language and computational system for computer science. This book will serve as a standard introduction and reference to the subject for students and experts alike. As a textbook, it provides a thorough grounding in the fundamentals of GA, with many illustrations, exercises and applications. Experts will delight in the refreshing perspective GA gives to every topic, large and small.
-David Hestenes, Distinguished research Professor, Department of Physics, Arizona State University
Geometric Algebra is becoming increasingly important in computer science. This book is a comprehensive introduction to Geometric Algebra with detailed descriptions of important applications. While requiring serious study, it has deep and powerful insights into GA's usage. It has excellent discussions of how to actually implement GA on the computer.
-Dr. Alyn Rockwood, CTO, FreeDesign, Inc. Longmont, Colorado
Until recently, almost all of the interactions between objects in virtual 3D worlds have been based on calculations performed using linear algebra. Linear algebra relies heavily on coordinates, however, which can make many geometric programming tasks very specific and complex-often a lot of effort is required to bring about even modest performance enhancements. Although linear algebra is an efficient way to specify low-level computations, it is not a suitable high-level language for geometric programming.
Geometric Algebra for Computer Science presents a compelling alternative to the limitations of linear algebra. Geometric algebra, or GA, is a compact, time-effective, and performance-enhancing way to represent the geometry of 3D objects in computer programs. In this book you will find an introduction to GA that will give you a strong grasp of its relationship to linear algebra and its significance for your work. You will learn how to use GA to represent objects and perform geometric operations on them. And you will begin mastering proven techniques for making GA an integral part of your applications in a way that simplifies your code without slowing it down.
Features
-Explains GA as a natural extension of linear algebra and conveys its significance for 3D programming of geometry in graphics, vision, and robotics.
-Systematically explores the concepts and techniques that are key to representing elementary objects and geometric operators using GA.
-Covers in detail the conformal model, a convenient way to implement 3D geometry using a 5D representation space.
-Presents effective approaches to making GA an integral part of your programming.
-Includes numerous drills and programming exercises helpful for both students and practitioners.
-Companion web site includes links to GAViewer, a program that will allow you to interact with many of the 3D figures in the book, and Gaigen 2, the platform for the instructive programming exercises that conclude each chapter.
About the Authors
Leo Dorst is Assistant Professor of Computer Science at the University of Amsterdam, where his research focuses on geometrical issues in robotics and computer vision. He earned M.Sc. and Ph.D. degrees from Delft University of Technology and received a NYIPLA Inventor of the Year award in 2005 for his work in robot path planning.
Daniel Fontijne holds a Master's degree in artificial Intelligence and is a Ph.D. candidate in Computer Science at the University of Amsterdam. His main professional interests are computer graphics, motion capture, and computer vision.
Stephen Mann is Associate Professor in the David R. Cheriton School of Computer Science at the University of Waterloo, where his research focuses on geometric modeling and computer graphics. He has a B.A. in Computer Science and Pure Mathematics from the University of California, Berkeley, and a Ph.D. in Computer Science and Engineering from the University of Washington.
Synopsis
In fields such as robotics, computer graphics, and computer games, it is necessary to compute complex interactions of objects in virtual 3D worlds. In a virtual world, there may be thousands of these objects interacting with each other in real-time. Linear algebra (vector math) is traditionally used to perform these calculations, but linear algebra requires long and complex computer programs to implement and can create very difficult programming challenges. Developers of real-time applications spend a lot of time trying to squeeze the last ounce of performance out of them. Geometric algebra (GA) is a new and compact way of representing the geometry of these objects that makes the computation and the programming of them much easier. Once only the domain of academic researchers, this book introduces GA to programmers, shows how it extends from linear algebra, and describes how to model geometries using GA. The last part of the book describes techniques for creating applications. A companion website link is included with GaViewer, a program written in C that allows programming experiments with GA. Geometric Algebra for Computer Science describes what many feel will be the future of geometrical computation.
* The first book on Geometric Algebra for programmers in computer graphics and entertainment computing
* Written by leaders in the field providing essential information on this new technique for 3D graphics
* This full color book includes a website with GAViewer, a program to experiment with GA
Synopsis
Geometric Algebra for Computer Science (Revised Edition) presents a compelling alternative to the limitations of linear algebra.
Geometric algebra (GA) is a compact, time-effective, and performance-enhancing way to represent the geometry of 3D objects in computer programs. This book explains GA as a natural extension of linear algebra and conveys its significance for 3D programming of geometry in graphics, vision, and robotics. It systematically explores the concepts and techniques that are key to representing elementary objects and geometric operators using GA. It covers in detail the conformal model, a convenient way to implement 3D geometry using a 5D representation space. Numerous drills and programming exercises are helpful for both students and practitioners. A companion web site includes links to GAViewer, a program that will allow you to interact with many of the 3D figures in the book; and Gaigen 2, the platform for the instructive programming exercises that conclude each chapter.
The book will be of interest to professionals working in fields requiring complex geometric computation such as robotics, computer graphics, and computer games. It is also be ideal for students in graduate or advanced undergraduate programs in computer science.
- Explains GA as a natural extension of linear algebra and conveys its significance for 3D programming of geometry in graphics, vision, and robotics.
- Systematically explores the concepts and techniques that are key to representing elementary objects and geometric operators using GA.
- Covers in detail the conformal model, a convenient way to implement 3D geometry using a 5D representation space.
- Presents effective approaches to making GA an integral part of your programming.
- Includes numerous drills and programming exercises helpful for both students and practitioners.
- Companion web site includes links to GAViewer, a program that will allow you to interact with many of the 3D figures in the book, and Gaigen 2, the platform for the instructive programming exercises that conclude each chapter.
Synopsis
Proven techniques for making Geometric Algebra an integral part of your applications in a way that simplifies your code without slowing it down.
Synopsis
Until recently, all of the interactions between objects in virtual 3D worlds have been based on calculations performed using linear algebra. Linear algebra relies heavily on coordinates, however, which can make many geometric programming tasks very specific and complex-often a lot of effort is required to bring about even modest performance enhancements. Although linear algebra is an efficient way to specify low-level computations, it is not a suitable high-level language for geometric programming.
Geometric Algebra for Computer Science presents a compelling alternative to the limitations of linear algebra. Geometric algebra, or GA, is a compact, time-effective, and performance-enhancing way to represent the geometry of 3D objects in computer programs. In this book you will find an introduction to GA that will give you a strong grasp of its relationship to linear algebra and its significance for your work. You will learn how to use GA to represent objects and perform geometric operations on them. And you will begin mastering proven techniques for making GA an integral part of your applications in a way that simplifies your code without slowing it down.
- Explains GA as a natural extension of linear algebra and conveys its significance for 3D programming of geometry in graphics, vision, and robotics.
- Systematically explores the concepts and techniques that are key to representing elementary objects and geometric operators using GA.
- Covers in detail the conformal model, a convenient way to implement 3D geometry using a 5D representation space.
- Presents effective approaches to making GA an integral part of your programming.
- Includes numerous drills and programming exercises helpful for both students and practitioners.
- Companion web site includes links to GAViewer, a program that will allow you to interact with many of the 3D figures in the book, and Gaigen 2, the platform for the instructive programming exercises that conclude each chapter.
About the Author
Daniel Fontijne holds a Master’s degree in artificial Intelligence and a Ph.D. in Computer Science, both from the University of Amsterdam. His main professional interests are computer graphics, motion capture, and computer vision.
University of Waterloo, Ontario, Canada
Table of Contents
CHAPTER 1. WHY GEOMETRIC ALGEBRA?
PART I GEOMETRIC ALGEBRA
CHAPTER 2. SPANNING ORIENTED SUBSPACES
CHAPTER 3. METRIC PRODUCTS OF SUBSPACES
CHAPTER 4. LINEAR TRANSFORMATIONS OF
SUBSPACES
CHAPTER 5. INTERSECTION AND UNION OF
SUBSPACES
CHAPTER 6. THE FUNDAMENTAL PRODUCT OF
GEOMETRIC ALGEBRA
CHAPTER 7. ORTHOGONAL TRANSFORMATIONS AS
VERSORS
CHAPTER 8. GEOMETRIC DIFFERENTIATION
PART II MODELS OF GEOMETRIES
CHAPTER 9. MODELING GEOMETRIES
CHAPTER 10. THE VECTOR SPACE MODEL: THE
ALGEBRA OF DIRECTIONS
CHAPTER 11. THE HOMOGENEOUS MODEL
CHAPTER 12. APPLICATIONS OF THE
HOMOGENEOUS MODEL
CHAPTER 13. THE CONFORMAL MODEL:
OPERATIONAL EUCLIDEAN GEOMETRY
CHAPTER 14. NEW PRIMITIVES FOR EUCLIDEAN
GEOMETRY
CHAPTER 15. CONSTRUCTIONS IN EUCLIDEAN
GEOMETRY
CHAPTER 16. CONFORMAL OPERATORS
CHAPTER 17. OPERATIONAL MODELS FOR
GEOMETRIES
PART III IMPLEMENTING GEOMETRIC ALGEBRA
CHAPTER 18. IMPLEMENTATION ISSUES
CHAPTER 19. BASIS BLADES AND OPERATIONS
CHAPTER 20. THE LINEAR PRODUCTS AND
OPERATIONS
CHAPTER 21. FUNDAMENTAL ALGORITHMS FOR
NONLINEAR PRODUCTS
CHAPTER 22. SPECIALIZING THE STRUCTURE FOR
EFFICIENCY
CHAPTER 23. USING THE GEOMETRY IN A RAY-
TRACING APPLICATION
PART IV APPENDICES
A METRICS AND NULL VECTORS
B CONTRACTIONS AND OTHER INNER PRODUCTS
C SUBSPACE PRODUCTS RETRIEVED
D COMMON EQUATIONS
BIBLIOGRAPHY
INDEX