A Quick and Dirty Introduction to Differential Geometry

  1. Review Derivatives of Vector-Valued Functions from [Bel] as well as differentiation of inverse functions.

  2. Skim lectures 1 and 2 from [Sol].

  3. Read chapter 2 and the appendices in [Cra].

  4. Read the following:

    • Lecture 3 from [Sol].

    • Lecture 2 student notes, materials, and supplements from [BS].

    • Lecture 3 student notes from [BS].

http://graphics.stanford.edu/courses/cs468-13-spring/schedule.html http://groups.csail.mit.edu/gdpgroup/6838_spring_2017.html

http://math.bard.edu/belk/math352f11/

http://faculty.bard.edu/belk/math352f11/Outline%20-%20Parallel%20Transport.pdf

Curvature of a Circle

Suppose the parameterization of a circle of radius r with respect to arc length is given by γ(s)=(rcossr1,rsinsr1). The length of the path up to s is defined as

l(s)=s0

By the fundamental theorem of calculus [djoyce2014mcutvc],

\frac{dl}{ds} = \left\Vert \dot{\gamma}(s) \right\Vert_2 \implies dl = \sqrt{d\gamma_1^2 + \cdots + d\gamma_n^2}.

Denote the unit tangent vector (for arbitrary parameterization) as

T(s) = \frac{\dot{\gamma}(s)}{\left\Vert \dot{\gamma}(s) \right\Vert_2} = \frac{d\gamma}{ds} \frac{ds}{dl} = \frac{d\gamma}{dl}.

Observe that

\begin{split}\frac{d}{ds} \left\Vert \dot{\gamma}(s) \right\Vert_2 &= \frac{d}{ds} \sqrt{ \left( \frac{d\gamma_1(s)}{ds} \right)^2 + \cdots + \left( \frac{d\gamma_n(s)}{ds} \right)^2 }\\ &= \frac{1}{2} \left\Vert \dot{\gamma} \right\Vert_2^{-1} \frac{d}{ds} \left[ \left( \frac{d\gamma_1}{ds} \right)^2 + \cdots + \left( \frac{d\gamma_n}{ds} \right)^2 \right] & \quad & \text{chain rule}\\ &= \frac{1}{2} \left\Vert \dot{\gamma} \right\Vert_2^{-1} \left[ 2 \dot{\gamma}_1 \ddot{\gamma}_1 + \cdots + 2 \dot{\gamma}_n \ddot{\gamma}_n \right]\\ &= \left\Vert \dot{\gamma} \right\Vert_2^{-1} \left\langle \dot{\gamma}, \ddot{\gamma} \right\rangle.\end{split}

The curvature \kappa_\gamma at s is the angular rate of change of T per unit change in the distance along the path. That is,

\kappa_\gamma = \left\Vert \frac{dT}{dl} \right\Vert_2

where the geodesic curvature vector

\begin{split}\kappa_\gamma(s) = \frac{dT}{dl} &= \frac{ds}{dl} \frac{dT}{ds}\\ &= \frac{1}{\left\Vert \dot{\gamma}(s) \right\Vert_2} \frac{d}{ds} \frac{\dot{\gamma}(s)}{\left\Vert \dot{\gamma}(s) \right\Vert_2}\\ &= \frac{1}{\left\Vert \dot{\gamma} \right\Vert_2} \left( \frac{\ddot{\gamma}}{\left\Vert \dot{\gamma} \right\Vert_2} - \dot{\gamma} \frac{ \frac{d}{ds} \left\Vert \dot{\gamma} \right\Vert_2 }{ \left\Vert \dot{\gamma} \right\Vert_2^2 } \right) & \quad & \text{quotient rule}\\ &= \frac{1}{\left\Vert \dot{\gamma} \right\Vert_2^2} \left( \ddot{\gamma} - \dot{\gamma} \frac{ \left\langle \dot{\gamma}, \ddot{\gamma} \right\rangle }{ \left\Vert \dot{\gamma} \right\Vert_2^2 } \right).\end{split}

The curvature of a circle parameterized in terms of arc length is given by

\begin{split}\kappa_\gamma &= \left\Vert \frac{dT}{dl} \right\Vert_2\\ &= \left\Vert \ddot{\gamma} \right\Vert_2 & \quad & \left\Vert \dot{\gamma} \right\Vert_2 = 1 \quad \text{and} \quad \left\langle \dot{\gamma}, \ddot{\gamma} \right\rangle = 0\\ &= \left\Vert \begin{bmatrix} -r^{-1} \cos sr^{-1}\\ -r^{-1} \sin sr^{-1} \end{bmatrix} \right\Vert_2 & \quad & \dot{\gamma}(s) = \begin{bmatrix} -\sin sr^{-1}\\ \cos sr^{-1} \end{bmatrix}\\ &= \frac{1}{r}.\end{split}

