230 likes | 336 Views
Recap of linear algebra: vectors, matrics , transformations, …. Background knowledge for 3DM Marc van Kreveld. Vectors, points. A vector is an ordered pair, triple, … of (real) numbers, often written as a column
E N D
Recap of linear algebra: vectors, matrics, transformations, … Background knowledge for 3DM Marc van Kreveld
Vectors, points • A vector is an ordered pair, triple, … of (real) numbers, often written as a column • A vector (3, 4) can be interpreted as the point with x-coordinate 3 and y-coordinate 4, so (3, 4) as well • A vector like (2, 1, –4) can be interpreted as a point in 3-dimensional space Three times the vector (3, 2), and the point (3, 2)
Vectors, length • The length of a vector (a, b) is denoted |(a, b)| and is obtained by the Pythagoras Theorem: • The length of a vector (a, b, c) is denoted |(a, b, c)| and is given by : Be aware of length and dimensionality and their difference
Vector addition • Two vectors of the same dimensionality can be added; just add the corresponding components: (a,b) + (c,d) = (a+c, b+d) • The result is a vector of the same dimensionality • Geometric interpretation: place one arrow’s start at the end of the other, and take the resulting arrow purple + purple = blue
Scalars, vectors, multiplication • A value is also called a scalar • We can multiply a scalar k with a vector (a, b); this is defined to be the vector (ka, kb) • Geometric interpretation where a vector is an arrow: • k = – 1 : reverse the direction of an arrow • k = 2 : double the length of an arrow; same as adding a vector to itself
Vector multiplication • One type of vector multiplication is called the dotproduct, it yields a scalar (a value) • Example: (a, b, c) (d, e, f) = ad + be + ef • It works in all dimensions • The dot product rule/equality for vectors u and v:u v = |u||v| cos • Perpendicular vectors have a dot product 0
Vector multiplication • Another type of multiplication is the cross product, denoted by • It applies only to two vectors in 3D and yields a vector in 3D • the result is normal to the input vectors • if the input vectors are parallel, we get the null vector (0, 0, 0)
Vector multiplication • The length of the result vector of the cross product is related to the lengths of the input vectors and their angle|a b| = |a||b| sin In words: the length of the resulta b is the area of the parallelogram with a and bas sides
Vectors • Other terms of importance: • linear independence • spanning a (sub)space • basis • orthogonal basis • orthonormal basis
Matrices • Matrices are grids of values; an m-by-n (mn) matrix consists of m rows and n columns • An mnmatrix represents a linear transformation from m-space to n-space, but it could represent many other things
Matrices • A linear transformation: • maps any point/vector to exactly one point/vector • maps the origin/null vector to the origin/null vector • preserves straightness: mapping a line segment (its points) yields a line segment (its points), which can degenerate to a single pointExample: = point or vector
Matrices mirror in y-axis shear the x-coordinate
Matrices scale x and y by 1.5 rotate by = /6 radians
Matrices • Matrix addition: entry-wise • Multiplication with scalar: entry-wise • Multiplication of two matrices A and B: • #columns of A must match #rows of B • not commutative • AB represents the lineartransformation whereB is applied first and Ais applied second
Matrices • Other terms of importance: • identity matrix • rank of a matrix • determinant: converts a square matrix to a scalarGeometric interpretation: tells something about the area/volume enlargement (2D/3D) of a matrixDet = 2 (in 2D): a transformed triangle has twice the areaDet = 0: the transformation is a projection • matrix inversion: represents the transformation that is the reverse of what the matrix did • Gaussian elimination: process (algorithm) that allows us to invert a matrix, or solve a set of linear equations
Translations and matrices • A 3x3 matrix can represent any linear transformation from 3-space to 3-space, but no other transformation • The most important missing transformation is translation (which never maps the origin to the origin so it cannot be a linear transformation)
Homogeneous coordinates • Combinations of linear transformations and translations (one applied after the other) are called affine transformations • Using homogeneous coordinates, we can use a 4x4 matrix to represent all 3-dim affine transformations (generally: (d+1)x(d+1) matrix for d-dim affine tr.) the homogeneous coordinates of the point (a, b, c) are simply (a, b, c, 1)
Homogeneous coordinates • The matrix for translation by the vector (a, b, c) using homogeneous coordinates is:Just apply this matrix to the origin = (0, 0, 0, 1) and see where it ends up: (a, b, c, 1)
Vectors of points • It is possible to define and use vectors of points:( (a, b), (c, d), (e,f) ) instead of vectors of scalars • We can add two of these because vector addition is naturally defined • We can also multiply such a thing by a scalar( (a, b), (c, d), (e,f) ) + ( (g, h), (i, j), (k,l) ) = ( (a, b)+(g, h), (c, d)+(i, j), (e,f)+(k,l) ) =( (a+g, b+h), (c+i, d+j), (e+k, f+l) ) 3 ( (a, b), (c, d), (e,f) ) = ( 3(a, b), 3(c, d), 3(e,f) ) = ( (3a, 3b), (3c, 3d), (3e, 3f) )
Vectors of points • We can not add such a thing and a normal 3D vector because we cannot add a scalar and a vector/point( (a, b), (c, d), (e,f) ) + ( g, h, i) = undefined
Vectors of points • We can even apply (scalar) matrices to these things: = = This works be cause we know how to add points and multiply scalars and points
Questions • Are the vectors (2, 4, 5), (5, – 1, 1), and (1, –9, –9) linearly independent? • Multiply • Find the matrix for the 3D affine transformation: mirror in the plane y – z = 3 • Does the property that the determinant of a square matrix represents the change factor in area/volume of a shape also hold for matrices using homogeneous coordinates? Explain why or why not
Questions • Let S be the collection of all strings. Define • addition of two strings as their concatenation • multiplication of a string with a nonnegative integer by repeating the string as often as the value of the integer Compute: