Rotation and Translation in Computer Graphics using 4 x 4 Homogenous Matrices and Quaternions

Size: px
Start display at page:

Download "Rotation and Translation in Computer Graphics using 4 x 4 Homogenous Matrices and Quaternions"

Transcription

1 Rotation and Translation in Computer Graphics using 4 x 4 Homogenous Matrices and Quaternions Lab. Eng., MSc Matti Pitkälä Department of Automation Laboratory, Lahti Polytechnic Lahti, Finland matti.pitkala@lamk.fi Abstract This paper introduces some of the key ideas in computer graphics, for example how we use the principles of mathematics using transformations such as rotation and translation in 2D and 3D-viewing. What are possibilities to achieve them in computer graphics. 1. Introduction 1.1 Overview of the problem Computer graphics deals with the problem of image synthesis. Given a model (usually mathematically based) the problem of computer graphics is to produce realistic image data which may be viewed on a graphics display device. The process of producing the image data from the scene model is called rendering. That images are synthesized from mathematical models implies that computer graphics is a mathematically based subject. Image synthesis involves the physics of light, properties of materials, etc. Animated imagery involves finite element analysis, kinematics, sampling theory and other mathematically based fields. The study of computer graphics necessarily involves the study of many areas of mathematics. An elementary view of some of these topics are given in the following sections. Persons, who have an interest in computer graphics should study so much mathematics as possible. The reverse problem of starting with image data and recovering information is called image processing. Figure 1: A square The idea behind this representation is that the first point represents the starting point of the first line segment drawn while the second point represents the end of the first line segment and the starting point of the second line segment. The drawing of line segments continues in similar fashion until all line segments have been drawn. A matrix having n+1 points describes a figure consisting of n-line segments. It is sometimes useful to think of each pair of consecutive points in this matrix representation: As a vector so that the square shown in Figure1 is the result of drawing the vectors shown in Figure D Viewing We consider the problem of representing 2D graphics images, which may be drawn as a sequence of connected line segments. Such images may be represented as a matrix of 2D points [xi yi]. For example pseudo-programming notation is used to describe the viewing transformations and data object representations. Figure 2: The Vectors in a square square =:

2 Rotation Now we wish to rotate a figure around the origin of 2D coordinate system. Figure 3 shows the point being rotated degrees (by convention, counter clock-wise direction is positive) about the origin. And now, if we for example want to rotate our square 90- degrees counter-clockwise (+), we get for the matrix: cos90=0, sin90=1,-sin90=-1 and cos90= ) (0, 0)* 0 1 new point1 is (0, 0) ) (10, 0)* matrix new point2 is (0, 10) and so on.. Figure 3: Rotating a point about the origin Figure 4: The square, rotated 90 degrees. To rotate point (x1,y1) to point (x2,y2) we observe: From the illustration we know that sin(a+b) = y2/r cos(a+b) = x2/r sin(a) = y1/r cos(a) = x1/r From the double angle formulas: sin(a+b) = sin(a)*cos(b) + cos(a)*sin(b) cos(a+b) = cos(a)*cos(b) sin(a)*sin(b) Substituting : y2/r = (y1/r)*cos(b) + (x1/r)*sin(b) Therefore: y2 = y1*cos(b) + x1*sin(b) x2/r =(x1/r)*cos(b) - (y1/r)*sin(b) And therefore: x2 = x1*cos(b) y1*sin(b) We have now: x2 = x1*cos(b) - y1*sin(b) y2 = x1*sin(b) + y1*cos(b) Translation Moving an object is called a translation. We translate the point by moving to x and y coordinates, respectively, the amount of the point should be shifted in the x and y directions. We translate an object by translating each vertex in the object. The translation equations may be written as: We can write same as a single matrix equation. This requires that we use a 2 by 2 matrix: such that x*a+y*c = x+tx and similarly x*b+y*d= y +Ty. To rotate a line or polygon, we must rotate each of its vertices. If we consider the coordinates of the point (x, y) as o one row two column matrix [x y] and the matrix then, given the pseudo-definition for matrix product, MP : = + /. or *, we can write equations as the matrix-equation: Figure 5 Translation

3 2. Rotation and translation using 4 x 4 homogenous matrices 2.1 Homogenous Coordinates From the above text we now can see the impossibility of representing a translation as 2 x 2 matrix. What is required at this point is to change the setting (2D coordinate space) in which there was the original problem. In geometry, when one encounters difficulty when trying to solve a problem in n-space, it is customary to attempt to re-phrase and solve the problem in n+1 space. In our case this means that we should look at our 2D problem in 3- dimensional space. But how can we solve this problem? Consider that, given a point (x, y) in 2-space, we map that point to (x, y, 1). That is, we inject each point in the 2D plane into the corresponding point in 3 space in the plane z=1. If we are able to solve our problem in this plane and find that the solution lies in the plane z=1, then we may project this solution back to 2 space by mapping each point (x, y, 1) to (x, y). To summarize, we inject the 2D plane into 3 space by the mapping (x, y) (x, y, 1). The solution of our example square is now: And we can rewrite the translation in form: x = x + tx y = y + ty z = z And using the 3 x 3 matrix: 2.2 3D Rotation and Translation Using 4 x 4 Homogenous Matrices Now we extend methods for translating and rotating in 3D from 2D methods by including the z-axis (now it doesn t equal by value one). Translation in a 3D homogeneous coordinate representation; a point is translated from (x, y, z) to (x, y, z ) using 4 x 4 matrix: Tx, Ty and Tz specify the translation for the coordinates. The above matrix is equivalent with this representation: x = x + Tx y = y + Ty z = z + Tz Example: We have an origin point (0, 0, 0) and let us move it along z- and y-axis both 100 unit. We get: x x 0 y y 100 z z When Rotation will be specified in 3-D, we need to designate a rotation axis (about which the object is to be rotated), and the amount of angular rotation. In 2-D, we always rotated about the xy-plane. The easiest rotations to handle in 3-D are those that are parallel to a coordinate axis. To simplify things, we will adopt the convention that counterclockwise rotations about a coordinate axis are produced with positive rotation angles, if we are looking along the positive half of the axis toward the origin. If we are thinking about 2-D rotations, then there are always rotated about the z axis. So the standard 2-D rotation equations give us what we need for rotations about the z-axis: Same for rotation: x = x * cos(θ) y * sin(θ) y = x * sin(θ) + y * cos(θ) z = z And using the 3 x 3 matrix: The above matrix is equivalent with this representation and this is called Rz: x = x * cos(θ) y * sin(θ) y = x * sin(θ) + y * cos(θ) z = z Transformations for rotations about the other two axes can be obtained by cyclic permutation of the parameters in the equations above. In other words, we replace x with y, y with z and z with x. For the x-axis (in the yz plane) Rx: y = y cos(θ) - z sin(θ) z = y sin(θ) + z cos(θ) x = x