Any Parameterization of Curvature

Let C be a smooth curve defined by \gamma(t) where t is any parameter. The geodesic curvature vector is given by

\kappa_\gamma(t) = \frac{dT(t)}{dt} = \frac{dT}{dl(t)} \frac{dl(t)}{dt} = \frac{dT}{dl} \left\Vert \dot{\gamma} \right\Vert_2 \implies \frac{dT}{dl} = \frac{dT}{dt} \left\Vert \dot{\gamma} \right\Vert_2^{-1}.

Thus, the curvature parameterized in terms of arc length is equivalent to

\kappa_\gamma = \left\Vert \frac{dT}{dl} \right\Vert_2 = \frac{ \left\Vert \frac{dT}{dt} \right\Vert_2 }{ \left\Vert \dot{\gamma} \right\Vert_2 } = \frac{ \left\Vert \dot{T} \right\Vert_2 }{ \left\Vert \dot{\gamma} \right\Vert_2 } = \frac{ \left\Vert \dot{\gamma} \times \ddot{\gamma} \right\Vert_2 }{ \left\Vert \dot{\gamma} \right\Vert_2^3 }.

The last equivalence relation can be derived as follows [lavalm2203vfc]. Notice that

T(t) = \frac{\dot{\gamma}(t)}{\left\Vert \dot{\gamma}(t) \right\Vert_2} \implies \dot{\gamma} = \frac{dl}{dt} T \qquad \text{and} \qquad \ddot{\gamma} = \frac{d}{dt} \left( \frac{dl}{dt} T \right) = \frac{d^2 l}{dt^2} T + \frac{dl}{dt} \dot{T}.

The magnitude of their cross product

\begin{split}\dot{\gamma} \times \ddot{\gamma} &= \frac{dl}{dt} \frac{d^2 l}{dt^2} (T \times T) + \left( \frac{d l}{dt} \right)^2 \left( T \times \dot{T} \right)\\ &= \left( \frac{d l}{dt} \right)^2 \left( T \times \dot{T} \right)\end{split}

is given by

\begin{split}\left\Vert \dot{\gamma} \times \ddot{\gamma} \right\Vert_2 &= \left( \frac{d l}{dt} \right)^2 \left\Vert T \times \dot{T} \right\Vert_2\\ &= \left( \frac{d l}{dt} \right)^2 \left\Vert T \right\Vert_2 \left\Vert \dot{T} \right\Vert_2 \sin \theta\\ &= \left( \frac{d l}{dt} \right)^2 \left\Vert \dot{T} \right\Vert_2 \sin \theta & \quad & \left\Vert T \right\Vert_2 = 1\\ &= \left\Vert \dot{\gamma} \right\Vert_2^2 \left\Vert \dot{T} \right\Vert_2 & \quad & T \perp \dot{T}.\end{split}

Therefore,

\kappa_\gamma = \frac{ \left\Vert \dot{T} \right\Vert_2 }{ \left\Vert \dot{\gamma} \right\Vert_2 } = \frac{ \left\Vert \dot{\gamma} \times \ddot{\gamma} \right\Vert_2 }{ \left\Vert \dot{\gamma} \right\Vert_2^3 }.

Parallel Transport Approach to Curve Framing http://www.math.union.edu/~jaureguj/principal_curvatures.pdf http://brickisland.net/DDGSpring2016/wp-content/uploads/2016/02/DDGNotes.pdf http://graphics.stanford.edu/courses/cs468-13-spring/schedule.html https://math.stackexchange.com/questions/856381/curve-of-constant-curvature-on-unit-sphere-is-planar-curve http://graphics.stanford.edu/courses/cs468-13-spring/assets/hw1.pdf http://faculty.bard.edu/belk/math352f11/Outline%20-%20Parallel%20Transport.pdf

@article{grinspun2006discrete,

title={Discrete differential geometry: an applied introduction}, author={Grinspun, Eitan and Wardetzky, Max and Desbrun, Mathieu and and Schr{“o}der, Peter}, journal={ACM SIGGRAPH ASIA Course}, volume={7}, year={2008}

}

Principal Curvatures and Directions

