recap of linear algebra: vectors, matrices, transformations, … background knowledge for 3dm marc...
TRANSCRIPT
Recap of linear algebra: vectors, matrices, 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 once 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 dot product, it yields a scalar (a value)
• Example: (a, b, c) (d, e, f) = ad + be + cf• It works in all dimensions• The dot product rule/equation 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)
(𝑎1𝑎2𝑎3)×(𝑏1𝑏2𝑏3)=(𝑎2𝑏3−𝑎3𝑏2𝑎3𝑏1−𝑎1𝑏3𝑎1𝑏2−𝑎2𝑏1
)
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 result a 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 (m n) matrix consists of m rows and n columns
• An m n matrix 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 point
Example:=
point or vector
Matrices
(−1 00 1)
(1 1.250 1 )
mirror in y-axis
shear the x-coordinate
Matrices
(1.5 00 1.5)
(c os𝜃 −sin 𝜃sin 𝜃 cos𝜃 )
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 linear
transformation whereB is applied first and Ais applied second
Matrices
• Other terms of importance:– null matrix (m n), identity matrix (n n)– rank of a matrix: number of independent rows (or columns)– determinant: converts a square matrix to a scalar
Geometric 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)
(1 00 1
0 𝑎0 𝑏
0 00 0
1 𝑐0 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
1. Are the vectors (2, 4, 5), (5, – 1, 1), and (1, –9, –9) linearly independent?
2. Multiply
3. Find the matrix for the 3D affine transformation: mirror in the plane y – z = 3
4. 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
5. 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:
(2 10 2)(b oepf )
(2 1 )(2 10 3)(u sthem )