4 For the y-axis (in the xz plane) Ry: z = z cosθ - x sinθ x = z sinθ + x cosθ y = y Here is the transformation matrices for Rx: And here is the transformation matrices for Ry: Even though quaternions remained a solution in search of a problem for many years after their discovery, applications in the fields of classical mechanics and the theory of relativity were identified in the early twentieth century. The capability of quaternions to represent threedimensional rotations about an arbitrary axis motivated researchers to use quaternion algebra in rotational kinematics equations. As a result, several new application areas involving quaternion based algorithms, such as robotics, orbital mechanics, aerospace technologies, and inertial navigation systems have started to use. 3.2 Algebra for quaternions As we know, the system of complex numbers is defined in terms of i, a square root of -1 ( i*i = -1). Although i is not a real number, we can write any complex number in terms of real numbers, using a real and a complex part. We can also define a conjugate and a magnitude (or absolute value) for these numbers. For example a point 1 unit along the z-axis rotated 90- degrees about y: Using the properties above, we can describe multiplication for complex numbers: A point 1 unit along the x-axis z rotates positively to x about y: Quaternions are an extension of complex numbers. Instead of just i, we have three different numbers that are all square roots of -1 labeled i, j, and k. When we multiply two of these numbers together, they behave similarly to cross products of the unit basis vectors: ij = -ji = k jk = -kj = i ki = -ik = j The conjugate and magnitude of a quaternion are found in much the same way as complex conjugate and magnitude. 3. Rotation and translation using quaternions 3.1 Introduction for quaternions Quaternions are developed by Irish mathematician Rowan Hamilton in mid nineteen century, when he was trying to find a way to rotate a 3D vector by multiplying it by another. After 15 years of hard work he solved the problem by using a 4D notation. Quaternions provide useful mechanism for describing rotations about some arbitrary axis in 3D Graphics or Virtual Reality. Unit quaternion is The inverse of a quaternion refers to the multiplicative inverse (or 1/q) and can be computed by q -1 =q'/(q*q') If a quaternion q has length 1, we say that q is a unit quaternion. The inverse of a unit quaternion is its conjugate, q -1 =q'.

5 We can represent a quaternion in several ways: as a linear combination of 1, i, j, and k, as a vector of the four coefficients in this linear combination, as a scalar for the coefficient of 1 and a vector for the coefficients of the imaginary terms. so we can save a lot of time and preserve more numerical accuracy with quaternions than with matrices. Although let us look a matrix representation for quaternion multiplication. We can use the rules above to compute the product of two quaternions and we get: We can write the product of two quaternions in terms of the (s, v) representation using standard vector products in the following way: Representing rotations with quaternions :We will compute a rotation about the unit vector, u by an angle theta. The quaternion that computes this rotation is If we examine each term in this product, we can see that each term depends linearly on the coefficients for q 1. Also each term depends linearly on the coefficients for q 2. So, we can write the product of two quaternions in terms of a matrix multiplication. When the matrix Lrow(q 1 ) multiplies a row vector q 2, the result is a row vector representation for q 1 * q 2. When the matrix Rrow(q 2 ) multiplies a row vector q 1, the result is also a row vector representation for q 1 *q 2. cos q = sin ( θ / 2) ( θ / 2) u We will represent a point p in space by the quaternion P=(0,p) We compute the desired rotation of that point by this formula: Now we want to perform two rotations on an object. This may come up in a manipulation interface where each movement of the mouse adds another rotation to the current object pose. This is very easy and numerically stable with a quaternion representation. Suppose q 1 and q 2 are unit quaternions representing two rotations. We want to perform q 1 first and then q 2. To do this, we apply q 2 to the result of q 1, regroup the product using associativity, and find that the composite rotation is represented by the quaternion q 2 *q 1. And, what we have, when computing rotation matrices from quaternions. Now we have all the tools we need to use quaternions to generate a rotation matrix for the given rotation. We have a matrix form for left-multiplication by q : And a matrix form for right-multiplication by q Therefore, the only time we need to compute the matrix is when we want to transform the object. For other operations we need only look at the quaternions. A matrix product requires many more operations than a quaternion product The resulting rotation matrix is the product of these two matrices.