@misc{jauregui2011pc,

title={Principal Curvatures}, author={Jauregui, Jeff}, howpublished={url{https://www.math.upenn.edu/~shiydong/Math501X-7-GaussBonnet.pdf}}, note={Accessed on 2017-09-22}

}

@misc{djoyceddsatp,

title={Directional Derivatives, Steepest Ascent, Tangent Planes}, author={David E. Joyce}, howpublished={url{https://mathcs.clarku.edu/~djoyce/ma131/directional.pdf}}, note={Accessed on 2017-10-10}

}

\begin{split}h(x, y) = ax^2 + by^2 + cxy + dx + ey + f = \begin{bmatrix} x & y & 1 \end{bmatrix} \begin{bmatrix} a & c / 2 & d / 2\\ c / 2 & b & e / 2\\ d / 2 & e / 2 & f \end{bmatrix} \begin{bmatrix} x\\ y\\ 1 \end{bmatrix} = \frac{1}{2} \mathbf{x}^\top Q \mathbf{x}\end{split}
\begin{split}\nabla h(x, y) = \frac{1}{2} (Q + Q^\top) \mathbf{x} = Q \mathbf{x} = \begin{bmatrix} 2ax + cy + d\\ cx + 2by + e\\ dx + ey + 2f \end{bmatrix} = \begin{bmatrix} h_x\\ h_y \end{bmatrix} = \begin{bmatrix} 2ax + cy + d\\ 2by + cx + e \end{bmatrix}.\end{split}
\begin{split}J = \begin{bmatrix} 1 & 0\\ 0 & 1\\ h_x & h_y \end{bmatrix}\end{split}

Suppose a quadratic polynomial h(x, y) = ax^2 + by^2 + cxy + dx + ey + f describes the height of the surface relative to the plane of the center triangle. The gradient of this scalar field is

\begin{split}\nabla h = \begin{bmatrix} h_x\\ h_y \end{bmatrix} = \begin{bmatrix} 2ax + cy + d\\ 2by + cx + e \end{bmatrix}.\end{split}

The directional derivative in the direction \mathbf{v} is defined as [djoyceddsatp]

D_{\mathbf{v}} h(x, y) = \nabla h(x, y) \cdot \mathbf{v}.

Define a plane curve as

\begin{split}c(t) = \begin{pmatrix} h_x t\\ h_y t\\ h(h_x t, h_y t) \end{pmatrix}\end{split}

The surface points are parameterized as

p(x, y) = (x, y, h(x, y)) \quad \text{where} \quad x, y \in \mathbb{R}.

The first derivatives

\begin{split}\begin{aligned} p_x &= \frac{\partial p}{\partial x} &= (1, 0, h_x)\\ &= (1, 0, 2ax + cy + d) \end{aligned} \quad \text{and} \quad \begin{aligned} p_y &= \frac{\partial p}{\partial y} &= (0, 1, h_y)\\ &= (0, 1, 2by + cx + e) \end{aligned}\end{split}

are vectors that span the tangent plane to the surface at the barycenter of the center triangle. The surface normal n at point p is defined as the unit vector perpendicular to the tangent plane at point p:

\begin{split}N(p) = \frac{p_x \times p_y}{\left\Vert p_x \times p_y \right\Vert} = \frac{1}{\sqrt{h_x^2 + h_y^2 + 1}} \begin{bmatrix} -h_x\\ -h_y\\ 1 \end{bmatrix}.\end{split}

where

\begin{align}\begin{aligned}\begin{split}\nabla h = \begin{bmatrix} h_x\\ h_y \end{bmatrix}.\end{split}\\\begin{split} c'(t) = \begin{pmatrix} h_x\\ h_y\\ 2 a h_x^2 t + 2 b h_y^2 t + 2 c h_x h_y t + d h_x + e h_y + f \end{pmatrix}\end{split}\\\begin{split}c''(t) = \begin{pmatrix} 0\\ 0\\ 2 a h_x^2 + 2 b h_y^2 + 2 c h_x h_y \end{pmatrix}\end{split}\end{aligned}\end{align}

The signed curvature \kappa(p) at p with respect to the unit normal is

\kappa(p)

and

\begin{split}\nabla^2 h = \begin{bmatrix} h_{xx} & h_{xy}\\ h_{xy} & h_{yy} \end{bmatrix} = \begin{bmatrix} 2a & c\\ c & 2b \end{bmatrix}.\end{split}

The curvature of a function is defined as

\det \nabla^2 h = h_{xx} h_{yy} - h_{xy}^2

http://www.math.union.edu/~jaureguj/principal_curvatures.pdf http://www.ahinson.com/algorithms_general/Sections/Mathematics/Eigensolution2x2.pdf http://www.cse.usf.edu/~r1k/MachineVisionBook/MachineVision.files/MachineVision_Chapter13.pdf

[ ]: