Be fruitful and multiply Genesis 1:28

Size: px
Start display at page:

Download "Be fruitful and multiply Genesis 1:28"

Transcription

1 Lecture 15: Quaternions: Multiplication in the Space of Mass-Points Be fruitful and multiply Genesis 1: Vector Spaces and Division Algebras The space of mass-points is a 4-dimensional vector space: addition, subtraction, and scalar multiplication are all well-defined operations on mass-points. But what about a more universal form of multiplication? Can we multiply together two points or more generally two mass-points? In lower dimensional vector spaces, we can indeed multiply any two elements in the space. Every 1-dimensional vector space is isomorphic (equivalent) to the real number line. We can multiply any two points along the number line by the standard rules for multiplication of real numbers. Every -dimensional vector space is isomorphic to the plane. If we identify each pair of rectangular coordinates (a,b) in the plane with the complex number a + bi, then we can multiply two vectors in the plane using the standard rules for multiplication of complex numbers. Vectors in 3-dimensions are endowed with two distinct products: dot product and cross product. The dot product of two vectors is a scalar; the cross product of two vectors is a vector. When we add or subtract two vectors, we get another vector. When we say that we want to multiply two vectors, we typically mean that we also want the result to be another vector. The dot product of two vectors is not a vector, so dot product is not the kind of multiplication that we seek. The cross product of two vectors is a vector; nevertheless cross product also has some undesirable properties. Multiplication is typically associative, commutative and distributes through addition. Moreover, in order to solve simple equations, we would like to have an identity for multiplication as well as multiplicative inverses (division). Although cross product distributes through addition, the cross product is neither associative nor commutative. Moreover there is no multiplicative identity for cross product -- that is, there is no vector u such that for all vectors v, we have u v = v u = v -- since by definition u v v. Hence there can be no multiplicative inverses for cross product. In fact, in 3-dimensions there is no entirely satisfactory notion of vector multiplication (see Exercise 15.9). A division algebra (an algebra where we can perform division) is a set S where we can add, subtract, multiply, and divide any two elements in S. (One exception: we cannot divide by zero, the identity for addition.) Addition and multiplication must satisfy the usual rules: addition is associative and commutative; multiplication is associative and distributes through addition. Notice that we shall not insist that multiplication is commutative, since the multiplication that we have in mind for mass-points is not commutative. There is an identity 0 for addition and an identity 1 for multiplication so that for any element s in S

2 s + 0 = 0 + s = s s 1=1 s = s. Finally, for each element s in S, there is an inverse for addition ( s) and an inverse for multiplication (s 1 ) so that s + ( s) = ( s) + s = 0 s s 1 = s 1 s =1 (s 0). Thus in a division algebra, we can subtract and divide, as well as add and multiply. There are only three finite dimensional vector spaces that are also division algebras -- that is, there are only three dimensions in which we can add, subtract, multiply and divide -- dimensions 1,,4. These vector spaces correspond to the line (real numbers), the plane (complex numbers), and the space of mass-points (quaternions). (There is also a non-associative multiplication in dimension 8, the Cayley numbers.) We are really unbelievably lucky that 3-dimensional Computer Graphics is grounded in the 4-dimensional vector space of mass-points. In this lecture we shall define quaternion multiplication in the space of mass-points and investigate applications of quaternion multiplication to Computer Graphics. We will begin, however, with a simpler and better known example: complex multiplication for vectors in the plane. 15. Complex Numbers Addition, subtraction, and scalar multiplication are coordinate-free operations on vectors in the plane. Rectangular coordinates may be introduced in practice to perform these computations, but in principle there is no need for preferred directions -- for coordinate axes -- to define addition, subtraction, or scalar multiplication for vectors in the plane. Complex multiplication is different. For complex multiplication we must choose a preferred direction: the direction of the identity vector for multiplication. We denote this identity vector by 1 and we associate this vector with the x-axis. The unit vector perpendicular to the identity vector we denote by i and we associate this vector with the y-axis. Relative to this coordinate system for every vector v in the plane there are constants a,b such that v = a1 + bi. Typically we drop the symbol 1, and we write simply v = a + bi. (15.1) In the complex number system, i denotes 1, so i = 1. (15.) Since 1 is the identity for multiplication, we have the rules

3 1 1=1, i 1 =1 i = i, i i = 1. (15.3) Therefore if we want complex multiplication to distribute through addition, then we must define (a + b i)(c + d i) = a(c + d i) + bi(c + d i) = (ac bd) + (ad + bc)i. (15.4) Using Equation (15.4), it is easy to verify that complex multiplication is associative, commutative, and distributes through addition (see Exercise 15.1). Every non-zero complex number has a multiplicative inverse. Let v = a + bi. The complex conjugate of v, denoted by v, is defined by v = a bi. By equation (15.4) Therefore v v = a + b = v. v 1 = v v. Equation (15.4) encapsulates the algebra of complex multiplication. But what is the geometry underlying complex multiplication? Consider first multiplication with i. If v = a + bi, then i v = i(a+ bi) = b + ai. Thus if v = (a,b), then i v = ( b,a) ; hence, i v = v. Therefore multiplication by i is equivalent to rotation by 90. Also, ( 1) v = (a + bi) = a bi = v, so multiplication by 1 is equivalent to rotation by 180. There seems then to be a link between rotation and complex multiplication. Let s explore this connection further. by: Recall from Lecture 4 that the matrix which rotates vectors in the plane by the angle φ is given cos(φ) sin(φ) rot(φ) =. sin(φ) cos(φ) Let z = (x, y) = x + i y be an arbitrary vector in the plane. Then after rotation by the angle φ z new = z rot(φ) = (x y) cos(φ) sin(φ), sin(φ) cos(φ) or equivalently x new = x cos(φ) y sin(φ) 3

4 y new = x sin(φ) + y cos(φ). Now let w(φ) be the unit vector that makes an angle φ with the x-axis (see Figure 15.1). Then w(φ) = cos(φ) + i sin(φ), and w(φ)z = ( cos(φ) + isin(φ) ) x + i y + x sin(φ) + y cos(φ) i. ( ) = x cos(φ) y sin(φ) x new y new Thus, rather remarkably, multiplying the complex number z by w(φ) is equivalent to rotating the vector z by the angle φ. Moreover, since complex multiplication is associative, we can compose two rotations simply by multiplying the associated complex numbers -- that is, for all z w(φ +θ) z = w(φ) w(θ) z, so w(φ +θ) = w(φ) w(θ). Representing rotations in the plane by complex numbers is more efficient than matrix representations for rotations in the plane. To store one complex number, we need to store only two real numbers, whereas to store one matrix, we need to store four real numbers. To compose two rotations by complex multiplication requires only 4 real multiplications, whereas to compose two rotations by matrix multiplication requires 8 real multiplications. Why is rotation related so closely to complex multiplication? One explanation is that rotation in the plane closely resembles exponentiation because composing two rotations is equivalent to adding the corresponding angles. But complex multiplication is also closely related to exponentiation. Let z be an arbitrary complex number. Define Then e z =1 + z + z! + z 3 3! +. e iφ =1 + iφ + (iφ) + (iφ) 3 + (iφ)4 + (iφ)5.! 3! 4! 5! But i = 1, so substituting and collecting terms, we arrive at the following fundamental identity: Euler s Formula e iφ = 1 φ! + φ4 4! + i φ φ 3 3! + φ 5 5! = cos(φ) + i sin(φ). (15.5) Since w(φ) = cos(φ) + i sin(φ) = e iφ, 4

5 we conclude that w(φ)w(θ) = e iφ e iθ = e i(φ+θ) = w(φ +θ), so multiplying two complex numbers of unit length is equivalent to adding the angles that these vectors form with the x-axis. Multiplying a complex number z = x + i y by a complex number of unit length w = w 1 + i w is equivalent to rotating the vector z by the angle φ = arctan( w / w 1 ), since if w lies along the unit circle there is an angle φ for which w = cos(φ) + i sin(φ) (see Figure 15.1). But what happens if we multiply z by an arbitrary complex number w? If w = s, where s is a real number, then w z = sz, so the effect is to scale the vector z by the constant s. Thus both rotation and scaling can be represented by complex multiplication. Finally, if w = w 1 + i w is an arbitrary complex number, then we can write w is polar form as w = re iφ = rw(φ) where r = w and φ = arctan(w / w 1 ). Hence w z = rw(φ) z, so the effect of multiplying z by w is to rotate z by the angle φ and to scale the result by the constant r. Thus any conformal transformation of vectors in the plane can be represented by multiplication with a single complex number. y axis w = cos(φ) + sin(φ) i φ x axis Figure 15.1: Multiplying a complex number z by a unit vector w = cos(φ) + i sin(φ) is equivalent to rotating the vector z by the angle φ. 5

6 15.3 Quaternions Quaternions are just another name for the entities in the 4-dimensional space of mass-points, just as complex numbers are just another name for the entities in the -dimensional space of vectors in the plane. In fact, quaternions are an extension of complex numbers to 4-dimensions, so we can multiply two quaternions in a manner similar to the way that we can multiply two complex numbers Quaternion Multiplication To multiply two complex numbers we need to choose a preferred direction: the direction of the identity vector for complex multiplication. Similarly, to multiply two quaternions, we must choose a preferred mass-point in the space of mass-points: the identity for quaternion multiplication. We shall denote this special point by O, and we will think of this point as the origin, not in the 4- dimensional vector space of mass-points, but rather in the 3-dimensional affine space of affine points. Thus O is a special mass-point with mass m =1. The choice of the point O is arbitrary, just as the choice of the origin is arbitrary, but to perform quaternion multiplication, we must fix O once and for all. The three-dimensional vectors lie in the quaternion subspace orthogonal to O. Thus if we were to introduce rectangular coordinates into the 4-dimensional space of mass-points, then we would have O = (0,0,0,1), and the 3-dimensional vectors v would be written as v = (v 1,v,v 3,0) or equivalently v = v 1 i + v j + v 3 k, where i, j, k are the unit vectors along the x, y,z coordinate axes. Every mass-point can be written as a scalar mass m times the affine point O plus a vector v. For suppose that (mp,m) is a mass-point with mass m. Then (mp,m) mo = (mp,m) (morigin,m) = ( m(p Origin),0). Setting v = ( m(p Origin),0), we have (mp,m) = mo + v. (15.6) Interpreted in terms of coordinates, Equation (15.6) means that every quaternion q can be written as q = (q 1,q,q 3,q 4 ) or equivalently q = q 4 O + q 1 i + q j + q 3 k. (15.7) In many texts, the letter O is dropped, and quaternions are written as q = q 4 + q 1 i + q j + q 3 k. (15.8) In this notation, a quaternion q seems to be a weird kind of hermaphrodite, a scalar q 4 added to a vector q 1 i + q j + q 3 k. In fact, there are no mysterious hermaphrodites; the quaternion q in Equation (15.8) is simply a mass-point with mass q 4. Quaternion multiplication is defined by setting (ao + u)(bo+v) = (ab u v)o + (b u + av + u v). (15.9) Notice how the vector products -- dot product, cross product, and scalar product -- all appear in the 6

