Differential Geometry (And a Bit of Topology) Multi-Dimensional Derivatives Derivative of a Function
Total Page:16
File Type:pdf, Size:1020Kb
Geometric Modeling Summer Semester 2012 Differential Geometry (and a bit of Topology) Multi-Dimensional Derivatives Derivative of a Function Reminder: The derivative of a function is defined as d f (t h) f (t) f (t): lim dt h0 h If limit exists: function is called differentiable. Other notation: d d k f (t) f '(t) f (t) f (t) f (k )(t) dt k variable time dt from context variables repeated differentiation (higher order derivatives) Taylor Approximation Smooth functions can be approximated locally: • f (x) f (x0 ) d f (x )x x dx 0 0 1 d 2 f (x )x x 2 ... 2 dx2 0 0 1 d k ... f (x )x x k O(x k1 ) k! dx k 0 0 • Convergence: holomorphic functions • Local approximation for smooth functions Rule of Thumb Derivatives and Polynomials 2 3 • Polynomial: 푓 푥 = 푐0 + 푐1푥 + 푐2푥 + 푐3푥 … . 0th-order derivative: 푓 0 = 푐0 . 1st-order derivative: 푓′ 0 = 푐1 . 2nd-order derivative: 푓′′ 0 = 2푐2 . 3rd-order derivative: 푓′′′ 0 = 6푐3 . ... Rule of Thumb: • Derivatives correspond to polynomial coefficients • Estimate derivatives polynomial fitting Partial Derivative Multivariate functions: • Notation changes: use curly-d f (x1 ,..., xk1 ,xk ,xk1 ,..., xn ): xk f (x ,..., x ,x h,x ,..., x ) f (x ,..., x ,x ,x ,..., x ) lim 1 k1 k k1 n 1 k1 k k1 n h0 h • Alternative notation: f (x) f (x) f (x) k xk xk Special Cases Derivatives for: • Functions f: n (“heightfield”) • Functions f: n (“curves”) • Functions f: n m (general case) Special Cases Derivatives for: f(x, y) • Functions f: n (“height field”) • Functions f: n (“curves”) x2 • Functions f: n m (general case) x1 height field Gradient Gradient: • Given a function f: n (“heightfield”) • The vector of all partial derivatives of f is called the gradient: f (x) x1 x1 f (x) f (x) f (x) x x n n Gradient Gradient: f(x0 )f(x0 )(x x0 ) f(x) f(x) f(x) x x 0 x1 x1 x2 x2 • gradient: vector pointing in direction of steepest ascent. • Local linear approximation (Taylor): f (x) f (x0 ) f (x0 )(x x0 ) Higher Order Derivatives Higher order Derivatives: • Can do all combinations: ... f x x x i1 i2 ik • Order does not matter for f Ck Hessian Matrix Higher order Derivatives: • Important special case: Second order derivative 2 2 x1 x2 x1 xn x1 2 2 f (x) : H (x) x1 x2 x1 xn x2 f 2 x x x x x 2 1 n 2 n n • “Hessian” matrix (symmetric for f C2) • Orthogonal Eigenbasis, full Eigenspectrum Taylor Approximation f(x) x 2nd order approximation x1 (schematic) x2 Second order Taylor approximation: • Fit a paraboloid to a general function 1 f (x) f (x ) f (x )(x x ) (x x )T H (x )(x x ) 0 0 0 2 0 f 0 0 Special Cases Derivatives for: t y • Functions f: n (“heightfield”) z • Functions f: n (“curves”) • Functions f: n m (general case) x curves Derivatives of Curves Derivatives of vector valued functions: • Given a function f: n (“curve”) f1(t) f (t) fn(t) • We can compute derivatives for every output dimension: d f (t) dt 1 d f (t): : f '(t) : f (t) dt d f (t) n dt Geometric Meaning f(t) t0 f ’(t ) Tangent Vector: 0 • f ’: tangent vector . • Motion of physical particle: f = velocity. • Higher order derivatives: Again vector functions .. • Second derivative f = acceleration Special Cases Derivatives for: w y • Functions f: n (“heightfield”) u z • Functions f: n (“curves”) v x • Functions f: n m (general case) general mapping You can combine it... General case: • Given a function f: n m (“space warp”) f (x ,..., x ) 1 1 n f (x) f (x1 ,..., xn ) fm(x1 ,..., xn ) • Maps points in space to other points in space • First derivative: Derivatives of all output components of f w.r.t. all input directions. • “Jacobian matrix”: denoted by f or Jf Jacobian Matrix Jacobian Matrix: f (x) J f (x) f (x1 ,..., xn ) f (x ,..., x )T f (x) f (x) 1 1 n x1 1 xn 1 f (x ,..., x )T f (x) f (x) m 1 n x1 m xn m Use in a first-order Taylor approximation: f(x) f(x0 ) J f (x0 )x x0 matrix / vector product Special Cases Derivatives for: • Functions f: n (“heightfield”) • Functions f: n (“curves”) • Functions f: n m (general case) w f(x, y) t y y u z x2 v z x1 x x height field curves general mapping Coordinate Systems Problem: • What happens, if the coordinate system changes? • Partial derivatives go into different directions then. • Do we get the same result? Total Derivative First order Taylor approx.: f (x0 ) f (x0 )(x x0 ) • f (x ) f (x )(x x ) R (x) 0 0 0 x0 f(x) • Converges for C1 functions x0 f: n m x1 R (x) x2 lim x0 0, xx 0 x x0 (“totally differentiable”) Partial Derivatives Consequences: • A linear function: fully determined by image of a basis • Hence: Directions of partial derivatives do not matter – this is just a basis transform. We can use any linear independent set of directions T . Transform to standard basis by multiplying with T-1 • Similar argument for higher order derivatives Directional Derivative The directional derivative is defined as: • Given f: n m and v n, ||v|| = 1. • Directional derivative: f d v f (x) (x): f (x tv) v dt • Compute from Jacobian matrix v v f (x) f (x) v (requires total differentiability) Multi-Dimensional Integrals Integral Integral of a function • Function f: b • Integral f ( t ) dt measures signed area under curve: a + + + + + + -- Integral Numerical Approximation • Sum up a series of approximate shapes • (Riemannian) Definition: limit for baseline zero Multi-Dimensional Integral Integration in higher dimensions • Functions f: n • Tessellate domain and sum up volume of cuboids 1,4 1,4 1,2 1,2 1 1 0,8 0,8 0,6 0,6 0,4 0,4 1 1 0,2 0,8 0,2 0,8 0,6 0,6 0 0,4 0 0,4 0,2 0 0,1 0,2 0 0,1 0,2 0,3 0,2 0,3 0,4 0,5 0,4 0,5 0 0,6 0 0,6 0,7 0,8 0,7 0,8 0,9 1 0,9 1 Integral Transformations Integration by substitution: f(x) b g1(b) f (x)dx f (g(t))g'(t)dt 1 a g (a) Need to compensate for speed of f(x) movement that shrinks the measured area. g(x) g(x) Multi-Dimensional Substitution Transformation of Integrals: 2g(x) x f (x)dx f g(y) detg(y) dy 2 g1() • g C1, invertible 1g(x) • Jacobian approximates x1 local behavior of g() • Determinant: local area/volume change • In particular: det ( g ( y ) ) 1 means g() is area/volume conserving. Topology - a very short primer - A Few Concepts from Topology Homeomorphism: • 푓: 푋 → 푌 • 푓 is bijective • 푓 is continuous • 푓−1 exists and is continuous • Basically, a continuous deformation Topological equivalence • Objects are topologically equivalence if there exists a homeomorphism that maps between them • “Can be deformed into each other” Surfaces Boundaries of volumes in 3D • Topological Equivalence classes . Sphere . Torus . n-fold Torus • Genus = number of tunnels ... g = 0 g = 1 g = 2 Manifold homeomorphism 푥1 푥2 Definition: Manifold • A d-manifold M: At every 푥 ∈ 푀 there exists an 휖-environment homeomorphic to a d-dimensional disc • With boundary: disc or half-disc Further concepts Connected Set • There exists a continuous curve within the set between all pairs of points Simply Connected • Every closed loop can be continuously shrunken until it disappears Differential Geometry of Curves & Surfaces Part I: Curves Parametric Curves Parametric Curves: b C = f ((a, b)) • A differentiable function ff f: (a, b) n a describes a parametric curve n C = f ((a, b)), C . • The parametrization is called regular if f ’(t) 0 for all t. • If || f ’( t )| | 1 for all t, f is called a unit-speed parametrization of the curve C. Length of a Curve The length of a curve: • The length of a regular curve C is defined as: b length C f ' (t ) dt a • Independent of the parametrization (integral transformation theorem). • Alternative: lengthC = |b – a| for a unit-speed parametrization Reparametrization Enforcing unit-speed parametrization: • Assume:|| f ’( t )| | 0 for all t. • We have: x length C ( x ) f ' (t ) dt (invertible, because f ’(t) > 0) a • Concatenating f o length 1 yields a unit-speed parametrization of the curve length(t) length-1(t) Tangents Unit Tangents: • The unit tangent vector at x (a, b) is given by: f '(t) tangent(t) f '(t) 2 • For curves C , the unit normal vector of the curve is defined as: 0 1 f '(t) normal(t) 1 0 f '(t) Curvature Curvature: • First derivatives: curve direction / speed. • Curvature encoded in 2nd order information. • Why not just use f ’’? • Problem: Depends on parametrization . Different velocity yields different results . Need to distinguish between acceleration in tangential and non-tangential directions. Curvature & 2nd Derivatives C = f ((a, b)) normal(t) f’’(t) tangent(t) Definition of curvature • We want only the non-tangential component of f ’’. • Accelerating/slowing down does not matter for curvature of the traced out curve C. • Need to normalize speed. Curvature Curvature of a Curve C 2: 0 1 f ''(t), f '(t) 1 0 κ2(t) 3 f '(t) • Normalization factor: . Divide by || f ’|| to obtain unit tangent vector .