A Quick and Dirty Introduction to Differential Geometry
Review Derivatives of Vector-Valued Functions from [Bel]
as well as differentiation of inverse functions.
Skim lectures 1 and 2 from [Sol].
Read chapter 2 and the appendices in [Cra].
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)=(rcossr−1,rsinsr−1). 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