7 formula for quaternion multiplication. Except for the choice of the special point O, quaternion multiplication is coordinate-free, since dot product, cross product and scalar product are all coordinate-free. Using Equation (15.9) it is straightforward, though somewhat tedious, to check that quaternion multiplication is associative and distributes through addition (see Exercise 15.6). Notice, however, that quaternion multiplication is not commutative, since cross product is anticommutative. The point O is the identity for quaternion multiplication because by Equation (15.9) O(bO +v) = bo + v = (bo + v)o. In particular, O = O. Similarly, it is easy to verify from Equation (15.9) that the basis vectors i, j, k multiply according the the following rules: i = j = k = O and i j = k = j i, j k = i = k j, k i = j = ik. (15.10) More generally, if u,v are 3-dimensional vectors, then by Equation (15.9) uv = (u v)o + u v. Thus the product of two vectors u,v in 3-dimensions is a 4-dimensional mass-point with mass m = u v. In particular so Thus u = (u u)o = u O, (15.11) u 1 = u u. u = 1 u = O and u 1 = u. (15.1) Every non-zero quaternion has a multiplicative inverse. Let q = m q O + v q. The conjugate of q, denoted by q, is defined by q = m q O v q. By equation (15.9) qq = ( m q + vq v q )O. But recall that in quaternion space v q O, so by the Pythagorean theorem m q + vq v q = q. Hence qq = q O. (15.13) 7

8 Therefore q 1 = q q. In terms of coordinates, if q = (q 1,q,q 3,q 4 ), then q = q 4 O + q 1 i + q j + q 3 k q = q 4 O q 1 i q j q 3 k q = q 1 + q + q3 + q4. Since every quaternion can be written as q = m q O + v q, every unit quaternion can be expressed as q(n,θ ) = cos(θ) O +sin(θ )N, (15.14) where cos(θ ) = m q is the mass, N is a unit vector, and sin(θ) N = v q. Thus for unit quaternions q(n,θ ), the conjugate is given by q (N,θ ) = cos(θ )O sin(θ )N = q(n, θ ) (15.15) We close this section with the following important results about conjugates and lengths. Proposition 15.1: (pq) = q p (15.16) Proof: Let p = m p O + v p and q = m q O + v q. Then pq = (m p O + v p )(m q O+v q ) = (m p m q v p v q )O + (m q v p + m p v q + v p v q ) q p = (m q O v q )(m p O v p ) = (m q m p v q v p )O + ( m q v p m p v q + v q v p ). Comparing the right hand sides of these two equations and recalling that the cross product is anticommutative, we conclude that (pq) = q p. Corollary 15.: p q = p q (15.17) Proof: By Proposition 15.1 and Equation (15.13) p q O = (p q)(pq) = (p q)(q p ) = p(q q )p = p q O. Hence since length is non-negative p q = p q. With this brief introduction to quaternion algebra, we are now ready to turn our attention to the geometric applications of quaternion multiplication. 8

9 15.3. Quaternion Representations for Conformal Transformations Quaternion multiplication can be used to model rotations of vectors in 3-dimensions much like complex multiplication can be used to model rotations of vectors in the plane. In fact, quaternion multiplication can be used to model any conformal transformation -- rotation, mirror image, and uniform scaling -- of vectors in 3-dimensions. Multiplication by unit quaternions is an isometry in the 4-dimensional space of mass-points because by Corollary 15. the length of the product of two quaternions is equal to the product of their lengths. Hence multiplication by unit quaternions does not affect length, so we can expect multiplication by unit quaternions to represent rotations in 4-dimensions. We shall now show how to represent rigid motions in 3-dimensions by composing two rotations -- that is, two quaternion multiplications -- in 4-dimensions To understand how this works, we first need to understand how multiplication by unit quaternions represents rotations in 4-dimensions. To begin, observe that the quaternions contain many planes isomorphic (algebraically identical) to the complex plane, where the connection between multiplication and rotation is well understood. In fact, if N is any unit vector, then by Equation (15.1) Since N = O. N O, O = O, O N = N O = N, the plane in 4-dimensions determined by the two quaternions O,N behaves exactly like the complex plane -- that is, multiplication by the unit quaternion q(n,θ ) = cos(θ) O +sin(θ )N represents rotation by θ in the plane of O,N (see Figure 15.). Indeed we have the following results. Lemma 15.1: Let N be a unit vector. Then i. q(n, θ ) q(n, φ ) =q(n, θ +φ ) ii. q(n, θ ) q(n, φ ) =q(n, φ) q(n, θ ) Proof: To prove i, we simply apply quaternion multiplication and the trigonometric identities for the sine and the cosine of sum of two angles: ( )( cos(φ)o + sin(φ) N ) ( ) N i. q(n, θ ) q(n, φ) = cos(θ)o +sin(θ) N = ( cos(θ )cos(φ) sin(θ)sin(φ) )O + sin(θ )cos(φ) + cos(θ )sin(φ) = cos(θ + φ)o + sin(θ + φ)n = q(n, θ +φ). ii. Follow immediately from i. 9

10 N axis y axis N q(n,θ ) = cos(θ )O +sin(θ ) N i e iθ = cos(θ ) + isin(θ) θ O axis O θ x axis 1 (a) the plane O, N (b) the complex plane Figure 15.: For any unit vector N, (a) the plane determined by O, N is isomorphic to (b) the complex plane: O 1 and N i because N O, O = O, N = O, O N = N O = N. Thus q(n,θ ) = cos(θ) O +sin(θ )N e iθ = cos(θ ) + i sin(θ ), so multiplication by q(n,θ ) represent rotation by θ in the plane of O,N. Since multiplication by a unit quaternion is an isometry, the unit quaternions q(n,θ ) represent rotations in 4-dimensions. By Lemma 15.1, we understand how q(n,θ ) rotates quaternions in the plane determined by O,N because in this plane multiplication by q(n,θ ) behaves just like multiplication by e iθ in the complex plane. But to fully understand how multiplication by q(n,θ ) affects arbitrary quaternions, we still need to understand how q(n,θ ) affects quaternions in the plane perpendicular to O,N. The key observations are simply that: p O, N q(n, θ)p, p q(n,θ ) O, N v O, N q(n, θ)v, v q(n, θ) O, N That is, q(n,θ ) maps each of these planes -- the plane parallel to O,N and the plane perpendicular to O,N -- into themselves. The first observation follows immediately from Lemma The second observation holds because multiplication by unit quaternions is an isometry and hence preserves angles; therefore v O, N q(n, θ)v q(n, θ)o, q(n, θ)n q(n, θ)v q(n, θ), q(n, θ + π / ) v O, N v q(n, θ) O q(n, θ), N q(n, θ ) q(n, θ)v q(n, θ ), q(n, θ + π / ). 10

11 Thus since every quaternion can be decomposed into a quaternion in the plane of O,N and vector in the plane perpendicular to O,N, the essential insight is that we can study the rotations in 4-dimensions induced by the unit quaternions q(n,θ ) by studying the effect of q(n,θ ) in the plane of O,N, where by Lemma 15.1 we know that multiplication is commutative, and by studying the effect of q(n,θ ) in the complementary plane of vectors perpendicular to O, N, where we know that multiplication cannot be commutative, since otherwise multiplication with q(n,θ ) would commute with every quaternion. The different effects of q(n,θ ) in these two complimentary planes will also allow us to use quaternion multiplication to model rotations in 3-dimensions. Before we proceed, we introduce the following notation: L q ( p) = q p (left multiplication by q) R q ( p) = p q (right multiplication by q) The functions L q ( p) and R q ( p) are linear transformation, since quaternion multiplication distributes through addition. We also introduce the following sandwiching operators that measure the non-commutativity of quaternion multiplication: T q (p) = q p q = L q R q (p) S q (p) = q pq = L q R q ( p) ( ) (sandwiching p with q) ( ) (sandwiching p between q and q ) The functions T q (p) and S q (p) are also linear transformations because they are composites of linear transformations. We shall see shortly that sandwiching plays a central role in the use of quaternions for computing rotations and mirror images in 3-dimensions. Proposition 15.: Rotation in the Plane of O, N Let N = unit vector p = quaternion in the plane of O, N Then i. L q( N, θ ) (p) = q(n,θ) p rotates p by the angle θ in the plane of O, N ii. R q(n,θ ) (p) = p q(n,θ) rotates p by the angle θ in the plane of O, N iii. R q (N,θ) p = p q (N, θ) rotates p by the angle θ in the plane of O, N Proof: i, ii. Follow immediately from Lemma 1. iii Follows immediately from ii and Equation (15.15). 11

12 Corollary 15.: Sandwiching in the Plane of O, N Let N = unit vector p = quaternion in the plane of O, N Then i. T q( N,θ) ( p) = q(n, θ) p q(n, θ ) rotates p by the angle θ in the plane of O, N ii. S q( N,θ) ( p) = q(n, θ) p q (N, θ ) is the identity on p. Proof: This result follow immediately from Proposition 15.. Proposition 15.3: Rotation in the Plane Perpendicular to O, N Let N = a unit vector v = vector in the plane O, N Then i. L q( N,θ ) (v) = q(n,θ) v rotates v by the angle θ in the plane O, N ii. R q(n, θ ) (v) = v q(n,θ) rotates v by the angle θ in the plane O, N iii. R q (N, θ) (v) = v q (N,θ ) rotates v by the angle θ in the plane O, N Proof: To prove these results, we simply apply quaternion multiplication and observe that N v N, v. Moreover since v N and N = 1, we also have N v = v (see Figure 15.3). i. q(n,θ ) v = ( cos(θ)o +sin(θ) N )v = cos(θ)v +sin(θ) N v ( ) = cos(θ )v +sin(θ )v N = cos(θ)v sin(θ) N v ( ) = cos(θ )v sin(θ )v N = cos(θ)v + sin(θ )N v ii. v q(n,θ ) = v cos(θ )O +sin(θ )N iii. v q (N,θ ) = v cos(θ )O sin(θ )N N v q(n,θ)v θ cos(θ) θ sin(θ) v sin(θ) vq(n,θ) Figure 15.3: Rotation by the angle ±θ in the plane O, N. 1

