Linear algebra is growing in importance. 3D entertainment, animations in movies and video games are developed using linear algebra. Animated characters are generated using equations straight out of this book. Linear algebra is used to extract knowledge from the massive amounts of data generated from modern technology.
The Fourth Edition of this popular text introduces linear algebra in a comprehensive, geometric, and algorithmic way. The authors start with the fundamentals in 2D and 3D, then move on to higher dimensions, expanding on the fundamentals and introducing new topics, which are necessary for many real-life applications and the development of abstract thought. Applications are introduced to motivate topics.
The subtitle, A Geometry Toolbox, hints at the book’s geometric approach, which is supported by many sketches and figures. Furthermore, the book covers applications of triangles, polygons, conics, and curves. Examples demonstrate each topic in action.
This practical approach to a linear algebra course, whether through classroom instruction or self-study, is unique to this book.
New to the Fourth Edition:
- Ten new application sections.
- A new section on change of basis. This concept now appears in several places.
- Chapters 14-16 on higher dimensions are notably revised.
- A deeper look at polynomials in the gallery of spaces.
- Introduces the QR decomposition and its relevance to least squares.
- Similarity and diagonalization are given more attention, as are eigenfunctions.
- A longer thread on least squares, running from orthogonal projections to a solution via SVD and the pseudoinverse.
- More applications for PCA have been added.
- More examples, exercises, and more on the kernel and general linear spaces.
- A list of applications has been added in Appendix A.
The book gives instructors the option of tailoring the course for the primary interests of their students: mathematics, engineering, science, computer graphics, and geometric modeling.
Table of Contents
1. Descartes' Discovery. 1.1. Local and Global Coordinates: 2D. 1.2. Going from Global to Local. 1.3. Local and Global Coordinates: 3D. 1.4. Stepping Outside the Box. 1.5. Application: Creating Coordinates. 1.6. Exercises. 2. Here and There: Points and Vectors in 2D. 2.1. Points and Vectors. 2.2. What's the Difference? 2.3. Vector Fields. 2.4. Length of a Vector. 2.5. Combining Points. 2.6. Independence. 2.7. Dot Product. 2.8. Application: Lighting Model. 2.9. Orthogonal Projections. 2.10. Inequalities. 2.11. Exercises. 3. Lining Up: 2D Lines. 3.1. Defining a Line. 3.2. Parametric Equation of a Line. 3.3. Implicit Equation of a Line. 3.4. Explicit Equation of a Line. 3.5. Converting Between Line Forms. 3.6. Distance of a Point to a Line. 3.7. The Foot of a Point. 3.8. A Meeting Place: Computing Intersections. 3.9. Application: Closest Point of Approach. 3.10. Exercises. 4. Changing Shapes: Linear Maps in 2D. 4.1. Skew Target Boxes. 4.2. The Matrix Form. 4.3. Linear Spaces. 4.4. Scalings. 4.5 Reflections. 4.6. Rotations. 4.7. Shears. 4.8. Projections. 4.9. Application: Free-form Deformations. 4.10. Areas and Linear Maps: Determinants. 4.11. Composing Linear Maps. 4.12. More on Matrix Multiplication. 4.13. Matrix Arithmetic Rules. 4.14. Exercises. 5. 2 x 2 Linear Systems. 5.1. Skew Target Boxes Revisited. 5.2. The Matrix Form. 5.3. A Direct Approach: Cramer's Rule. 5.4. Gauss Elimination. 5.5. Pivoting. 5.6. Unsolvable Systems. 5.7. Underdetermined Systems. 5.8. Homogeneous Systems. 5.9. Kernel. 5.10. Undoing Maps: Inverse Matrices. 5.11. Defining a Map. 5.12. Change of Basis. 5.13. Application: Intersecting Lines. 5.14. Exercises. 6. Moving Things Around: Affine Maps in 2D. 6.1. Coordinate Transformations. 6.2. Affine and Linear Maps. 6.3. Translations. 6.4. Application: Animation. 6.5. Mapping Triangles to Triangles. 6.6. Composing Affine Maps. 6.7. Exercises. 7. Eigen Things. 7.1. Fixed Directions. 7.2. Eigenvalues. 7.3. Eigenvectors. 7.4. Striving for More Generality. 7.5. The Geometry of Symmetric Matrices and the Eigendecomposition. 7.6. Quadratic Forms. 7.7. Repeating Maps. 7.8. Exercises. 8. 3D Geometry. 8.1. From 2D to 3D. 8.2. Cross Product. 8.3. Lines. 8.4. Planes. 8.5. Scalar Triple Product. 8.6. Application: Lighting and Shading. 8.7. Exercises. 9. Linear Maps in 3D. 9.1. Matrices and Linear Maps. 9.2. Linear Spaces. 9.3. Scalings. 9.4. Reflections. 9.5 Shears. 9.6. Rotations. 9.7. Projections. 9.8. Volumes and Linear Maps: Determinants. 9.9. Combining Linear Maps. 9.10. Inverse Matrices. 9.11. Application: Mapping Normals. 9.12. More on Matrices. 9.13. Exercises. 10. Affine Maps in 3D. 10.1. Affine Maps. 10.2. Translations. 10.3. Mapping Tetrahedra. 10.4. Parallel Projections. 10.5. Homogeneous Coordinates and Perspective Maps. 10.6. Application: Building Instance Models. 10.7. Exercises. 11. Interactions in 3D. 11.1. Distance Between a Point and a Plane. 11.2. Distance Between Two Lines. 11.3. Lines and Planes: Intersections. 11.4. Intersecting a Triangle and a Line. 11.5. Reflections. 11.6. Intersecting Three Planes. 11.7. Intersecting Two Planes. 11.8. Creating Orthonormal Coordinate Systems. 11.9. Application: Camera Model. 11.10. Exercises. 12. Gauss for Linear Systems. 12.1. The Problem. 12.2. The Solution via Gauss Elimination. 12.3. Homogeneous Linear Systems. 12.4. Inverse Matrices. 12.5. LU Decomposition. 12.6. Determinants. 12.7. Least Squares. 12.8. Application: Fitting Data from a Femoral Head. 12.9. Exercises. 13. Alternative System Solvers. 13.1. The Householder Method. 13.2. Vector Norms. 13.3. Matrix Norms. 13.4. The Condition Number. 13.5. Vector Sequences. 13.6. Iterative Methods: Gauss-Jacobi and Gauss-Seidel. 13.7. Application: Mesh Smoothing. 13.8. Exercises. 14. General Linear Spaces. 14.1. Basic Properties of Linear Spaces. 14.2. Linear Maps. 14.3. Inner Products. 14.4. Gram-Schmidt Orthonormalization. 14.5. QR Decompositon. 14.6. A Gallery of Spaces. 14.7. Least Squares. 14.8. Application: Music Analysis. 14.9. Exercises. 15. Eigen Things Revisited. 15.1. The Basics Revisited. 15.2. Similarity and Diagonalization. 15.3. Quadratic Forms. 15.4. The Power Method. 15.5. Application: Google Eigenvector. 15.6. QR Algorithm. 15.7. Eigenfunctions. 15.8. Application: Inuenza Modelling. 15.9. Exercises. 16. The Singular Value Decomposition. 16.1. The Geometry of the 2 x 2 Case. 16.2. The General Case. 16.3. SVD Steps. 16.4. Singular Values and Volumes. 16.5. The Pseudoinverse. 16.6. Least Squares. 16.7. Application: Image Compression. 16.8. Principal Components Analysis. 16.9. Application: Face Authentication. 16.10. Exercises. 17. Breaking It Up: Triangles. 17.1. Barycentric Coordinates. 17.2. Affine Invariance. 17.3. Some Special Points. 17.4. 2D Triangulations. 17.5. A Data Structure. 17.6. Application: Point Location. 17.7. 3D Triangulations. 17.8. Exercises. 18. Putting Lines Together: Polylines and Polygons. 18.1 Polylines. 18.2. Polygons. 18.3. Convexity. 18.4. Types of Polygons. 18.5. Unusual Polygons. 18.6. Turning Angles and Winding Numbers. 18.7. Area. 18.8. Application: Planarity Test. 18.9. Application: Inside or Outside? 18.10. Exercises. 19. Conics. 19.1. The General Conic. 19.2. Analyzing Conics. 19.3. General Conic to Standard Position. 19.4. The Action Ellipse. 19.5. Exercises. 20. Curves. 20.1. Parametric Curves. 20.2. Properties of Bézier Curves. 20.3. The Matrix Form. 20.4. Derivatives. 20.5. Composite Curves. 20.6. The Geometry of Planar Curves. 20.7. Application: Moving along a Curve. 20.8. Exercises. A. Applications. B. Glossary. C. Selected Exercises Solutions. Bibliography.
Gerald Farin (deceased) was a professor in the School of Computing, Informatics, and Design Systems Engineering (CIDSE) at Arizona State University. He received his doctoral degree in mathematics from the University of Braunschweig, Germany. His extensive experience in geometric design started at Daimler-Benz. He was a founding member of the editorial board for the journal Computer-Aided Geometric Design (Elsevier), and he served as co-editor in chief for more than 20 years. He published more than 100 research papers. Gerald also organized numerous conferences and authored or edited 29 books. This includes his much read and referenced textbook Curves and Surfaces for CAGD and his book on NURBS. In addition to this book, Gerald and Dianne co-authored The Essentials of CAGD, Mathematical Principles for Scientific Computing and Visualization both also published by AK Peters/CRC Press.
Dianne Hansford, received her Ph.D. from Arizona State University. Her research interests are in the field of geometric modeling with a focus on industrial curve and surface applications related to mathematical definitions of shape. Together with Gerald Farin (deceased), she delivered custom software solutions, advisement on best practices, and taught on-site courses as a consultant. She is a co-founder of 3D Compression Technologies. She is now lecturer in the School of Computing, Informatics, and Design Systems Engineering (CIDSE) at Arizona State University, primarily teaching geometric design, computer graphics, and scientific computing and visualization. In addition to this book, Gerald and Dianne co-authored The Essentials of CAGD, Mathematical Principles for Scientific Computing and Visualization both also published by AK Peters/CRC Press.