6 q * P * q' = q * ( P * q') = q * (P R row (q')) = (P R row (q')) L row (q) = P (R row (q') L row (q)) = P Q row (q) So using this matrix, we could compute P rotated another way: P rotated = P * Qrow A matrix product requires many more operations than a quaternion product so we can save a lot of time and preserve more numerical accuracy with quaternions than with matrices. Therefore, the only time we need to compute the matrix is when we want to transform the object. For other operations we need only look at the quaternions. There are applications in computer vision and robot vision where quaternions could be effectively used in extracting three dimensional orientation attitude information. The importance of quaternions to graphics and games programmers is also obvious, and also there are possibilities to stimulate further research towards extending/improving current applications. 4. Conclusion Denavit and Hartenberg (1955) and later Fu et al. (1987) and Foley et al. (1990) chose 4 x 4 homogeneous matrices for transformations such as how to express object translations, rotations and scaling. The 4 x 4 homogeneous transformation matrices offer certain computational advantages. First, they treat both rotations and translations in a uniform way. Second, they can be compounded, such that complex kinematics relationships can be modeled. Finally, they are easily invertible. Before 1980 there were many attempts to use also quaternions for transformations in computer graphics, but quaternions were not so useful. But after that and nowadays there are various applications of quaternions, particularly in the context of its increasing importance in the fields of computer graphics, animation and virtual reality. The fundamental properties of quaternions have been outlined, and the mathematical preliminaries for using quaternions as a rotation operator have been presented. References [1] R. Mukundan. Quaternions: From Classical Mechanics to Computer Graphics, and Beyond. Proceedings of the 7 th Asian Technology Conference in Mathematics 2002 Pages [2] Leonard McMillan and Gary Bishop. Plenoptic Modeling: An Image- Based Rendering System. Proceedings of SIGGRAPGH 95, Los Angeles, California, August 6-11,1995. [3] Humberto Calderon and Stamatis Vassiliadis. Computer Graphics and MOLEN paradigm: a survey.

Lecture L3 - Vectors, Matrices and Coordinate Transformations

Lecture L3 - Vectors, Matrices and Coordinate Transformations S. Widnall 16.07 Dynamics Fall 2009 Lecture notes based on J. Peraire Version 2.0 Lecture L3 - Vectors, Matrices and Coordinate Transformations By using vectors and defining appropriate operations between

More information

Rotation Matrices and Homogeneous Transformations

Rotation Matrices and Homogeneous Transformations Rotation Matrices and Homogeneous Transformations A coordinate frame in an n-dimensional space is defined by n mutually orthogonal unit vectors. In particular, for a two-dimensional (2D) space, i.e., n

More information

Lecture 3: Coordinate Systems and Transformations

Lecture 3: Coordinate Systems and Transformations Lecture 3: Coordinate Systems and Transformations Topics: 1. Coordinate systems and frames 2. Change of frames 3. Affine transformations 4. Rotation, translation, scaling, and shear 5. Rotation about an

More information

LS.6 Solution Matrices

LS.6 Solution Matrices LS.6 Solution Matrices In the literature, solutions to linear systems often are expressed using square matrices rather than vectors. You need to get used to the terminology. As before, we state the definitions

More information

Solving Simultaneous Equations and Matrices

Solving Simultaneous Equations and Matrices Solving Simultaneous Equations and Matrices The following represents a systematic investigation for the steps used to solve two simultaneous linear equations in two unknowns. The motivation for considering

More information

Systems of Linear Equations

Systems of Linear Equations Systems of Linear Equations Beifang Chen Systems of linear equations Linear systems A linear equation in variables x, x,, x n is an equation of the form a x + a x + + a n x n = b, where a, a,, a n and

More information

Unified Lecture # 4 Vectors

Unified Lecture # 4 Vectors Fall 2005 Unified Lecture # 4 Vectors These notes were written by J. Peraire as a review of vectors for Dynamics 16.07. They have been adapted for Unified Engineering by R. Radovitzky. References [1] Feynmann,

More information

MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS

MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS Systems of Equations and Matrices Representation of a linear system The general system of m equations in n unknowns can be written a x + a 2 x 2 + + a n x n b a

More information

December 4, 2013 MATH 171 BASIC LINEAR ALGEBRA B. KITCHENS

December 4, 2013 MATH 171 BASIC LINEAR ALGEBRA B. KITCHENS December 4, 2013 MATH 171 BASIC LINEAR ALGEBRA B KITCHENS The equation 1 Lines in two-dimensional space (1) 2x y = 3 describes a line in two-dimensional space The coefficients of x and y in the equation

More information

Linear Algebra Notes for Marsden and Tromba Vector Calculus

Linear Algebra Notes for Marsden and Tromba Vector Calculus Linear Algebra Notes for Marsden and Tromba Vector Calculus n-dimensional Euclidean Space and Matrices Definition of n space As was learned in Math b, a point in Euclidean three space can be thought of

More information

CS 4204 Computer Graphics

CS 4204 Computer Graphics CS 4204 Computer Graphics 2D and 3D Transformations Doug Bowman Adapted from notes by Yong Cao Virginia Tech 1 Transformations What are they? changing something to something else via rules mathematics:

More information

THREE DIMENSIONAL GEOMETRY

THREE DIMENSIONAL GEOMETRY Chapter 8 THREE DIMENSIONAL GEOMETRY 8.1 Introduction In this chapter we present a vector algebra approach to three dimensional geometry. The aim is to present standard properties of lines and planes,

More information

Geometric Transformation CS 211A

Geometric Transformation CS 211A Geometric Transformation CS 211A What is transformation? Moving points (x,y) moves to (x+t, y+t) Can be in any dimension 2D Image warps 3D 3D Graphics and Vision Can also be considered as a movement to

More information

Geometric Transformations

Geometric Transformations Geometric Transformations Definitions Def: f is a mapping (function) of a set A into a set B if for every element a of A there exists a unique element b of B that is paired with a; this pairing is denoted

More information

9.4. The Scalar Product. Introduction. Prerequisites. Learning Style. Learning Outcomes

9.4. The Scalar Product. Introduction. Prerequisites. Learning Style. Learning Outcomes The Scalar Product 9.4 Introduction There are two kinds of multiplication involving vectors. The first is known as the scalar product or dot product. This is so-called because when the scalar product of

More information

Content. Chapter 4 Functions 61 4.1 Basic concepts on real functions 62. Credits 11

Content. Chapter 4 Functions 61 4.1 Basic concepts on real functions 62. Credits 11 Content Credits 11 Chapter 1 Arithmetic Refresher 13 1.1 Algebra 14 Real Numbers 14 Real Polynomials 19 1.2 Equations in one variable 21 Linear Equations 21 Quadratic Equations 22 1.3 Exercises 28 Chapter

More information

TWO-DIMENSIONAL TRANSFORMATION

TWO-DIMENSIONAL TRANSFORMATION CHAPTER 2 TWO-DIMENSIONAL TRANSFORMATION 2.1 Introduction As stated earlier, Computer Aided Design consists of three components, namely, Design (Geometric Modeling), Analysis (FEA, etc), and Visualization

More information

Torgerson s Classical MDS derivation: 1: Determining Coordinates from Euclidean Distances

Torgerson s Classical MDS derivation: 1: Determining Coordinates from Euclidean Distances Torgerson s Classical MDS derivation: 1: Determining Coordinates from Euclidean Distances It is possible to construct a matrix X of Cartesian coordinates of points in Euclidean space when we know the Euclidean

More information

Vector Notation: AB represents the vector from point A to point B on a graph. The vector can be computed by B A.

Vector Notation: AB represents the vector from point A to point B on a graph. The vector can be computed by B A. 1 Linear Transformations Prepared by: Robin Michelle King A transformation of an object is a change in position or dimension (or both) of the object. The resulting object after the transformation is called

More information

Geometry of Vectors. 1 Cartesian Coordinates. Carlo Tomasi

Geometry of Vectors. 1 Cartesian Coordinates. Carlo Tomasi Geometry of Vectors Carlo Tomasi This note explores the geometric meaning of norm, inner product, orthogonality, and projection for vectors. For vectors in three-dimensional space, we also examine the

More information

NOTES ON LINEAR TRANSFORMATIONS

NOTES ON LINEAR TRANSFORMATIONS NOTES ON LINEAR TRANSFORMATIONS Definition 1. Let V and W be vector spaces. A function T : V W is a linear transformation from V to W if the following two properties hold. i T v + v = T v + T v for all

More information

Essential Mathematics for Computer Graphics fast

Essential Mathematics for Computer Graphics fast John Vince Essential Mathematics for Computer Graphics fast Springer Contents 1. MATHEMATICS 1 Is mathematics difficult? 3 Who should read this book? 4 Aims and objectives of this book 4 Assumptions made

More information

1 Symmetries of regular polyhedra

1 Symmetries of regular polyhedra 1230, notes 5 1 Symmetries of regular polyhedra Symmetry groups Recall: Group axioms: Suppose that (G, ) is a group and a, b, c are elements of G. Then (i) a b G (ii) (a b) c = a (b c) (iii) There is an

More information

Matrix Differentiation

Matrix Differentiation 1 Introduction Matrix Differentiation ( and some other stuff ) Randal J. Barnes Department of Civil Engineering, University of Minnesota Minneapolis, Minnesota, USA Throughout this presentation I have

More information

Linear Programming. March 14, 2014

Linear Programming. March 14, 2014 Linear Programming March 1, 01 Parts of this introduction to linear programming were adapted from Chapter 9 of Introduction to Algorithms, Second Edition, by Cormen, Leiserson, Rivest and Stein [1]. 1

More information

Algebra 2 Chapter 1 Vocabulary. identity - A statement that equates two equivalent expressions.

Algebra 2 Chapter 1 Vocabulary. identity - A statement that equates two equivalent expressions. Chapter 1 Vocabulary identity - A statement that equates two equivalent expressions. verbal model- A word equation that represents a real-life problem. algebraic expression - An expression with variables.

More information

MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS. + + x 2. x n. a 11 a 12 a 1n b 1 a 21 a 22 a 2n b 2 a 31 a 32 a 3n b 3. a m1 a m2 a mn b m

MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS. + + x 2. x n. a 11 a 12 a 1n b 1 a 21 a 22 a 2n b 2 a 31 a 32 a 3n b 3. a m1 a m2 a mn b m MATRIX ALGEBRA AND SYSTEMS OF EQUATIONS 1. SYSTEMS OF EQUATIONS AND MATRICES 1.1. Representation of a linear system. The general system of m equations in n unknowns can be written a 11 x 1 + a 12 x 2 +

More information

The Matrix Elements of a 3 3 Orthogonal Matrix Revisited

The Matrix Elements of a 3 3 Orthogonal Matrix Revisited Physics 116A Winter 2011 The Matrix Elements of a 3 3 Orthogonal Matrix Revisited 1. Introduction In a class handout entitled, Three-Dimensional Proper and Improper Rotation Matrices, I provided a derivation

More information

5. Orthogonal matrices

5. Orthogonal matrices L Vandenberghe EE133A (Spring 2016) 5 Orthogonal matrices matrices with orthonormal columns orthogonal matrices tall matrices with orthonormal columns complex matrices with orthonormal columns 5-1 Orthonormal

More information

Introduction to Matrices

Introduction to Matrices Introduction to Matrices Tom Davis tomrdavis@earthlinknet 1 Definitions A matrix (plural: matrices) is simply a rectangular array of things For now, we ll assume the things are numbers, but as you go on

More information

13 MATH FACTS 101. 2 a = 1. 7. The elements of a vector have a graphical interpretation, which is particularly easy to see in two or three dimensions.

13 MATH FACTS 101. 2 a = 1. 7. The elements of a vector have a graphical interpretation, which is particularly easy to see in two or three dimensions. 3 MATH FACTS 0 3 MATH FACTS 3. Vectors 3.. Definition We use the overhead arrow to denote a column vector, i.e., a linear segment with a direction. For example, in three-space, we write a vector in terms

More information

Section 1.1. Introduction to R n

Section 1.1. Introduction to R n The Calculus of Functions of Several Variables Section. Introduction to R n Calculus is the study of functional relationships and how related quantities change with each other. In your first exposure to

More information

Pre-Algebra 2008. Academic Content Standards Grade Eight Ohio. Number, Number Sense and Operations Standard. Number and Number Systems

Pre-Algebra 2008. Academic Content Standards Grade Eight Ohio. Number, Number Sense and Operations Standard. Number and Number Systems Academic Content Standards Grade Eight Ohio Pre-Algebra 2008 STANDARDS Number, Number Sense and Operations Standard Number and Number Systems 1. Use scientific notation to express large numbers and small

More information

Origins of the Unusual Space Shuttle Quaternion Definition

Origins of the Unusual Space Shuttle Quaternion Definition 47th AIAA Aerospace Sciences Meeting Including The New Horizons Forum and Aerospace Exposition 5-8 January 2009, Orlando, Florida AIAA 2009-43 Origins of the Unusual Space Shuttle Quaternion Definition

More information

NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS

NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS NEW YORK STATE TEACHER CERTIFICATION EXAMINATIONS TEST DESIGN AND FRAMEWORK September 2014 Authorized for Distribution by the New York State Education Department This test design and framework document

More information

2. Spin Chemistry and the Vector Model

2. Spin Chemistry and the Vector Model 2. Spin Chemistry and the Vector Model The story of magnetic resonance spectroscopy and intersystem crossing is essentially a choreography of the twisting motion which causes reorientation or rephasing

More information

Linear Programming Problems

Linear Programming Problems Linear Programming Problems Linear programming problems come up in many applications. In a linear programming problem, we have a function, called the objective function, which depends linearly on a number

More information

x1 x 2 x 3 y 1 y 2 y 3 x 1 y 2 x 2 y 1 0.

x1 x 2 x 3 y 1 y 2 y 3 x 1 y 2 x 2 y 1 0. Cross product 1 Chapter 7 Cross product We are getting ready to study integration in several variables. Until now we have been doing only differential calculus. One outcome of this study will be our ability

More information

Mathematics Course 111: Algebra I Part IV: Vector Spaces

Mathematics Course 111: Algebra I Part IV: Vector Spaces Mathematics Course 111: Algebra I Part IV: Vector Spaces D. R. Wilkins Academic Year 1996-7 9 Vector Spaces A vector space over some field K is an algebraic structure consisting of a set V on which are

More information

Affine Transformations

Affine Transformations A P P E N D I X C Affine Transformations CONTENTS C The need for geometric transformations 335 C2 Affine transformations 336 C3 Matri representation of the linear transformations 338 C4 Homogeneous coordinates

More information

Section V.3: Dot Product

Section V.3: Dot Product Section V.3: Dot Product Introduction So far we have looked at operations on a single vector. There are a number of ways to combine two vectors. Vector addition and subtraction will not be covered here,

More information

Figure 1.1 Vector A and Vector F

Figure 1.1 Vector A and Vector F CHAPTER I VECTOR QUANTITIES Quantities are anything which can be measured, and stated with number. Quantities in physics are divided into two types; scalar and vector quantities. Scalar quantities have

More information

Fundamentals of Computer Animation

Fundamentals of Computer Animation Fundamentals of Computer Animation Quaternions as Orientations () page 1 Visualizing a Unit Quaternion Rotation in 4D Space ( ) = w + x + y z q = Norm q + q = q q [ w, v], v = ( x, y, z) w scalar q =,

More information

Rotation about an arbitrary axis and reflection through an arbitrary plane

Rotation about an arbitrary axis and reflection through an arbitrary plane Annales Mathematicae et Informaticae 40 (2012) pp. 175 186 http://ami.ektf.hu Rotation about an arbitrary axis and reflection through an arbitrary plane Emőd Kovács Department of Information Technology

More information

Notes on Determinant

Notes on Determinant ENGG2012B Advanced Engineering Mathematics Notes on Determinant Lecturer: Kenneth Shum Lecture 9-18/02/2013 The determinant of a system of linear equations determines whether the solution is unique, without

More information

Physics 235 Chapter 1. Chapter 1 Matrices, Vectors, and Vector Calculus

Physics 235 Chapter 1. Chapter 1 Matrices, Vectors, and Vector Calculus Chapter 1 Matrices, Vectors, and Vector Calculus In this chapter, we will focus on the mathematical tools required for the course. The main concepts that will be covered are: Coordinate transformations

More information

Exam 1 Sample Question SOLUTIONS. y = 2x

Exam 1 Sample Question SOLUTIONS. y = 2x Exam Sample Question SOLUTIONS. Eliminate the parameter to find a Cartesian equation for the curve: x e t, y e t. SOLUTION: You might look at the coordinates and notice that If you don t see it, we can

More information

Chapter 19. General Matrices. An n m matrix is an array. a 11 a 12 a 1m a 21 a 22 a 2m A = a n1 a n2 a nm. The matrix A has n row vectors

Chapter 19. General Matrices. An n m matrix is an array. a 11 a 12 a 1m a 21 a 22 a 2m A = a n1 a n2 a nm. The matrix A has n row vectors Chapter 9. General Matrices An n m matrix is an array a a a m a a a m... = [a ij]. a n a n a nm The matrix A has n row vectors and m column vectors row i (A) = [a i, a i,..., a im ] R m a j a j a nj col

More information

DEFINITION 5.1.1 A complex number is a matrix of the form. x y. , y x

DEFINITION 5.1.1 A complex number is a matrix of the form. x y. , y x Chapter 5 COMPLEX NUMBERS 5.1 Constructing the complex numbers One way of introducing the field C of complex numbers is via the arithmetic of matrices. DEFINITION 5.1.1 A complex number is a matrix of

More information

2 Session Two - Complex Numbers and Vectors

2 Session Two - Complex Numbers and Vectors PH2011 Physics 2A Maths Revision - Session 2: Complex Numbers and Vectors 1 2 Session Two - Complex Numbers and Vectors 2.1 What is a Complex Number? The material on complex numbers should be familiar

More information

Equations Involving Lines and Planes Standard equations for lines in space

Equations Involving Lines and Planes Standard equations for lines in space Equations Involving Lines and Planes In this section we will collect various important formulas regarding equations of lines and planes in three dimensional space Reminder regarding notation: any quantity

More information

Given a point cloud, polygon, or sampled parametric curve, we can use transformations for several purposes:

Given a point cloud, polygon, or sampled parametric curve, we can use transformations for several purposes: 3 3.1 2D Given a point cloud, polygon, or sampled parametric curve, we can use transformations for several purposes: 1. Change coordinate frames (world, window, viewport, device, etc). 2. Compose objects

More information

EQUATIONS and INEQUALITIES

EQUATIONS and INEQUALITIES EQUATIONS and INEQUALITIES Linear Equations and Slope 1. Slope a. Calculate the slope of a line given two points b. Calculate the slope of a line parallel to a given line. c. Calculate the slope of a line

More information

11.1. Objectives. Component Form of a Vector. Component Form of a Vector. Component Form of a Vector. Vectors and the Geometry of Space

11.1. Objectives. Component Form of a Vector. Component Form of a Vector. Component Form of a Vector. Vectors and the Geometry of Space 11 Vectors and the Geometry of Space 11.1 Vectors in the Plane Copyright Cengage Learning. All rights reserved. Copyright Cengage Learning. All rights reserved. 2 Objectives! Write the component form of

More information

Vector Math Computer Graphics Scott D. Anderson

Vector Math Computer Graphics Scott D. Anderson Vector Math Computer Graphics Scott D. Anderson 1 Dot Product The notation v w means the dot product or scalar product or inner product of two vectors, v and w. In abstract mathematics, we can talk about

More information

Current Standard: Mathematical Concepts and Applications Shape, Space, and Measurement- Primary

Current Standard: Mathematical Concepts and Applications Shape, Space, and Measurement- Primary Shape, Space, and Measurement- Primary A student shall apply concepts of shape, space, and measurement to solve problems involving two- and three-dimensional shapes by demonstrating an understanding of:

More information

Lecture 2 Matrix Operations

Lecture 2 Matrix Operations Lecture 2 Matrix Operations transpose, sum & difference, scalar multiplication matrix multiplication, matrix-vector product matrix inverse 2 1 Matrix transpose transpose of m n matrix A, denoted A T or

More information

Big Ideas in Mathematics

Big Ideas in Mathematics Big Ideas in Mathematics which are important to all mathematics learning. (Adapted from the NCTM Curriculum Focal Points, 2006) The Mathematics Big Ideas are organized using the PA Mathematics Standards

More information

Computing Euler angles from a rotation matrix

Computing Euler angles from a rotation matrix Computing Euler angles from a rotation matrix Gregory G. Slabaugh Abstract This document discusses a simple technique to find all possible Euler angles from a rotation matrix. Determination of Euler angles

More information

MATH10212 Linear Algebra. Systems of Linear Equations. Definition. An n-dimensional vector is a row or a column of n numbers (or letters): a 1.

MATH10212 Linear Algebra. Systems of Linear Equations. Definition. An n-dimensional vector is a row or a column of n numbers (or letters): a 1. MATH10212 Linear Algebra Textbook: D. Poole, Linear Algebra: A Modern Introduction. Thompson, 2006. ISBN 0-534-40596-7. Systems of Linear Equations Definition. An n-dimensional vector is a row or a column

More information

Orthogonal Projections

Orthogonal Projections Orthogonal Projections and Reflections (with exercises) by D. Klain Version.. Corrections and comments are welcome! Orthogonal Projections Let X,..., X k be a family of linearly independent (column) vectors

More information

Linear Algebra: Vectors

Linear Algebra: Vectors A Linear Algebra: Vectors A Appendix A: LINEAR ALGEBRA: VECTORS TABLE OF CONTENTS Page A Motivation A 3 A2 Vectors A 3 A2 Notational Conventions A 4 A22 Visualization A 5 A23 Special Vectors A 5 A3 Vector

More information

MATH2210 Notebook 1 Fall Semester 2016/2017. 1 MATH2210 Notebook 1 3. 1.1 Solving Systems of Linear Equations... 3

MATH2210 Notebook 1 Fall Semester 2016/2017. 1 MATH2210 Notebook 1 3. 1.1 Solving Systems of Linear Equations... 3 MATH0 Notebook Fall Semester 06/07 prepared by Professor Jenny Baglivo c Copyright 009 07 by Jenny A. Baglivo. All Rights Reserved. Contents MATH0 Notebook 3. Solving Systems of Linear Equations........................

More information

Biggar High School Mathematics Department. National 5 Learning Intentions & Success Criteria: Assessing My Progress

Biggar High School Mathematics Department. National 5 Learning Intentions & Success Criteria: Assessing My Progress Biggar High School Mathematics Department National 5 Learning Intentions & Success Criteria: Assessing My Progress Expressions & Formulae Topic Learning Intention Success Criteria I understand this Approximation

More information

Thnkwell s Homeschool Precalculus Course Lesson Plan: 36 weeks

Thnkwell s Homeschool Precalculus Course Lesson Plan: 36 weeks Thnkwell s Homeschool Precalculus Course Lesson Plan: 36 weeks Welcome to Thinkwell s Homeschool Precalculus! We re thrilled that you ve decided to make us part of your homeschool curriculum. This lesson

More information

Algebra 1 2008. Academic Content Standards Grade Eight and Grade Nine Ohio. Grade Eight. Number, Number Sense and Operations Standard

Algebra 1 2008. Academic Content Standards Grade Eight and Grade Nine Ohio. Grade Eight. Number, Number Sense and Operations Standard Academic Content Standards Grade Eight and Grade Nine Ohio Algebra 1 2008 Grade Eight STANDARDS Number, Number Sense and Operations Standard Number and Number Systems 1. Use scientific notation to express

More information

Recall the basic property of the transpose (for any A): v A t Aw = v w, v, w R n.

Recall the basic property of the transpose (for any A): v A t Aw = v w, v, w R n. ORTHOGONAL MATRICES Informally, an orthogonal n n matrix is the n-dimensional analogue of the rotation matrices R θ in R 2. When does a linear transformation of R 3 (or R n ) deserve to be called a rotation?

More information

Lecture Notes 2: Matrices as Systems of Linear Equations

Lecture Notes 2: Matrices as Systems of Linear Equations 2: Matrices as Systems of Linear Equations 33A Linear Algebra, Puck Rombach Last updated: April 13, 2016 Systems of Linear Equations Systems of linear equations can represent many things You have probably

More information

Vector has a magnitude and a direction. Scalar has a magnitude

Vector has a magnitude and a direction. Scalar has a magnitude Vector has a magnitude and a direction Scalar has a magnitude Vector has a magnitude and a direction Scalar has a magnitude a brick on a table Vector has a magnitude and a direction Scalar has a magnitude

More information

7 Gaussian Elimination and LU Factorization

7 Gaussian Elimination and LU Factorization 7 Gaussian Elimination and LU Factorization In this final section on matrix factorization methods for solving Ax = b we want to take a closer look at Gaussian elimination (probably the best known method

More information

Review Jeopardy. Blue vs. Orange. Review Jeopardy

Review Jeopardy. Blue vs. Orange. Review Jeopardy Review Jeopardy Blue vs. Orange Review Jeopardy Jeopardy Round Lectures 0-3 Jeopardy Round $200 How could I measure how far apart (i.e. how different) two observations, y 1 and y 2, are from each other?

More information

Lecture 7. Matthew T. Mason. Mechanics of Manipulation. Lecture 7. Representing Rotation. Kinematic representation: goals, overview

Lecture 7. Matthew T. Mason. Mechanics of Manipulation. Lecture 7. Representing Rotation. Kinematic representation: goals, overview Matthew T. Mason Mechanics of Manipulation Today s outline Readings, etc. We are starting chapter 3 of the text Lots of stuff online on representing rotations Murray, Li, and Sastry for matrix exponential

More information

Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE. M.Sc. in Advanced Computer Science. Friday 18 th January 2008.

Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE. M.Sc. in Advanced Computer Science. Friday 18 th January 2008. COMP60321 Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE M.Sc. in Advanced Computer Science Computer Animation Friday 18 th January 2008 Time: 09:45 11:45 Please answer any THREE Questions

More information

discuss how to describe points, lines and planes in 3 space.

discuss how to describe points, lines and planes in 3 space. Chapter 2 3 Space: lines and planes In this chapter we discuss how to describe points, lines and planes in 3 space. introduce the language of vectors. discuss various matters concerning the relative position

More information

Solving Systems of Linear Equations

Solving Systems of Linear Equations LECTURE 5 Solving Systems of Linear Equations Recall that we introduced the notion of matrices as a way of standardizing the expression of systems of linear equations In today s lecture I shall show how

More information

Continued Fractions and the Euclidean Algorithm

Continued Fractions and the Euclidean Algorithm Continued Fractions and the Euclidean Algorithm Lecture notes prepared for MATH 326, Spring 997 Department of Mathematics and Statistics University at Albany William F Hammond Table of Contents Introduction

More information

Trigonometric Functions and Equations

Trigonometric Functions and Equations Contents Trigonometric Functions and Equations Lesson 1 Reasoning with Trigonometric Functions Investigations 1 Proving Trigonometric Identities... 271 2 Sum and Difference Identities... 276 3 Extending

More information

Solving simultaneous equations using the inverse matrix

Solving simultaneous equations using the inverse matrix Solving simultaneous equations using the inverse matrix 8.2 Introduction The power of matrix algebra is seen in the representation of a system of simultaneous linear equations as a matrix equation. Matrix

More information

Vectors VECTOR PRODUCT. Graham S McDonald. A Tutorial Module for learning about the vector product of two vectors. Table of contents Begin Tutorial

Vectors VECTOR PRODUCT. Graham S McDonald. A Tutorial Module for learning about the vector product of two vectors. Table of contents Begin Tutorial Vectors VECTOR PRODUCT Graham S McDonald A Tutorial Module for learning about the vector product of two vectors Table of contents Begin Tutorial c 2004 g.s.mcdonald@salford.ac.uk 1. Theory 2. Exercises

More information

1 Solving LPs: The Simplex Algorithm of George Dantzig

1 Solving LPs: The Simplex Algorithm of George Dantzig Solving LPs: The Simplex Algorithm of George Dantzig. Simplex Pivoting: Dictionary Format We illustrate a general solution procedure, called the simplex algorithm, by implementing it on a very simple example.

More information

State of Stress at Point

State of Stress at Point State of Stress at Point Einstein Notation The basic idea of Einstein notation is that a covector and a vector can form a scalar: This is typically written as an explicit sum: According to this convention,

More information

Question 2: How do you solve a matrix equation using the matrix inverse?

Question 2: How do you solve a matrix equation using the matrix inverse? Question : How do you solve a matrix equation using the matrix inverse? In the previous question, we wrote systems of equations as a matrix equation AX B. In this format, the matrix A contains the coefficients

More information

We can display an object on a monitor screen in three different computer-model forms: Wireframe model Surface Model Solid model

We can display an object on a monitor screen in three different computer-model forms: Wireframe model Surface Model Solid model CHAPTER 4 CURVES 4.1 Introduction In order to understand the significance of curves, we should look into the types of model representations that are used in geometric modeling. Curves play a very significant

More information

Computer Graphics Labs

Computer Graphics Labs Computer Graphics Labs Abel J. P. Gomes LAB. 2 Department of Computer Science and Engineering University of Beira Interior Portugal 2011 Copyright 2009-2011 All rights reserved. LAB. 2 1. Learning goals

More information

Chapter 17. Orthogonal Matrices and Symmetries of Space

Chapter 17. Orthogonal Matrices and Symmetries of Space Chapter 17. Orthogonal Matrices and Symmetries of Space Take a random matrix, say 1 3 A = 4 5 6, 7 8 9 and compare the lengths of e 1 and Ae 1. The vector e 1 has length 1, while Ae 1 = (1, 4, 7) has length

More information

Name: Section Registered In:

Name: Section Registered In: Name: Section Registered In: Math 125 Exam 3 Version 1 April 24, 2006 60 total points possible 1. (5pts) Use Cramer s Rule to solve 3x + 4y = 30 x 2y = 8. Be sure to show enough detail that shows you are

More information

2.2 Magic with complex exponentials

2.2 Magic with complex exponentials 2.2. MAGIC WITH COMPLEX EXPONENTIALS 97 2.2 Magic with complex exponentials We don t really know what aspects of complex variables you learned about in high school, so the goal here is to start more or

More information

S on n elements. A good way to think about permutations is the following. Consider the A = 1,2,3, 4 whose elements we permute with the P =

S on n elements. A good way to think about permutations is the following. Consider the A = 1,2,3, 4 whose elements we permute with the P = Section 6. 1 Section 6. Groups of Permutations: : The Symmetric Group Purpose of Section: To introduce the idea of a permutation and show how the set of all permutations of a set of n elements, equipped

More information

Force on Moving Charges in a Magnetic Field

Force on Moving Charges in a Magnetic Field [ Assignment View ] [ Eðlisfræði 2, vor 2007 27. Magnetic Field and Magnetic Forces Assignment is due at 2:00am on Wednesday, February 28, 2007 Credit for problems submitted late will decrease to 0% after

More information

WORK SCHEDULE: MATHEMATICS 2007

WORK SCHEDULE: MATHEMATICS 2007 , K WORK SCHEDULE: MATHEMATICS 00 GRADE MODULE TERM... LO NUMBERS, OPERATIONS AND RELATIONSHIPS able to recognise, represent numbers and their relationships, and to count, estimate, calculate and check

More information

ME 115(b): Solution to Homework #1

ME 115(b): Solution to Homework #1 ME 115(b): Solution to Homework #1 Solution to Problem #1: To construct the hybrid Jacobian for a manipulator, you could either construct the body Jacobian, JST b, and then use the body-to-hybrid velocity

More information

Section 9.1 Vectors in Two Dimensions

Section 9.1 Vectors in Two Dimensions Section 9.1 Vectors in Two Dimensions Geometric Description of Vectors A vector in the plane is a line segment with an assigned direction. We sketch a vector as shown in the first Figure below with an

More information

Direct Methods for Solving Linear Systems. Matrix Factorization

Direct Methods for Solving Linear Systems. Matrix Factorization Direct Methods for Solving Linear Systems Matrix Factorization Numerical Analysis (9th Edition) R L Burden & J D Faires Beamer Presentation Slides prepared by John Carroll Dublin City University c 2011

More information

Numerical Analysis Lecture Notes

Numerical Analysis Lecture Notes Numerical Analysis Lecture Notes Peter J. Olver 5. Inner Products and Norms The norm of a vector is a measure of its size. Besides the familiar Euclidean norm based on the dot product, there are a number

More information

Dear Accelerated Pre-Calculus Student:

Dear Accelerated Pre-Calculus Student: Dear Accelerated Pre-Calculus Student: I am very excited that you have decided to take this course in the upcoming school year! This is a fastpaced, college-preparatory mathematics course that will also

More information

Introduction to Matrices for Engineers

Introduction to Matrices for Engineers Introduction to Matrices for Engineers C.T.J. Dodson, School of Mathematics, Manchester Universit 1 What is a Matrix? A matrix is a rectangular arra of elements, usuall numbers, e.g. 1 0-8 4 0-1 1 0 11

More information

Solutions to Math 51 First Exam January 29, 2015

Solutions to Math 51 First Exam January 29, 2015 Solutions to Math 5 First Exam January 29, 25. ( points) (a) Complete the following sentence: A set of vectors {v,..., v k } is defined to be linearly dependent if (2 points) there exist c,... c k R, not

More information

1 Homework 1. [p 0 q i+j +... + p i 1 q j+1 ] + [p i q j ] + [p i+1 q j 1 +... + p i+j q 0 ]

1 Homework 1. [p 0 q i+j +... + p i 1 q j+1 ] + [p i q j ] + [p i+1 q j 1 +... + p i+j q 0 ] 1 Homework 1 (1) Prove the ideal (3,x) is a maximal ideal in Z[x]. SOLUTION: Suppose we expand this ideal by including another generator polynomial, P / (3, x). Write P = n + x Q with n an integer not

More information

Metrics on SO(3) and Inverse Kinematics

Metrics on SO(3) and Inverse Kinematics Mathematical Foundations of Computer Graphics and Vision Metrics on SO(3) and Inverse Kinematics Luca Ballan Institute of Visual Computing Optimization on Manifolds Descent approach d is a ascent direction

More information

MAC 1114. Learning Objectives. Module 10. Polar Form of Complex Numbers. There are two major topics in this module:

MAC 1114. Learning Objectives. Module 10. Polar Form of Complex Numbers. There are two major topics in this module: MAC 1114 Module 10 Polar Form of Complex Numbers Learning Objectives Upon completing this module, you should be able to: 1. Identify and simplify imaginary and complex numbers. 2. Add and subtract complex

More information