13 Corollary 15.3: Sandwiching in the Plane Perpendicular to O, N Let N = a unit vector v = vector in the plane O, N Then i. T q( N, θ) (v) = q(n,θ) v q(n, θ ) is the identity on v ii. S q( N, θ) (v) = q(n,θ) v q (N,θ ) rotates v by the angle θ in the plane O, N. Proof: This result follow immediately from Proposition For easy reference, we summarize the results of Propositions 15., 15.3 and Corollaries 15., 15.3 in Figures N q(n,θ ) p q (N,θ) p p q( N,θ) pq (N,θ ) q(n,θ) v v q (N,θ ) v N q (N,θ) v v q(n,θ) O v (a) the plane of O, N (b) the plane perpendicular to O, N Figure 15.4: In (a) the plane of O, N, multiplication by q(n,θ ) on the left or the right rotates quaternions p counterclockwise by the angle angle θ, whereas multiplication by the conjugate q (N,θ ) on the left or the right rotates quaternions p in the opposite clockwise direction by the angle θ. But in (b) the plane of vectors perpendicular to the plane O, N, multiplication by q(n,θ ) on the left or by its conjugate q (N,θ ) on the right rotates vectors v counterclockwise by the angle angle θ, whereas multiplication by q(n,θ ) on the right or by its conjugate q (N,θ ) on the left rotates vectors v in the opposite clockwise direction by the angle θ. 13

14 N v N q(n,θ ) p pq (N,θ) q(n,θ) v v q (N,θ ) O v (a) the plane of O, N (b) the plane perpendicular to O, N Figure 15.5: Rotation. In (a) the plane of O, N, the rotation induced by q(n,θ ) is canceled by the rotation induced by its conjugate q (N,θ ), whereas in (b) the plane of vectors perpendicular to the plane O, N, the rotation induced by q(n,θ ) is reinforced by the rotation induced by its conjugate q (N,θ ). Thus sandwiching a vector v between q(n,θ ) and q (N,θ ) rotates the component of v perpendicular to N by the angle θ and leaves the component of v parallel to N unchanged. N v N q(n,θ ) p pq(n,θ) q(n,θ) v v q(n,θ ) O v (a) the plane of O, N (b) the plane perpendicular to O, N Figure 15.6: Mirror Image. In (a) the plane of O, N, the rotation induced by multiplication with q(n,θ ) on the left is reinforced by the rotation induced by multiplication with q(n,θ ) on the right, whereas in (b) the plane of vectors perpendicular to the plane O, N, the rotation induced by multiplication with q(n,θ ) on the left is canceled by the rotation induced by multiplication with 14

15 q(n,θ ) on the right. Thus sandwiching a vector v between q(n,θ ) leaves the component of v perpendicular to N unchanged and rotates the component of v parallel to N by the angle θ. Thus when θ = π /, q(n,θ ) = N, and sandwiching with N induces mirror image in the plane perpendicular to N. Since every quaternion can be decomposed into a quaternion in the plane of O,N and a vector in the plane perpendicular to O,N, Propositions 15. and 15.3 elucidate how multiplication by the quaternions q(n,θ ) on the left or the right rotates other quaternions in 4-dimensions. Corollaries 15. and 15.3 explain the effect of sandwiching on quaternions. Now observe that for sandwiching we have the following results: In the Plane of O, N T q( N,θ) ( p) = q(n,θ) p q(n,θ ) rotates p by the angle θ in the plane of O, N S q( N,θ) ( p) = q(n,θ) p q (N,θ ) is the identity on p ROTATION of vectors in the plane N In the Plane O, N S q( N, θ) (v) = q(n,θ) v q (N,θ ) rotates v by the angle θ in the plane O, N T q( N, θ) (v) = q(n,θ) v q(n, θ ) is the identity on v MIRROR IMAGE in the plane N These result invite us to use sandwiching to perform rotation and mirror image on vectors in 3- dimensions. For rotation, S q( N, θ) leaves vectors parallel to N fixed and rotates vectors in the plane perpendicular to N through the angle θ. Therefore to rotate vectors w by the angle θ around the axis N, we need to use the function S q( N, θ /). Theorem 15.1: Sandwiching Gives Rotations in 3-D Let N = unit vector w = vector in 3-dimension (i.e. a quaternion O) Then S q( N,θ /) (p) = q(n,θ / ) p q (N,θ / ) rotates w by the angle θ around the axis N. 15

16 Proof: Let Then w = component of w parallel to N w = component of w perpendicular to N S q( N,θ /) (w ) = q(n, θ / ) w q (N, θ / ) = w (Corollary 15.) S q( Nθ / ) (w ) = q(n, θ / ) w q (N, θ / ) rotates w by the angle θ around the axis N. (Corollary 15.3) Moreover, since S q( N,θ /) is a linear transformation and w = w + w, S q( N,θ /) (w) = S q( N,θ /) (w ) + S q(n,θ / ) (w ). Thus sandwiching has the same effect on w as rotating w by the angle θ around the axis N. To compute the mirror image of a vector w in the plane perpendicular to N, notice that by Corollary 15.3 T q( N, θ) is the identity on vectors perpendicular to N. Therefore to compute mirror image in the plane perpendicular to N, we need only find an angle θ for which T q( N, θ) maps N to N. Since T q( N, θ) rotates N by the angle θ, the angle we seek is θ = π /. But q(n,π / ) = cos(π / ) + sin(π / ) N = N. Therefore we are led to the following result. Theorem 15.: Sandwiching with N Gives Mirror Image in 3-D Let N = unit vector w = vector in 3-dimension (i.e. a quaternion O) Then T N (w) = N w N = S N (w) is the mirror image of w in the plane N. Proof: Let w = component of w parallel to N w = component of w perpendicular to N Since N = cos(π / ) + sin(π / )N = q(n,π / ) 16

17 T N (w ) = N w N = q(n,π / ) w q(n,π / ) = T q(n,π /) (w ) = w (Corollary 15.) T N (w ) = N w N = q(n,π / ) w q(n, π / ) = T q(n,π /) (w ) = w (Corollary 15.3) Moreover, since T q( N,π /) is a linear transformation and w = w + w, T N (w) = T q( N,π /) (w) = T q(n,π /) (w ) + T q(n, π/ ) (w ) = T N (w ) + T N (w ) Thus sandwiching with N has the same effect on the vector w as taking the mirror image of the vector w in the plane perpendicular to N. As a consequence of Theorems 15.1 and 15., every rigid motion on vectors in 3-dimensions -- every rotation or mirror image -- is the composite of two rotations in 4-dimensions: one rotation represented by multiplication on the left and the other rotation represented by multiplication on the right. The trick is simply to balance these rotations in the planes parallel and perpendicular to O,N. In the plane parallel to O,N, multiplication by q(n,θ ) on both the left and the right represents counterclockwise rotation by the angle θ. But in the plane perpendicular to O,N, multiplication by q(n,θ ) on the left represents counterclockwise rotation by the angle θ, whereas multiplication by q(n,θ ) on the right represent clockwise rotation by the angle θ. Thus these rotation angles add in the plane parallel to O,N and subtract in the plane perpendicular to O,N. We simply take advantage of these additions and subtractions to cancel the rotation in the appropriate plane in order to produce either rotation around the axis vector N or mirror image in the plane perpendicular to the vector N. Moreover we have the following result which allows us to compose to rotations by multiplying the corresponding unit quaternions. Proposition 15.3: (S p S q )(v) = S pq (v) (15.18) Therefore composing two rotations is equivalent to multiplying two unit quaternions. Proof: By Proposition 151: (S p S q )(v) = S p S q (v) ( ) = S p q v q ( ) = p q v q p = (p q) v (pq) = S pq (v). Finally we observe that we can also perform uniform scaling by sandwiching. Theorem 15.3: S c O (v) = c v. Thus v can be scaled by the factor c by sandwiching v with c O. Proof: S c O (v) = c O v c O = c v. 17

18 Theorem 15.4: Every conformal transformation of vectors in 3-dimensions can be modeled by sandwiching with quaternions. Proof: This result follows from Theorems Conformal transformations of vectors in 3-dimensions can be computed by sandwiching the vectors with the appropriate quaternions. But what about conformal transformations on points in 3- dimensions? To rotate points about arbitrary lines, or to mirror points in arbitrary planes, or to scale points uniformly about arbitrary points, we cannot simply sandwich the points we wish to transform with some appropriate quaternion (see Exercise 15.5). Recall, however, that rotation, mirror image, and uniform scaling, all have a fixed point Q of the transformation. Since P = Q + (P Q), we can compute conformal transformations on affine points P by using quaternions to transform the vectors P Q and then adding the resulting vectors to Q. In this way, quaternions can be applied to compute conformal transformation on points as well as on vectors Quaternions vs. Matrices We now have two ways to represent conformal transformations on vectors in 3-dimensions: 3 3 matrices and quaternions. Here we shall compare and contrast some of the advantages and disadvantages of quaternion and matrix representations for conformal transformations. A 3 3 matrix contains 9 scalar entries, whereas a quaternion can be represented by 4 rectangular coordinates. Thus if memory is at a premium, quaternions are more than twice as efficient as matrices. On the other hand, by Equation (15.9) to compute the product of two quaternions requires 16 real scalar multiplications: 6 for the cross product, 3 for the dot product, 6 for the two scalar products, and one for the product of the two scalar masses. Similarly, since a vector has zero mass, the product of a quaternion and a vector requires 1 scalar multiplications, since the product of the masses as well as one of the scalar products is zero. Sandwiching a vector with a quaternion computes a product of a quaternion with a vector followed by the product of a quaternion with a quaternion, so the total cost for one conformal transformation using quaternions is = 8 scalar multiplications, whereas the cost for multiplying a vector by a 3 3 matrix is only 9 scalar multiplications. Thus matrices are more than 3 times as fast as quaternions for computing arbitrary conformal transformations. But there is an additional computational consideration. To compose two transformations by quaternion multiplication requires 16 scalar multiplications, whereas to compose two transformations by matrix multiplication requires 7 scalar multiplications. Therefore quaternion multiplication is more than 1.5 times faster than matrix multiplication for composing conformal transformations. Thus some computations favor quaternions, whereas others favor matrices. We summarize these tradeoffs for both memory and speed in Table 1. 18

19 memory transformation composition quaternions 4 scalars 8 multiplies 16 multiplies 3 3 matrices 9 scalars 9 multiplies 7 multiplies Table 1: Tradeoffs between speed and memory for quaternions and 3 3 matrices Avoiding Distortion Aside from considerations of memory and speed, one of the main advantages of quaternions over matrices is avoiding distortions that arise from numerical inaccuracies that are inevitably introduced by floating point computations. For any 3 3 matrix A representing an affine transformation, i new i j new = j A. k new k Since the matrix with rows i, j, k is the identity matrix, we conclude that i new A = j new. (15.19) k new Hence the rows of A represent the images of the unit vectors i, j, k along the coordinate axes. Thus if a 3 3 matrix A represents a conformal transformation, then the rows of A must be mutually orthogonal vectors, since conformal transformations preserve angles and the original vectors i, j, k are mutually orthogonal. To compose conformal transformations, we must multiply matrices. But the entries of these matrices -- especially rotation matrices which contain values of sines and cosines -- are typically represented by floating point numbers. Therefore after composing several conformal transformations, the rows of the product matrix will no longer be mutually orthogonal vectors due to numerical inaccuracies introduced by floating point computations. Thus these matrices no longer represent conformal transformations, so applying these matrices will distort angles in the image. Quaternions avoid this problem. To compose conformal transformations, we multiply the corresponding quaternions. Since every quaternion represents a conformal transformation, computing transformations by sandwiching with quaternions will never distort angles. Suppose, however, that we want to compose only rotations. Composing rotations by matrix multiplication, we will generate distortions in both lengths and angles due to numerical inaccuracies 19

