# Neat Stuff from Vector Calculus & Related Subjects Chris Hecker definition six, inc. & Maxis.

## Presentation on theme: "Neat Stuff from Vector Calculus & Related Subjects Chris Hecker definition six, inc. & Maxis."— Presentation transcript:

Neat Stuff from Vector Calculus & Related Subjects Chris Hecker checker@d6.com definition six, inc. & Maxis

Related Subjects vector calculus scalar calculus linear algebra differential geometry classical mechanics, dynamics optimization & constraints differential & integral calculus

Intro & Prerequisites this is a total hodge-podge, not a gentle introduction –lack of rationale for caring about this stuff, trust me? :) stuff that I found non-intuitive or hard to figure out tour of fairly basic examples building on themselves to get firm grounding and intuition in calculus concepts for the kinds of math games do –touch on lots of different areas during tour, many sidestreets comfortable with algebra, linear algebra need to understand scalar calc, at least at the plugnchug level of differentiating functions –f(x) = ax 2 +bx+c f(x) = 2ax + b

a function maps values from the domain to the range uniquely –can be multivalued in range, but not domain What is a Function?

derivative is another function that maps changes in the domain to changes in the range, normalized What is a Derivative? y x

the key insight of calculus: the change is so small that you can ignore it anytime its multiplied by itself...so, you can treat any continuous function as linear if youre zoomed in far enough (to 1 st order) –continuity keeps us from dividing by zero –normalization makes the numbers finite Derivatives are Linear x0x0 x0x0 boom!

Random but Nifty Example of Ignoring Infinitessimals (nothing up my sleeve!) prove infinitessimal rotations in 3D are vectors (add, commute, etc.) –angular velocity is a vector, cross product differentiates rotating vectors infinitessimal rotations are vectors: 3x3 skew symmetric matrices are isomorphic to vectors angular velocity differentiates with cross product: finite rotation: infinitessimal rotation: infinitessimal rotations add and commute:

Scalar Derivatives: a line how does y (or f(x)) change for a change in x? –for lines, the change (derivative) is constant everywhere –drawn as red vector, but actually a scalar, slope a 1

Scalar Derivatives: a curve for curves, the derivative is position dependent –derivative is a function itself, mapping change in domain to change in range –both direction and magnitude, but still a scalar

vectors are columns of numbers in this talk, not rows we right-multiply matrices by column vectors: v = Mv matrix & vector ops fit together nicely keeping the shapes right is the key to sanity with vector calc m by n * n by p = m by p this is why v=vM makes no sense for column vectors –either youre using row vectors, or youre confused –either way, youre in for some pain when trying to do real math because all math books use columns for vectors and rows are special early computer graphics books got this backwards, and hosed everybody The Shape of Matrix Operations a·b = c = a T b = c Ab=c m n n p AB=C

Shape of Derivatives df needs to accept a domain linearly (ie. right-multiplied vector or scalar) to produce a range scalar valued function of scalar –y=f(x) dy =dfdx vector valued function of scalar –v=f(t) dv = dfdt scalar valued function of vector –z=f(x,y) vector valued function of vector –p=f(u,v) d d dd df

Shape of Derivatives (cont.) scalar valued function of vector: expands to row vector –the resulting range value depends on all the domain values –the differential needs a slot for a delta/change in each domain dimension...so it must be a row vector, theres no T or · –z=f(x,y) –dz=dfdx vector valued function of vector: expands to matrix –p=f(u,v) df = d dz = dfdx = d dp = dfdx = d

for a change in the parameter (domain), how does the function (range) change? –in this case, differential is a vector Derivatives: a parametric function a vector function of a scalar

Derivatives: a scalar function of a vector height field differential is not in range of function row vector column vector

Derivatives: a scalar function of a vector view height field as implicit surface in 3d –write g(x,y,z) > 0 above surface –differential is surface normal (not unit)

Derivatives: a scalar function of a vector example plane

Derivatives: a scalar function of a vector example sphere

A Surface Normal is Not a Vector! this is why you need to keep shapes distinct vector is a difference between two points normal is really a mapping from a vector to a scalar a b n v points &vectors transform like this:normals transform like this:

Normals and Vectors Example scaling an ellipse x values for y=0

Derivative of Vector Mappings barycentric coordinates in 2D triangle –vector function of a vector –if square, can invert Jacobian to find du,dv given dp –function is linear in this case, but works generally –determinant of Jacobian is how areas distort under function e1e1 e2e2 p0p0 p1p1 p2p2 p Jacobian matrix

Barycentric Coordinates in 3D Triangle now jacobian is 3x2 –can still find du,dv from dp with least squares e1e1 e2e2 p0p0 p1p1 p2p2 p same as projecting dp down into triangle

Implicit Functions equalities (constraints) subtract off DOFs explicit to implicit is easy: z = f(x,y) g(x,y,z) = z – f(x,y) =0 implicit to explicit is hard: f(x,y) = 0 y = f(x) solving nonlinear equations, sometimes multiple or no solutions but, inverting it differentially is easy because of linearization: shape/rank of jacobian will tell you how constrained you are as well f(x,y) = 0

Product Rule for Vector Derivatives for scalar multiplication: differential of a scalar function of a scalar is a scalar

Product Rule for Vector Derivatives for scalar multiplication: differential of a scalar function of a scalar is a scalar for dot product its a little wackier if vectors in dot are functions of scalars, its the same

Product Rule for Vector Derivatives for scalar multiplication: differential of a scalar function of a scalar is a scalar for dot product its a little wackier if vectors in dot are functions of scalars, its the same if vectors in dot are functions of vectors, need to watch shape! –we know result must be row: d

Product Rule for Vector Derivatives for scalar multiplication: differential of a scalar function of a scalar is a scalar for dot product its a little wackier if vectors in dot are functions of scalars, its the same if vectors in dot are functions of vectors, need to watch shape! –we know result must be row: d d d ??? use transpose picture to reason about it:

Product Rule for Vector Derivatives for scalar multiplication: differential of a scalar function of a scalar is a scalar for dot product its a little wackier if vectors in dot are functions of scalars, its the same if vectors in dot are functions of vectors, need to watch shape! –we know result must be row: d d d ??? dont want to use tensors, so we pull a fast one with the commutativity of dot (a·b=b·a) d d use transpose picture to reason about it:

Dot Product Derivative Example derivative of squared length of vector p q r dp makes intuitive sense: if dp is orthogonal, length doesnt change

Cross Product Works the Same Way if cross is a vector function of vectors... result must be a matrix use the skew symmetric picture of cross product d d ??? same problem with tensors, so we pull the same (skew-)commutativity trick

Cross Product Derivative Example differentiate a cross product of moving vector with constant vector n r dr c dc again, makes intuitive sense: dc changes orthogonally to dr changes

References Advanced Calculus of Several Variables –Edwards, Dover Calculus and Analytic Geometry –Thomas & Finney Classical Mechanics –Goldstein

Download ppt "Neat Stuff from Vector Calculus & Related Subjects Chris Hecker definition six, inc. & Maxis."

Similar presentations