20 introduced by floating point computations. We need to renormalize the resulting matrix so that the rows are mutually orthogonal unit vectors, but it is not clear how to perform this normalization. This normalization, however, is easy to perform with quaternions. Rotations are represented by unit quaternions. When we compose rotations by multiplying unit quaternions, the result may no longer be a unit quaternion due to floating point computations. But we can normalize the resulting quaternion q simply by dividing by its length q. The resulting quaternion q/ q is certainly a unit quaternion, so this normalization avoids distorting either lengths or angles in the image Key Frame Animation Quaternions have one additional advantage over matrices: quaternions can be used to interpolate in between frames for key frame animation. In key frame animation, an artist draws only a few key frames in the scene, and an animator must interpolate intermediate frames to make the animation look natural. Consider an object tumbling through a scene. An artist will typically draw only a few frames representing rotations of the object at certain key times. An animator must then find intermediate rotations, so that the tumbling appears smooth. Suppose that from the artist s drawing we know the rotations R 0 and R 1 at times t = 0 and t =1. How do we find the appropriate intermediate rotations at intermediate times? If the rotations R 0,R 1 are represented by 3 3 matrices, then we seek intermediate rotation matrices R(t) for 0 < t <1. We might try linear interpolation and set R(t) = (1 t)r 0 + t R 1. The problem with this approach is that the matrices R(t) are no longer rotation matrices because the rows of these matrices are no longer mutually orthogonal unit vectors. Thus the matrices R(t) will introduce undesirable distortions into the animation. Alternatively, we could use unit quaternions q 0,q 1 to represent these two rotations. The quaternion generated by linear interpolation q(t) = (1 t)q 0 + t q 1 is no longer a unit quaternion, but we can adjust the length of q(t) by dividing by q(t). Now q(t)/ q(t) is a unit quaternion representing an intermediate rotation. Unfortunately, the tumbling motions generated by this approach will not appear smooth because linear interpolation does not generate uniformly spaced quaternions -- that is, if φ is the angle between q 0 and q 1, then t φ is not generally the angle between q 0 and q(t)/ q(t). 0

21 To correct for this problem, we apply spherical linear interpolation (SLERP, see Lecture 11) -- that is, we set ( ) sin(φ) sin (1 t)φ q(t) = slerp(q 0,q 1,t) = q 0 + sin ( tφ ) sin(φ) q 1, (15.0) where φ is the angle between q 0 and q 1. Recall that SLERP guarantees that if q 0 and q 1 are unit quaternions, then q(t) is also a unit quaternion, and if φ is the angle between q 0 and q 1, then t φ is the angle between q 0 and q(t). Thus spherical linear interpolation applied to quaternions generates the appropriate intermediate rotations for key frame animation Conversion Formulas Since we have two ways to represent conformal transformations on vectors in 3-dimensions matrices and quaternions -- and since each of these representations is superior for certain applications, it is natural to develop formulas to convert between these two representations. If a quaternion represents scaling along with rotation, the scale factor can be retrieved from the magnitude of the quaternion. Similarly if a 3 3 matrix is a composite of rotation and uniform scaling, the scale factor can be retrieved from the determinant of the matrix. Therefore we can easily retrieve these scale factors, and we can always normalize quaternions to have unit length and conformal matrices to have unit determinant. Unit quaternions and 3 3 conformal matrices with unit determinant represent rotations. Since, as we have just seen in Sections and , rotations embody the most important applications of quaternions to Computer Graphics, we will concentrate here on converting between different representations for rotations. Consider a rotation around the unit axis vector N by the angle φ. The rotation matrix (Lecture 13) and the unit quaternion (Section 15.3., Theorem 15.1) that represent this rotation are given by Rot(N,φ) = (cosφ) I + (1 cosφ)( N T N) + (sinφ)(n _) (15.1) q(n,φ / ) = cos(φ / )O + sin(φ / )N. (15.) To convert between these two representations for rotation, we shall make extensive use of the following half angle and double angle formulas for sine and cosine (see Exercise 15.3): cos ( φ / ) = 1 + cosφ sin (φ / ) = 1 cosφ sin(φ) = sin(φ / )cos(φ / ) Suppose that we are given the rotation matrix Rot(N,φ) = (cosφ) I + (1 cosφ)( N T N) + (sinφ)(n _) = (R i, j ) 1

22 and we want to find the corresponding unit quaternion q(n,φ / ) = cos(φ / )O + sin(φ / )N. Then we need to find cos(φ / ) and sin(φ / )N. Expanding Equation (15.1) in matrix form yields: cosφ + (1 cosφ)n 1 (1 cosφ)n 1 N + sinφ N 3 (1 cosφ)n 1 N 3 sinφ N Rot(N,φ) = (1 cosφ)n 1 N sinφ N 3 cosφ + (1 cosφ) N (1 cosφ) N N 3 + sinφ N 1. (1 cosφ)n 1 N 3 + sinφ N (1 cosφ)n N 3 sinφ N 1 cosφ + (1 cosφ)n 3 (15.3) Since N is a unit vector N 1 + N + N3 = N N =1. Therefore summing the diagonal entries of Rot(N,φ) gives R 1,1 + R, + R 3,3 = 3 cosφ +1 cosφ =1 + cosφ. Solving for cosφ, we find that cosφ = R 1,1 + R, + R 3,3 1. (15.4) But by the half angle formula cos( φ / ) = 1 + cosφ. Therefore by Equation (15.4) cos( φ / ) = R 1,1 + R, + R 3,3 +1. (15.5) But To find sin(φ / )N, observe from Equation (15.3) that ( ). (15.6) sin(φ)n = R,3 R 3,, R 3,1 R 1,3, R 1, R,1 sin(φ) = sin(φ / )cos(φ / ). Substituting this result into Equation (15.6) and solving for sin(φ / )N yields ( ) sin(φ / )N = R,3 R 3,, R 3,1 R 1,3, R 1, R,1 4 cos(φ / ) Thus by Equations (15.5) and (15.7). (15.7) q(n,φ / ) = R 1,1 + R, + R 3,3 +1 O + (R,3 R 3, )i + ( R 3,1 R 1,3 ) j + (R 1, R,1 )k. R 1,1 + R, + R 3,3 +1 (15.8)

23 Conversely, suppose that we are given the quaternion q(n,φ / ) = cos(φ / )O + sin(φ / )N = (q 1,q,q 3,q 4 ) (15.9) and we want to find the matrix Rot(N,φ) = (cosφ) I + (1 cosφ)( N T N) + (sinφ)(n _). Then we need to compute the three matrices (cosφ)i, (1 cosφ)(n T N), (sinφ)(n _). By the half angle formula cos(φ) = cos (φ / ) 1. Thus by Equation (15.9), since q(n,φ) is a unit quaternion, so cos(φ) = q 4 1 = q4 q1 q q3, q 4 q1 q q3 0 0 cos(φ)i = 0 q 4 q1 q q3 0. (15.30) 0 0 q 4 q1 q q3 Moreover, since by the half angle formula sin 1 cos(φ) (φ / ) =, it follows that (1 cosφ)( N T N) = sin(φ / )N T sin(φ / )N. Hence by Equation (15.9) (1 cosφ)( N T N) = (q 1,q,q 3 ) T (q 1,q,q 3 ), so q 1 q 1 q q 1 q (1 cosφ)( N T 3 N) = q 1 q q q q 3. (15.31) q 1 q 3 q q 3 q 3 Finally since sin(φ) = sin(φ / )cos(φ / ), we have (sinφ)n = sin(φ / )cos(φ / )N. Hence again by Equation (15.9) (sinφ)n = q 4 (q 1,q,q 3 ), so 0 q 4 q 3 q 4 q (sinφ)n _ = q 4 q 3 0 q 4 q 1. (15.3) q 4 q q 4 q 1 0 Adding together Equations (15.30), (15.31), (15.3) yields 3

24 q 4 + q1 q q3 q 1 q + q 3 q 4 q 1 q 3 q q 4 Rot(N,φ) = q 1 q q 3 q 4 q 4 q1 + q q3 q q 3 + q 1 q 4. (15.33) q 1 q 3 + q q 4 q q 3 q 1 q 4 q 4 q1 q + q Summary Complex numbers can be used to represent vectors in the plane. A vector z = (x, y) in the xy - plane can be rotated through the angle φ by multiplying the complex number z = x + i y with the complex number w(φ) = e iφ = cos(φ) + i sin(φ), which corresponds to the unit vector that makes an angle φ with the x-axis. Similarly, the vector z = (x, y) can be scaled by the factor s by multiplying the complex number z = x + y i by the real number s. Thus every conformal transformation of vectors in the plane can be represented by multiplication with a single complex number w = w 1 + i w, where s = w is the scale factor and φ = arctan w / w 1 ( ) is the angle of rotation. Quaternions are complex numbers on steroids. Quaternion multiplication is an extension of complex multiplication from the -dimensional space of vectors in the plane to the 4-dimensional space of mass-points. The product of two quaternions incorporates dot product, cross product and scalar product and is given by the formula (ao + u)(bo+v) = (ab u v)o + (b u + av + u v), where O represents the origin of the points in 3-dimensional affine space. The point O is the identity for quaternion multiplication, so O = O, and the basis vectors i, j, k multiply according the the following rules: i = j = k = O and i j = k = j i, j k = i = k j, k i = j = ik. Quaternion multiplication is associative and distributes through addition, but quaternion multiplication is not commutative. The length of the product of two quaternions is equal to the product of their lengths. Therefore multiplication by quaternions is a conformal transformation, and multiplication by unit quaternions is an isometry. Thus multiplication by unit quaternions represents rotations in 4- dimensions. Quaternion multiplication in 4-dimensions can be harnessed to model conformal transformations of vectors in 3-dimensions by sandwiching a vector v between a quaternion q and its conjugate q : S q (v) = q v q. In particular, we have the following formulas for rotation, mirror image, and uniform scaling. 4

25 Rotation -- around the unit direction vector N by the angle φ q(n,φ) = cos(φ)o + sin(φ) N S q(n,φ/) (v) = q(n,φ / ) v q (N,φ / ) Mirror Image -- in the plane perpendicular to the unit normal N T N (v) = N v N = S N (v) Uniform Scaling -- by the scale factor c S c O (v) = c v Quaternions provide more compact representations for conformal transformations than 3 3 matrices, since quaternions are represented by 4 rectangular coordinates whereas 3 3 matrices contain 9 scalar entries. Composing conformal transformations by multiplying quaternions is faster than composing conformal transformations by matrix multiplication because to compute the product of two quaternions requires only 16 real scalar multiplications whereas to compose two transformations by matrix multiplication requires 7 real scalar multiplications. Nevertheless, quaternions are not a panacea. The total cost for computing one conformal transformation on a vector using quaternions is 8 scalar multiplications, whereas the cost for multiplying a vector by a 3 3 matrix is only 9 scalar multiplications. Thus matrices are more than 3 times faster than quaternions for computing conformal transformations. Quaternions are used in Computer Graphics to avoid distortions that can arise during conformal transformations due to numerical inaccuracies introduced by floating point computations. Quaternion transformations never distort angles because every quaternion represents a conformal transformation. Moreover, unlike 3 3 matrices, quaternions are easily normalized, so unit quaternions can be employed to avoid distorting distances as well as angles during rotation. Quaternions are also used in Computer Graphics to perform key frame animation. In key frame animation, an artist draws only a few key frames in the scene, and an animator must then interpolate intermediate frames to make the animation look natural. Linear interpolation of rotation matrices does not generate rotation matrices. Similarly, linear interpolation of unit quaternions does not generate unit quaternions, and even when normalized the resulting unit quaternions are not uniformly spaced along an arc in 4-dimensions, so the resulting motion appears jerky rather than smooth. To interpolate smoothly between two rotations represented by the unit quaternions q 0, q 1, we apply spherical linear interpolation: ( ) sin(φ) sin (1 t)φ slerp(q 0,q 1,t) = q 0 + sin ( tφ ) sin(φ) q 1, where φ is the angle between q 0 and q 1. Spherical linear interpolation avoids undesirable artifacts 5

26 that arise from interpolation methods that either fail to generate rotations or build rotations that do not transition smoothly between the artist s original rotations. Unit quaternions q(n,φ / ) = ( q 1,q,q 3,q 4 ) and 3 3 matrices Rot(N,φ) = (R i, j ) can both be used to represent rotations around the unit axis vector N by the angle φ. The following formulas can be applied to convert between these two representations: Exercises: q(n,φ / ) = R 1,1 + R, + R 3,3 +1 O + (R,3 R 3, )i + ( R 3,1 R 1,3 ) j + (R 1, R,1 )k R 1,1 + R, + R 3,3 +1 q 4 + q1 q q3 q 1 q + q 3 q 4 q 1 q 3 q q 4 Rot(N,φ) = q 1 q q 3 q 4 q 4 q1 + q q3 q q 3 + q 1 q 4. q 1 q 3 + q q 4 q q 3 q 1 q 4 q 4 q1 q + q Using Equation (15.4), verify that complex multiplication is associative, commutative, and distributes through addition Let (r,θ) denote the polar coordinates of a point in the plane. Show that in polar coordinates complex multiplication is equivalent to (r 1,θ 1 ) (r,θ ) = (r 1 r,θ 1 + θ ) Here we shall derive the half angle formulas used in the text. a. Using Euler s formula -- Equation (15.5) -- show that ( ). i. cos(φ) + isin(φ) = cos(φ) + i sin(φ) b. Conclude from part a that: i. cos(φ) = cos (φ) sin (φ) = cos (φ) 1 ii. sin(φ) = sin(φ)cos(φ). c. Conclude from part b that: i. cos(φ / ) = 1 + cos(φ) ii. sin(φ / ) = 1 cos(φ) Let z = (x, y) = x + i y be an arbitrary vector in the plane, and let w(φ) = cos(φ / ) + isin(φ / ). 6

27 a. Show that z rot(φ) = w(φ / ) z w(φ / ). b. Conclude that a vector z in the plane can be rotated through the angle φ by sandwiching z between w(φ / ) and w(φ / ) Let w 1,w,w be complex numbers and let p(z) = a n z n + + a 0 be a polynomial in the complex variable z with real coefficients a 0,,a n. a. Show that: i. (w 1 + w ) = w 1 + w ii. (w 1 w ) = w 1 w iii. (w n ) = (w ) n b. Conclude from part a that if p(w) = 0, then p(w ) = Using Equation (15.9) and the properties of dot product and cross product, verify that quaternion multiplication is associative and distributes through addition Let a,b,x, y be real numbers, and let z 1 = a + bi, z = x + yi be complex numbers. a. Verify Brahmagupta s identity: (a + b )(x + y ) = (ax by) + (ay + bx). b. Using Brahmagupta s identity, prove that z 1 z = z 1 z Let a,b,c, d,w,x, y, z be real numbers, and let q 1 = a + bi + c j + dk, q = w + x i + y j + zk be quaternions. a. Verify the following generalization of Brahmagupta s identity: (a + b + c + d )(w + x + y + z ) = (aw bx c y dz) + (ax + bw + cz d y) b. Using the result in part a, prove that q 1 q = q 1 q. + (ay bz + c w + dx) + (az + by c x + dw) Consider a quaternion q = q 0 O + q 1 i + q j + q 3 k. a. Show that q = (q 0 O + q 1 i) + (q O + q 3 i) j. b. Conclude from part a that every quaternion can be represented by a pair of complex numbers. 7

28 c. Let a,b,c, d be complex numbers. Show that (a + b j)(c + d j) = (ac bd ) + (ad + bc ) j Let q be an arbitrary quaternion. Define e q = O + q + q! + q3 3! + a. Show that if N is a unit vector, then e λ N = cos(λ)o + sin(λ)n. b. Conclude from part a and Theorem 15.1 that v can be rotated around a unit vector N through the angle φ by sandwiching v between q = e φ N / and q = e φ N / Consider two unit vectors v 0,v 1. Let φ be the angle between v 0 and v 1 and let w = v 0 v 1 v 0 v 1. a. Using the results of Exercise 15.10, show that: i. slerp(v 0,v 1,t) = e tφ w / t φ w/ v 0 e ii. v 1 v0 = e φ w b. Conclude from part a that ( ) t/. slerp(v 0,v 1,t) = (v 1 v0 ) t/ v 0 v 0 v Let p = p 4 O + p 1 i + p j + p 3 k and q = q 4 O + q 1 i + q j + q 3 k. Show that: pq = (p 4 q 4 p 1 q 1 p q p 3 q 3 )O + (p 4 q 1 + p 1 q 4 )i + ( p 4 q + p q 4 ) j + (p 4 q 3 + p 3 q 4 )k + (p q 3 p 3 q )i + (p 3 q 1 p 1 q 3 ) j + ( p 1 q p q 1 )k Let p = (p 1, p, p 3, p 4 ) and q = (q 1,q,q 3,q 4 ) be quaternions, and let q 4 q 3 q q 1 q 3 q 4 q 1 q L(q) = q q 1 q 4 q 3 q 1 q q 3 q 4 q 4 q 3 q q 1 q and R(q) = 3 q 4 q 1 q. q q 1 q 4 q 3 q 1 q q 3 q 4 a. Using Exercise 15.1, verify that: i. q p = (p 1, p, p 3, p 4 ) L(q) ii. p q = (p 1, p, p 3, p 4 ) R(q) 8

29 b. Conclude from part a that ( ). S q (p) = (p 1, p, p 3, p 4 ) L( p) R(q ) c. By direct computation, verify that q 4 + q1 q q3 q 1 q + q 3 q 4 q 1 q 3 q q 4 0 L(p) R(q q ) = 1 q q 3 q 4 q 4 q1 + q q3 q q 3 + q 1 q 4 0 q 1 q 3 + q q 4 q q 3 q 1 q 4 q 4 q1 q + q q 1 + q + q3 + q4 d. Conclude from parts b,c that if q = q(n,φ / ), then q 4 + q1 q q3 q 1 q + q 3 q 4 q 1 q 3 q q 4 Rot(N,φ) = q 1 q q 3 q 4 q 4 q1 + q q3 q q 3 + q 1 q 4. q 1 q 3 + q q 4 q q 3 q 1 q 4 q 4 q1 q + q Let L(q) and R(q) be the matrices defined in Exercise Show that: a. L(p + q) = L(p) + L(q) b. R( p + q) = R(p) + R(q) c. L(p q) = L(q) L(p) d. R( pq) = R( p) R(q) Let L(q) and R(q) be the matrices defined in Exercise 15.13, and let I be the 4 4 identity matrix. By direct computation verify that if q is a unit quaternion, then a. L(q) L(q) T = I = R(q) R(q) T b. det ( L( q) ) =1 = det ( R(q) ) Let T be a linear transformation on the 4-dimensional space of quaternions, and let M be the 4 4 matrix representing T. a. Show that: i. M = T (i) T ( j) T (k) T(O). 9

Be fruitful and multiply Genesis 1:28

Be fruitful and multiply Genesis 1:28 Chapter 15: Quaternions: Multiplication in the Space of Mass-Points Be fruitful and multiply Genesis 1:8 1. Vector Spaces and Division Algebras The space of mass-points is a 4-dimensional vector space:

More information

Understanding Quaternions: Rotations, Reflections, and Perspective Projections. Ron Goldman Department of Computer Science Rice University

Understanding Quaternions: Rotations, Reflections, and Perspective Projections. Ron Goldman Department of Computer Science Rice University Understanding Quaternions: Rotations, Reflections, and Perspective Projections Ron Goldman Department of Computer Science Rice University The invention of the calculus of quaternions is a step towards

More information

Understanding Quaternions. Ron Goldman Department of Computer Science Rice University

Understanding Quaternions. Ron Goldman Department of Computer Science Rice University Understanding Quaternions Ron Goldman Department of Computer Science Rice University The invention of the calculus of quaternions is a step towards the knowledge of quantities related to space which can

More information

Quaternions. R. J. Renka 11/09/2015. Department of Computer Science & Engineering University of North Texas. R. J.

Quaternions. R. J. Renka 11/09/2015. Department of Computer Science & Engineering University of North Texas. R. J. Quaternions R. J. Renka Department of Computer Science & Engineering University of North Texas 11/09/2015 Definition A quaternion is an element of R 4 with three operations: addition, scalar multiplication,

More information

sin(α + θ) = sin α cos θ + cos α sin θ cos(α + θ) = cos α cos θ sin α sin θ

sin(α + θ) = sin α cos θ + cos α sin θ cos(α + θ) = cos α cos θ sin α sin θ Rotations in the 2D Plane Trigonometric addition formulas: sin(α + θ) = sin α cos θ + cos α sin θ cos(α + θ) = cos α cos θ sin α sin θ Rotate coordinates by angle θ: 1. Start with x = r cos α y = r sin

More information

A = 3 B = A 1 1 matrix is the same as a number or scalar, 3 = [3].

A = 3 B = A 1 1 matrix is the same as a number or scalar, 3 = [3]. Appendix : A Very Brief Linear ALgebra Review Introduction Linear Algebra, also known as matrix theory, is an important element of all branches of mathematics Very often in this course we study the shapes

More information

Vectors and Matrices

Vectors and Matrices Vectors and Matrices Scalars We often employ a single number to represent quantities that we use in our daily lives such as weight, height etc. The magnitude of this number depends on our age and whether

More information

A VERY BRIEF LINEAR ALGEBRA REVIEW for MAP 5485 Introduction to Mathematical Biophysics Fall 2010

A VERY BRIEF LINEAR ALGEBRA REVIEW for MAP 5485 Introduction to Mathematical Biophysics Fall 2010 A VERY BRIEF LINEAR ALGEBRA REVIEW for MAP 5485 Introduction to Mathematical Biophysics Fall 00 Introduction Linear Algebra, also known as matrix theory, is an important element of all branches of mathematics

More information

Lecture 4: Affine Transformations. for Satan himself is transformed into an angel of light. 2 Corinthians 11:14

Lecture 4: Affine Transformations. for Satan himself is transformed into an angel of light. 2 Corinthians 11:14 Lecture 4: Affine Transformations for Satan himself is transformed into an angel of light. 2 Corinthians 11:14 1. Transformations Transformations are the lifeblood of geometry. Euclidean geometry is based

More information

Chapter 8. Rigid transformations

Chapter 8. Rigid transformations Chapter 8. Rigid transformations We are about to start drawing figures in 3D. There are no built-in routines for this purpose in PostScript, and we shall have to start more or less from scratch in extending

More information

Chapter 8 Vectors and Scalars

Chapter 8 Vectors and Scalars Chapter 8 193 Vectors and Scalars Chapter 8 Vectors and Scalars 8.1 Introduction: In this chapter we shall use the ideas of the plane to develop a new mathematical concept, vector. If you have studied

More information

1 Matrices and matrix algebra

1 Matrices and matrix algebra 1 Matrices and matrix algebra 1.1 Examples of matrices A matrix is a rectangular array of numbers and/or variables. For instance 4 2 0 3 1 A = 5 1.2 0.7 x 3 π 3 4 6 27 is a matrix with 3 rows and 5 columns

More information

STEP Support Programme. STEP 2 Matrices Topic Notes

STEP Support Programme. STEP 2 Matrices Topic Notes STEP Support Programme STEP 2 Matrices Topic Notes Definitions............................................. 2 Manipulating Matrices...................................... 3 Transformations.........................................

More information

Eigenvalues and Eigenvectors

Eigenvalues and Eigenvectors Sec. 6.1 Eigenvalues and Eigenvectors Linear transformations L : V V that go from a vector space to itself are often called linear operators. Many linear operators can be understood geometrically by identifying

More information

MATH 221: SOLUTIONS TO SELECTED HOMEWORK PROBLEMS

MATH 221: SOLUTIONS TO SELECTED HOMEWORK PROBLEMS MATH 221: SOLUTIONS TO SELECTED HOMEWORK PROBLEMS 1. HW 1: Due September 4 1.1.21. Suppose v, w R n and c is a scalar. Prove that Span(v + cw, w) = Span(v, w). We must prove two things: that every element

More information

Matrix Arithmetic. a 11 a. A + B = + a m1 a mn. + b. a 11 + b 11 a 1n + b 1n = a m1. b m1 b mn. and scalar multiplication for matrices via.

Matrix Arithmetic. a 11 a. A + B = + a m1 a mn. + b. a 11 + b 11 a 1n + b 1n = a m1. b m1 b mn. and scalar multiplication for matrices via. Matrix Arithmetic There is an arithmetic for matrices that can be viewed as extending the arithmetic we have developed for vectors to the more general setting of rectangular arrays: if A and B are m n

More information

Integrating Algebra and Geometry with Complex Numbers

Integrating Algebra and Geometry with Complex Numbers Integrating Algebra and Geometry with Complex Numbers Complex numbers in schools are often considered only from an algebraic perspective. Yet, they have a rich geometric meaning that can support developing

More information

A Learning Progression for Complex Numbers

A Learning Progression for Complex Numbers A Learning Progression for Complex Numbers In mathematics curriculum development around the world, the opportunity for students to study complex numbers in secondary schools is decreasing. Given that the

More information

Chapter 3 Vectors. 3.1 Vector Analysis

Chapter 3 Vectors. 3.1 Vector Analysis Chapter 3 Vectors 3.1 Vector nalysis... 1 3.1.1 Introduction to Vectors... 1 3.1.2 Properties of Vectors... 1 3.2 Coordinate Systems... 6 3.2.1 Cartesian Coordinate System... 6 3.2.2 Cylindrical Coordinate

More information

Course MA2C02, Hilary Term 2010 Section 4: Vectors and Quaternions

Course MA2C02, Hilary Term 2010 Section 4: Vectors and Quaternions Course MA2C02, Hilary Term 2010 Section 4: Vectors and Quaternions David R. Wilkins Copyright c David R. Wilkins 2000 2010 Contents 4 Vectors and Quaternions 47 4.1 Vectors...............................

More information

Rigid Geometric Transformations

Rigid Geometric Transformations Rigid Geometric Transformations Carlo Tomasi This note is a quick refresher of the geometry of rigid transformations in three-dimensional space, expressed in Cartesian coordinates. 1 Cartesian Coordinates

More information

Lecture 3f Polar Form (pages )

Lecture 3f Polar Form (pages ) Lecture 3f Polar Form (pages 399-402) In the previous lecture, we saw that we can visualize a complex number as a point in the complex plane. This turns out to be remarkable useful, but we need to think

More information

Lecture 4: Affine Transformations. for Satan himself is transformed into an angel of light. 2 Corinthians 11:14

Lecture 4: Affine Transformations. for Satan himself is transformed into an angel of light. 2 Corinthians 11:14 Lecture 4: Affine Transformations for Satan himself is transformed into an angel of light. 2 Corinthians 11:14 1. Transformations Transformations are the lifeblood of geometry. Euclidean geometry is based

More information

Introduction to quaternions

Introduction to quaternions . Introduction Introduction to uaternions Invented and developed by William Hamilton in 843, uaternions are essentially a generalization of complex numbers to four dimensions (one real dimension, three

More information

CHAPTER 4 VECTORS. Before we go any further, we must talk about vectors. They are such a useful tool for

CHAPTER 4 VECTORS. Before we go any further, we must talk about vectors. They are such a useful tool for CHAPTER 4 VECTORS Before we go any further, we must talk about vectors. They are such a useful tool for the things to come. The concept of a vector is deeply rooted in the understanding of physical mechanics

More information

Quick Overview: Complex Numbers

Quick Overview: Complex Numbers Quick Overview: Complex Numbers February 23, 2012 1 Initial Definitions Definition 1 The complex number z is defined as: z = a + bi (1) where a, b are real numbers and i = 1. Remarks about the definition:

More information

Rigid Geometric Transformations

Rigid Geometric Transformations Rigid Geometric Transformations Carlo Tomasi This note is a quick refresher of the geometry of rigid transformations in three-dimensional space, expressed in Cartesian coordinates. 1 Cartesian Coordinates

More information

7.2. Matrix Multiplication. Introduction. Prerequisites. Learning Outcomes

7.2. Matrix Multiplication. Introduction. Prerequisites. Learning Outcomes Matrix Multiplication 7.2 Introduction When we wish to multiply matrices together we have to ensure that the operation is possible - and this is not always so. Also, unlike number arithmetic and algebra,

More information

Notes on multivariable calculus

Notes on multivariable calculus Notes on multivariable calculus Jonathan Wise February 2, 2010 1 Review of trigonometry Trigonometry is essentially the study of the relationship between polar coordinates and Cartesian coordinates in

More information

1 Solving equations 1.1 Kick off with CAS 1. Polynomials 1. Trigonometric symmetry properties 1.4 Trigonometric equations and general solutions 1.5 Literal and simultaneous equations 1.6 Review 1.1 Kick

More information

Dot Products. K. Behrend. April 3, Abstract A short review of some basic facts on the dot product. Projections. The spectral theorem.

Dot Products. K. Behrend. April 3, Abstract A short review of some basic facts on the dot product. Projections. The spectral theorem. Dot Products K. Behrend April 3, 008 Abstract A short review of some basic facts on the dot product. Projections. The spectral theorem. Contents The dot product 3. Length of a vector........................

More information

Problem 1: (3 points) Recall that the dot product of two vectors in R 3 is

Problem 1: (3 points) Recall that the dot product of two vectors in R 3 is Linear Algebra, Spring 206 Homework 3 Name: Problem : (3 points) Recall that the dot product of two vectors in R 3 is a x b y = ax + by + cz, c z and this is essentially the same as the matrix multiplication

More information

Math Precalculus Blueprint Assessed Quarter 1

Math Precalculus Blueprint Assessed Quarter 1 PO 11. Find approximate solutions for polynomial equations with or without graphing technology. MCWR-S3C2-06 Graphing polynomial functions. MCWR-S3C2-12 Theorems of polynomial functions. MCWR-S3C3-08 Polynomial

More information

Review of Linear Algebra Definitions, Change of Basis, Trace, Spectral Theorem

Review of Linear Algebra Definitions, Change of Basis, Trace, Spectral Theorem Review of Linear Algebra Definitions, Change of Basis, Trace, Spectral Theorem Steven J. Miller June 19, 2004 Abstract Matrices can be thought of as rectangular (often square) arrays of numbers, or as

More information

Department of Physics, Korea University

Department of Physics, Korea University Name: Department: Notice +2 ( 1) points per correct (incorrect) answer. No penalty for an unanswered question. Fill the blank ( ) with (8) if the statement is correct (incorrect).!!!: corrections to an

More information

Chapter 3. Vectors and Two-Dimensional Motion

Chapter 3. Vectors and Two-Dimensional Motion Chapter 3 Vectors and Two-Dimensional Motion 1 Vector vs. Scalar Review All physical quantities encountered in this text will be either a scalar or a vector A vector quantity has both magnitude (size)

More information

3 Matrix Algebra. 3.1 Operations on matrices

3 Matrix Algebra. 3.1 Operations on matrices 3 Matrix Algebra A matrix is a rectangular array of numbers; it is of size m n if it has m rows and n columns. A 1 n matrix is a row vector; an m 1 matrix is a column vector. For example: 1 5 3 5 3 5 8

More information

Chapter 1. Introduction to Vectors. Po-Ning Chen, Professor. Department of Electrical and Computer Engineering. National Chiao Tung University

Chapter 1. Introduction to Vectors. Po-Ning Chen, Professor. Department of Electrical and Computer Engineering. National Chiao Tung University Chapter 1 Introduction to Vectors Po-Ning Chen, Professor Department of Electrical and Computer Engineering National Chiao Tung University Hsin Chu, Taiwan 30010, R.O.C. Notes for this course 1-1 A few

More information

ELEMENTARY LINEAR ALGEBRA

ELEMENTARY LINEAR ALGEBRA ELEMENTARY LINEAR ALGEBRA K. R. MATTHEWS DEPARTMENT OF MATHEMATICS UNIVERSITY OF QUEENSLAND Second Online Version, December 1998 Comments to the author at krm@maths.uq.edu.au Contents 1 LINEAR EQUATIONS

More information

Course 2BA1: Hilary Term 2007 Section 8: Quaternions and Rotations

Course 2BA1: Hilary Term 2007 Section 8: Quaternions and Rotations Course BA1: Hilary Term 007 Section 8: Quaternions and Rotations David R. Wilkins Copyright c David R. Wilkins 005 Contents 8 Quaternions and Rotations 1 8.1 Quaternions............................ 1 8.

More information

Linear Algebra: Lecture Notes. Dr Rachel Quinlan School of Mathematics, Statistics and Applied Mathematics NUI Galway

Linear Algebra: Lecture Notes. Dr Rachel Quinlan School of Mathematics, Statistics and Applied Mathematics NUI Galway Linear Algebra: Lecture Notes Dr Rachel Quinlan School of Mathematics, Statistics and Applied Mathematics NUI Galway November 6, 23 Contents Systems of Linear Equations 2 Introduction 2 2 Elementary Row

More information

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Linear Algebra /34

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Linear Algebra /34 Linear Algebra /34 Vectors A vector is a magnitude and a direction Magnitude = v Direction Also known as norm, length Represented by unit vectors (vectors with a length of 1 that point along distinct axes)

More information

REVIEW - Vectors. Vectors. Vector Algebra. Multiplication by a scalar

REVIEW - Vectors. Vectors. Vector Algebra. Multiplication by a scalar J. Peraire Dynamics 16.07 Fall 2004 Version 1.1 REVIEW - Vectors By using vectors and defining appropriate operations between them, physical laws can often be written in a simple form. Since we will making

More information

Midterm 1 Review. Distance = (x 1 x 0 ) 2 + (y 1 y 0 ) 2.

Midterm 1 Review. Distance = (x 1 x 0 ) 2 + (y 1 y 0 ) 2. Midterm 1 Review Comments about the midterm The midterm will consist of five questions and will test on material from the first seven lectures the material given below. No calculus either single variable

More information

Solving equations UNCORRECTED PAGE PROOFS

Solving equations UNCORRECTED PAGE PROOFS 1 Solving equations 1.1 Kick off with CAS 1. Polynomials 1.3 Trigonometric symmetry properties 1.4 Trigonometric equations and general solutions 1.5 Literal equations and simultaneous equations 1.6 Review

More information

Complex numbers, the exponential function, and factorization over C

Complex numbers, the exponential function, and factorization over C Complex numbers, the exponential function, and factorization over C 1 Complex Numbers Recall that for every non-zero real number x, its square x 2 = x x is always positive. Consequently, R does not contain

More information

Topic 4 Notes Jeremy Orloff

Topic 4 Notes Jeremy Orloff Topic 4 Notes Jeremy Orloff 4 Complex numbers and exponentials 4.1 Goals 1. Do arithmetic with complex numbers.. Define and compute: magnitude, argument and complex conjugate of a complex number. 3. Euler

More information

1 Review of complex numbers

1 Review of complex numbers 1 Review of complex numbers 1.1 Complex numbers: algebra The set C of complex numbers is formed by adding a square root i of 1 to the set of real numbers: i = 1. Every complex number can be written uniquely

More information

A matrix over a field F is a rectangular array of elements from F. The symbol

A matrix over a field F is a rectangular array of elements from F. The symbol Chapter MATRICES Matrix arithmetic A matrix over a field F is a rectangular array of elements from F The symbol M m n (F ) denotes the collection of all m n matrices over F Matrices will usually be denoted

More information

4.1 Distance and Length

4.1 Distance and Length Chapter Vector Geometry In this chapter we will look more closely at certain geometric aspects of vectors in R n. We will first develop an intuitive understanding of some basic concepts by looking at vectors

More information

DS-GA 1002 Lecture notes 0 Fall Linear Algebra. These notes provide a review of basic concepts in linear algebra.

DS-GA 1002 Lecture notes 0 Fall Linear Algebra. These notes provide a review of basic concepts in linear algebra. DS-GA 1002 Lecture notes 0 Fall 2016 Linear Algebra These notes provide a review of basic concepts in linear algebra. 1 Vector spaces You are no doubt familiar with vectors in R 2 or R 3, i.e. [ ] 1.1

More information

ISOMETRIES OF R n KEITH CONRAD

ISOMETRIES OF R n KEITH CONRAD ISOMETRIES OF R n KEITH CONRAD 1. Introduction An isometry of R n is a function h: R n R n that preserves the distance between vectors: h(v) h(w) = v w for all v and w in R n, where (x 1,..., x n ) = x

More information

CSE 167: Introduction to Computer Graphics Lecture #2: Linear Algebra Primer

CSE 167: Introduction to Computer Graphics Lecture #2: Linear Algebra Primer CSE 167: Introduction to Computer Graphics Lecture #2: Linear Algebra Primer Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016 Announcements Monday October 3: Discussion Assignment

More information

Quaternions 2 AUI Course Denbigh Starkey

Quaternions 2 AUI Course Denbigh Starkey Quaternions 2 AUI Course Denbigh Starkey 1. Background 2 2. Some Basic Quaternion Math 4 3. The Justification of the Quaternion Rotation Formula 5 4. Interpolation between two Unit Quaternions SLERP vs.

More information

ELEMENTARY LINEAR ALGEBRA

ELEMENTARY LINEAR ALGEBRA ELEMENTARY LINEAR ALGEBRA K R MATTHEWS DEPARTMENT OF MATHEMATICS UNIVERSITY OF QUEENSLAND First Printing, 99 Chapter LINEAR EQUATIONS Introduction to linear equations A linear equation in n unknowns x,

More information

Review of linear algebra

Review of linear algebra Review of linear algebra 1 Vectors and matrices We will just touch very briefly on certain aspects of linear algebra, most of which should be familiar. Recall that we deal with vectors, i.e. elements of

More information

1.1.1 Algebraic Operations

1.1.1 Algebraic Operations 1.1.1 Algebraic Operations We need to learn how our basic algebraic operations interact. When confronted with many operations, we follow the order of operations: Parentheses Exponentials Multiplication

More information

Vector Geometry. Chapter 5

Vector Geometry. Chapter 5 Chapter 5 Vector Geometry In this chapter we will look more closely at certain geometric aspects of vectors in R n. We will first develop an intuitive understanding of some basic concepts by looking at

More information

1.1 Single Variable Calculus versus Multivariable Calculus Rectangular Coordinate Systems... 4

1.1 Single Variable Calculus versus Multivariable Calculus Rectangular Coordinate Systems... 4 MATH2202 Notebook 1 Fall 2015/2016 prepared by Professor Jenny Baglivo Contents 1 MATH2202 Notebook 1 3 1.1 Single Variable Calculus versus Multivariable Calculus................... 3 1.2 Rectangular Coordinate

More information

be ye transformed by the renewing of your mind Romans 12:2

be ye transformed by the renewing of your mind Romans 12:2 Lecture 12: Coordinate Free Formulas for Affine and rojectie Transformations be ye transformed by the reing of your mind Romans 12:2 1. Transformations for 3-Dimensional Computer Graphics Computer Graphics

More information

MAT01A1: Complex Numbers (Appendix H)

MAT01A1: Complex Numbers (Appendix H) MAT01A1: Complex Numbers (Appendix H) Dr Craig 14 February 2018 Announcements: e-quiz 1 is live. Deadline is Wed 21 Feb at 23h59. e-quiz 2 (App. A, D, E, H) opens tonight at 19h00. Deadline is Thu 22 Feb

More information

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Linear Algebra 1/33

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Linear Algebra 1/33 Linear Algebra 1/33 Vectors A vector is a magnitude and a direction Magnitude = v Direction Also known as norm, length Represented by unit vectors (vectors with a length of 1 that point along distinct

More information

Lecture 5 3D polygonal modeling Part 1: Vector graphics Yong-Jin Liu.

Lecture 5 3D polygonal modeling Part 1: Vector graphics Yong-Jin Liu. Fundamentals of Computer Graphics Lecture 5 3D polygonal modeling Part 1: Vector graphics Yong-Jin Liu liuyongjin@tsinghua.edu.cn Material by S.M.Lea (UNC) Introduction In computer graphics, we work with

More information

Eigenvalues and Eigenvectors

Eigenvalues and Eigenvectors LECTURE 3 Eigenvalues and Eigenvectors Definition 3.. Let A be an n n matrix. The eigenvalue-eigenvector problem for A is the problem of finding numbers λ and vectors v R 3 such that Av = λv. If λ, v are

More information

Algebra I Fall 2007

Algebra I Fall 2007 MIT OpenCourseWare http://ocw.mit.edu 18.701 Algebra I Fall 007 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. 18.701 007 Geometry of the Special Unitary

More information

CALC 3 CONCEPT PACKET Complete

CALC 3 CONCEPT PACKET Complete CALC 3 CONCEPT PACKET Complete Written by Jeremy Robinson, Head Instructor Find Out More +Private Instruction +Review Sessions WWW.GRADEPEAK.COM Need Help? Online Private Instruction Anytime, Anywhere

More information

[ Here 21 is the dot product of (3, 1, 2, 5) with (2, 3, 1, 2), and 31 is the dot product of

[ Here 21 is the dot product of (3, 1, 2, 5) with (2, 3, 1, 2), and 31 is the dot product of . Matrices A matrix is any rectangular array of numbers. For example 3 5 6 4 8 3 3 is 3 4 matrix, i.e. a rectangular array of numbers with three rows four columns. We usually use capital letters for matrices,

More information

Linear Algebra Homework and Study Guide

Linear Algebra Homework and Study Guide Linear Algebra Homework and Study Guide Phil R. Smith, Ph.D. February 28, 20 Homework Problem Sets Organized by Learning Outcomes Test I: Systems of Linear Equations; Matrices Lesson. Give examples of

More information

Jim Lambers MAT 610 Summer Session Lecture 1 Notes

Jim Lambers MAT 610 Summer Session Lecture 1 Notes Jim Lambers MAT 60 Summer Session 2009-0 Lecture Notes Introduction This course is about numerical linear algebra, which is the study of the approximate solution of fundamental problems from linear algebra

More information

CSE 167: Introduction to Computer Graphics Lecture #2: Linear Algebra Primer

CSE 167: Introduction to Computer Graphics Lecture #2: Linear Algebra Primer CSE 167: Introduction to Computer Graphics Lecture #2: Linear Algebra Primer Jürgen P. Schulze, Ph.D. University of California, San Diego Spring Quarter 2016 Announcements Project 1 due next Friday at

More information

Complex Numbers and Quaternions for Calc III

Complex Numbers and Quaternions for Calc III Complex Numbers and Quaternions for Calc III Taylor Dupuy September, 009 Contents 1 Introduction 1 Two Ways of Looking at Complex Numbers 1 3 Geometry of Complex Numbers 4 Quaternions 5 4.1 Connection

More information

Contravariant and Covariant as Transforms

Contravariant and Covariant as Transforms Contravariant and Covariant as Transforms There is a lot more behind the concepts of contravariant and covariant tensors (of any rank) than the fact that their basis vectors are mutually orthogonal to

More information

With this expanded version of what we mean by a solution to an equation we can solve equations that previously had no solution.

With this expanded version of what we mean by a solution to an equation we can solve equations that previously had no solution. M 74 An introduction to Complex Numbers. 1 Solving equations Throughout the calculus sequence we have limited our discussion to real valued solutions to equations. We know the equation x 1 = 0 has distinct

More information

Why Transforms? Want to animate objects and camera Translations Rotations Shears And more.. Want to be able to use projection transforms

Why Transforms? Want to animate objects and camera Translations Rotations Shears And more.. Want to be able to use projection transforms Why Transforms? Want to animate objects and camera Translations Rotations Shears And more.. Want to be able to use projection transforms ITCS 3050:Game Engine Programming 1 Geometric Transformations Implementing

More information

MATH 423 Linear Algebra II Lecture 3: Subspaces of vector spaces. Review of complex numbers. Vector space over a field.

MATH 423 Linear Algebra II Lecture 3: Subspaces of vector spaces. Review of complex numbers. Vector space over a field. MATH 423 Linear Algebra II Lecture 3: Subspaces of vector spaces. Review of complex numbers. Vector space over a field. Vector space A vector space is a set V equipped with two operations, addition V V

More information

Hyperbolic Transformations

Hyperbolic Transformations C H A P T E R 17 Hyperbolic Transformations Though the text of your article on Crystal Symmetry and Its Generalizations is much too learned for a simple, selfmade pattern man like me, some of the text-illustrations

More information

Quaternion Algebra and Calculus

Quaternion Algebra and Calculus Quaternion Algebra and Calculus David Eberly, Geometric Tools, Redmond WA 98052 https://www.geometrictools.com/ This work is licensed under the Creative Commons Attribution 4.0 International License. To

More information

Extra Problems for Math 2050 Linear Algebra I

Extra Problems for Math 2050 Linear Algebra I Extra Problems for Math 5 Linear Algebra I Find the vector AB and illustrate with a picture if A = (,) and B = (,4) Find B, given A = (,4) and [ AB = A = (,4) and [ AB = 8 If possible, express x = 7 as

More information

a 11 x 1 + a 12 x a 1n x n = b 1 a 21 x 1 + a 22 x a 2n x n = b 2.

a 11 x 1 + a 12 x a 1n x n = b 1 a 21 x 1 + a 22 x a 2n x n = b 2. Chapter 1 LINEAR EQUATIONS 11 Introduction to linear equations A linear equation in n unknowns x 1, x,, x n is an equation of the form a 1 x 1 + a x + + a n x n = b, where a 1, a,, a n, b are given real

More information

3 + 4i 2 + 3i. 3 4i Fig 1b

3 + 4i 2 + 3i. 3 4i Fig 1b The introduction of complex numbers in the 16th century was a natural step in a sequence of extensions of the positive integers, starting with the introduction of negative numbers (to solve equations of

More information

Linear Algebra and Matrix Inversion

Linear Algebra and Matrix Inversion Jim Lambers MAT 46/56 Spring Semester 29- Lecture 2 Notes These notes correspond to Section 63 in the text Linear Algebra and Matrix Inversion Vector Spaces and Linear Transformations Matrices are much

More information

MAT2342 : Introduction to Applied Linear Algebra Mike Newman, fall Projections. introduction

MAT2342 : Introduction to Applied Linear Algebra Mike Newman, fall Projections. introduction MAT4 : Introduction to Applied Linear Algebra Mike Newman fall 7 9. Projections introduction One reason to consider projections is to understand approximate solutions to linear systems. A common example

More information

We could express the left side as a sum of vectors and obtain the Vector Form of a Linear System: a 12 a x n. a m2

We could express the left side as a sum of vectors and obtain the Vector Form of a Linear System: a 12 a x n. a m2 Week 22 Equations, Matrices and Transformations Coefficient Matrix and Vector Forms of a Linear System Suppose we have a system of m linear equations in n unknowns a 11 x 1 + a 12 x 2 + + a 1n x n b 1

More information

The choice of origin, axes, and length is completely arbitrary.

The choice of origin, axes, and length is completely arbitrary. Polar Coordinates There are many ways to mark points in the plane or in 3-dim space for purposes of navigation. In the familiar rectangular coordinate system, a point is chosen as the origin and a perpendicular

More information

QUATERNIONS AND ROTATIONS

QUATERNIONS AND ROTATIONS QUATERNIONS AND ROTATIONS SVANTE JANSON 1. Introduction The purpose of this note is to show some well-known relations between quaternions and the Lie groups SO(3) and SO(4) (rotations in R 3 and R 4 )

More information

EXERCISE SET 5.1. = (kx + kx + k, ky + ky + k ) = (kx + kx + 1, ky + ky + 1) = ((k + )x + 1, (k + )y + 1)

EXERCISE SET 5.1. = (kx + kx + k, ky + ky + k ) = (kx + kx + 1, ky + ky + 1) = ((k + )x + 1, (k + )y + 1) EXERCISE SET 5. 6. The pair (, 2) is in the set but the pair ( )(, 2) = (, 2) is not because the first component is negative; hence Axiom 6 fails. Axiom 5 also fails. 8. Axioms, 2, 3, 6, 9, and are easily

More information

In Z: x + 3 = 2 3x = 2 x = 1 No solution In Q: 3x = 2 x 2 = 2. x = 2 No solution. In R: x 2 = 2 x = 0 x = ± 2 No solution Z Q.

In Z: x + 3 = 2 3x = 2 x = 1 No solution In Q: 3x = 2 x 2 = 2. x = 2 No solution. In R: x 2 = 2 x = 0 x = ± 2 No solution Z Q. THE UNIVERSITY OF NEW SOUTH WALES SCHOOL OF MATHEMATICS AND STATISTICS MATH 1141 HIGHER MATHEMATICS 1A ALGEBRA. Section 1: - Complex Numbers. 1. The Number Systems. Let us begin by trying to solve various

More information

Lecture 1 - Vectors. A Puzzle... Introduction. Vectors: The quest begins! TA s Information. Vectors

Lecture 1 - Vectors. A Puzzle... Introduction. Vectors: The quest begins! TA s Information. Vectors Lecture 1 - Vectors Puzzle... The sum starts at 0. Players alternate by choosing an integer from 1 to 10 and then adding it to the sum. The player who gets to 100 wins. You go first. What is the winning

More information

Algebraic Expressions and Identities

Algebraic Expressions and Identities ALGEBRAIC EXPRESSIONS AND IDENTITIES 137 Algebraic Expressions and Identities CHAPTER 9 9.1 What are Expressions? In earlier classes, we have already become familiar with what algebraic expressions (or

More information

Vectors and Fields. Vectors versus scalars

Vectors and Fields. Vectors versus scalars C H A P T E R 1 Vectors and Fields Electromagnetics deals with the study of electric and magnetic fields. It is at once apparent that we need to familiarize ourselves with the concept of a field, and in

More information

12.5 Equations of Lines and Planes

12.5 Equations of Lines and Planes 12.5 Equations of Lines and Planes Equation of Lines Vector Equation of Lines Parametric Equation of Lines Symmetric Equation of Lines Relation Between Two Lines Equations of Planes Vector Equation of

More information

Notation, Matrices, and Matrix Mathematics

Notation, Matrices, and Matrix Mathematics Geographic Information Analysis, Second Edition. David O Sullivan and David J. Unwin. 010 John Wiley & Sons, Inc. Published 010 by John Wiley & Sons, Inc. Appendix A Notation, Matrices, and Matrix Mathematics

More information

L. Vandenberghe EE133A (Spring 2017) 3. Matrices. notation and terminology. matrix operations. linear and affine functions.

L. Vandenberghe EE133A (Spring 2017) 3. Matrices. notation and terminology. matrix operations. linear and affine functions. L Vandenberghe EE133A (Spring 2017) 3 Matrices notation and terminology matrix operations linear and affine functions complexity 3-1 Matrix a rectangular array of numbers, for example A = 0 1 23 01 13

More information

Introduction to Linear Algebra, Second Edition, Serge Lange

Introduction to Linear Algebra, Second Edition, Serge Lange Introduction to Linear Algebra, Second Edition, Serge Lange Chapter I: Vectors R n defined. Addition and scalar multiplication in R n. Two geometric interpretations for a vector: point and displacement.

More information

Interpolation of Rigid Motions in 3D

Interpolation of Rigid Motions in 3D Interpolation of Rigid Motions in 3D David Eberly, Geometric Tools, Redmond WA 98052 https://www.geometrictools.com/ This work is licensed under the Creative Commons Attribution 4.0 International License.

More information

Chapter 3: Complex Numbers

Chapter 3: Complex Numbers Chapter 3: Complex Numbers Daniel Chan UNSW Semester 1 2018 Daniel Chan (UNSW) Chapter 3: Complex Numbers Semester 1 2018 1 / 48 Philosophical discussion about numbers Q In what sense is 1 a number? DISCUSS

More information

Milford Public Schools Curriculum. Department: Mathematics Course Name: Precalculus Level 1

Milford Public Schools Curriculum. Department: Mathematics Course Name: Precalculus Level 1 Milford Public Schools Curriculum Department: Mathematics Course Name: Precalculus Level 1 UNIT 1 Unit Description: Students will construct polynomial graphs with zeros and end behavior, and apply limit

More information

Mathematical Fundamentals

Mathematical Fundamentals Mathematical Fundamentals Ming-Hwa Wang, Ph.D. COEN 148/290 Computer Graphics COEN 166/366 Artificial Intelligence COEN 396 Interactive Multimedia and Game Programming Department of Computer Engineering

More information

Introduction. Introduction (2) Easy Problems for Vectors 7/13/2011. Chapter 4. Vector Tools for Graphics

Introduction. Introduction (2) Easy Problems for Vectors 7/13/2011. Chapter 4. Vector Tools for Graphics Introduction Chapter 4. Vector Tools for Graphics In computer graphics, we work with objects defined in a three dimensional world (with 2D objects and worlds being just special cases). All objects to be

More information

Overview of Complex Numbers

Overview of Complex Numbers Overview of Complex Numbers Definition 1 The complex number z is defined as: z = a+bi, where a, b are real numbers and i = 1. General notes about z = a + bi Engineers typically use j instead of i. Examples

More information