Discrete Differential Geometry
Yu Jiang

Homepage: Discrete Differential Geometry: An Applied Introduction

A Quick and Dirty Introduction to Differential Geometry

一个三维空间的曲面可以描述为映射 , 它的微分 则是将一个 中的切向量映射到 的切空间. 我们用 表示 上所有的切向量.

有了切空间, 我们可以定义法向量 , 对于一个可定向的曲面, 可以把法向量理解成一个连续映射 (Gauss Map), 单位球面显然也是三维空间的一个曲面, 我们可以把 看做 , 它的微分 (Weingarten Map) 告诉了我们法向量变化的方向.

在处理曲线的时候, 我们往往会用到 isometric reparameterization 的想法, 也可以叫做共形映射, , 但是对于曲面而言, 这种映射有可能不存在, 甚至是局部的也不存在, 作为替代品, 我们可以使用保角映射 (conformal coordinates), 要求 , 这里要求 中的所有切向量, 是一个关于 的正标量函数. 这表明曲面仍然可以被拉伸, 但是不能切变, 因为正交的切向量映射后仍然是正交的.

一个重要的事实是, 由uniformization theorem保证, 每一个点的领域都可以找到保角映射. 就像曲线一样, 我们往往只需要知道直线的共形映射存在, 并不需要显式地写出它的表达式, 类似地, 对于曲面, 我们也只需要知道在一个领域内保角映射存在, 并且只需要知道该点的函数值 , 就可以知道这个曲面是如何拉伸的, 而不需要完整的雅可比矩阵.

下面介绍一下有关曲线曲率的内容, 不加说明的, 我们用 表示一般地正则曲线, 用 表示弧长重参数化.

我们先假设曲线在二维平面, 对于弧长参数化 , 对它做泰勒展开 , 曲率则是考虑它关于切线的偏离程度, 所以 . 由于 , 所以 , 所以 平行, 于是我们定义曲率为 . 我们可以把这个定义推广到任意高维空间. 对于一般曲线的曲率计算, 我们有

法向量也可以通过曲率定义, , 它是一个与切向量 垂直的单位向量, 我们定义附法向量(binormal) , 这样 构成了一组右手正交基.

由于 是单位向量, 所以 垂直, 又因为 , 所以 也垂直, 因此 平行, 我们定义挠率 (torsion) 使得 . 挠率只有在曲率不为零的点有定义. 对于一般曲线的挠率计算, 我们有

如果正则曲线的曲率处处为零, 那么它就是一条直线; 如果它挠率处处为零(假设处处有定义), 那么它可以被一个平面包含.

利用右手正交基, 可以进一步得到 . 总结为 Frenet–Serret equations:

这个反对称矩阵非常好理解, 可以把式子写成 , 其中 因为这是单位正交基, 所以 , 因此 是反对称的.

为了引出曲面的曲率, 现在我们先考虑曲面上曲线的曲率, 可以想象 中的一条直线 , 这个时候可以把 看做是一条曲线, 它在某点的曲率可以根据 来提取出来:

怎么理解这个式子我其实想了很久, 假设 的弧长参数化, 那么 , 同样的 . 这样可以理解为什么分布会带有平方, 因为 也会收到 的拉伸而放缩.

再观察公式 , 可以发现 一定落在曲面的切平面内的, 所以我们引入 Shape Operator , 满足 . Shape Operator 是一个线性映射, 因为方向导数可以表示成关于基的导数的线性组合.

假设一点 的邻域用 坐标系参数化为 , 那么 就是该点切空间 的一组基,根据定义: , . 由于 , 分别对 求导, 得到:

, . 所以 具有对称性.

因为 Shape Operator 是一个二维的线性映射, 所以它有两个特征值 , 叫做主曲率 (principal curvatures), 即 .

根据上面的对称等式, 我们有 . 而, 所以 . 只要 , 就有 , 也就是说主曲率对应的切向量是垂直的.

所以对于一般方向上的曲率, 可以表示成主曲率的线性组合. 假设 , 那么:

对于曲面的整体曲率, 可以定义平均曲率(mean curvature) , 高斯曲率(Gaussian curvature) .

总结一下就是两个对称式, 这分别叫做第一基本形式和第二基本形式:

对于一个曲面 , 它的切向量 可以写成雅可比矩阵的形式,

那么 . 我们可以尝试把其他的几何对象也用矩阵表示, 比如第一基本形式: . 我们如果用矩阵 表示, 那么

我们定义了 Shape Operator , 和第二基本形式 . 如果我们用矩阵 表示, 那么

其中每个元素可以写成: . 最后我们可以通过矩阵来验证通过微分得到的结论, 比如 , 我们可以重写为:

A Quick and Dirty Introduction to Exterior Calculus

外代数研究的基本对象是 k-vectors, 1-vector 就是向量, 2-vector 可以看做是一个有向的面积元, 写为 . 它的方向可以通过右手定则确定, 而其本身满足双线性条件. 即 , .

对于 3-vector , 满足结合律 .

在线性空间中, 一个子空间的正交补是另一个子空间, 类似的, 一个 k-vector 的正交补是一个 (n-k)-vector, 用 Hodge star 符号表示. 因为 k-vector 的维数是 , 而 (n-k)-vector 的维数是 , Hodge star 在这两个空间上定义的对偶关系. 对于 中的标准正交基 , 选取其中 , 定义: . 而对于一般的 k-vector, 则由加性和齐次性推广: .

一个重要的例子是 中 1-vector, 就是原始向量逆时针旋转九十度. 而 中的 2-vector, , 和上面的对偶思想类似.

我们可以把线性代数里的内积引入到外代数中, 在这里叫做 k-form. 用 可以把 k-form 转换到 k-vector, 用 可以把 k-vector 转换到 k-form. 在曲面上, 它们的定义是: .

在不引起混淆的情况下, 我们用这套符号表示坐标: 对于 vector, 表示为:

对于 1-form, 表示为:

一对基 有时也被称做对偶基, 满足 . 所以: .

上面已经讨论过了一维向量的投影内积, 下面我们来看一下二维的情况. 假设有一个有向的平面元 , 我们想让它投影到 上, 可以让;两条边分别投影到这个平面上: , . 所以投影后的平面元的面积由叉积的长度给出: .

这样我们推导出了二维 k-form 的操作:

同样地, 这里的 也是满足双线性和反对称和结合律的. 具体地来说, 对于 k-form , l-form :

  1. ,
  2. ,
  3. .

现在我们一直在讨论实值的向量, 实际上外代数可以讨论任何向量空间的值, 包括复数值和向量值. 比如向量值的情况: 我们的曲面映射 , 其本身 就可以视为 0-form, 对于任一点 , 不需要任何的输入, 就可以输出一个三维向量 . 类似地, 它的微分 则是一个 1-form, 需要输入一个方向向量 , 映射到一个三维向量 .

更加一般的, 假设我们在向量空间 上构建外代数, 考虑最简单的 2-form: , 此时 都是 中的向量, 要如何定义两个向量的乘法是一个问题. 并非每一个向量空间都有自然的乘法. 如果是复数空间, 可以用复数的乘法; 如果是 , 向量的叉积可以作为乘法.

曲面上的体积元. 回到空间上的曲面 , 如果选取 中的两个垂直的单位向量 , 简单的面积元 是度量它们在平面上的面积, 如果想要度量它们在曲面上的面积, 我们可以计算扭曲后的面积大小:

所以在任何一个邻域上, 曲面的面积元和平面的面积元都只差一个缩放 , 例如:

在曲面中, 我们也可以在 k-form 上做 Hodge star: . 通过这个表达式, 我们可以把欧氏空间的内积写成外代数的形式:

其中 是三维空间的向量. 类似地, 向量的叉积也可以写成外代数的形式:

下面我们要仔细讨论什么是微分, 对于一个标量函数, , 可以认为它是一个 0-form, 它的梯度 是一个向量场, 第一种定义梯度的方式是指这唯一的向量场, 使得对于任意向量 , 它们的内积等于方向导数, 另一种则是把微分看做 1-form, 使得 . 这里的区别则是在于后者不依赖内积的定义, 而是把微分直接看做是一个 的映射, 这里 是指所有 k-form 构成的集合. 因此对于梯度, 我们有 .

下面要递归地定义其他 k-form 上的微分, 对于一个 k-form , .

例如, 对于一个三维空间的 1-form , 它的微分: . 对于 , 我们可以视 为一个 0-form, 是一个 1-form 的基, 所以

完整展开后计算, 会发现这个和计算旋度是一样的, 我们得到: . 向量场 首先通过 转换成 1-form, 然后通过微分算子 得到 2-form, 再通过 Hodge star 得到 1-form, 最后通过 转换回向量场.

下面一个性质是 correctness: . 有点类似于梯度的旋度是零, .

类似地, 我们可以对 1-form 取 Hodge star, 得到一个 (n-1)-form 后计算它的微分

所以散度可以写成: . 也有一些人喜欢定义 codifferential . 我们可以画出下面的图来总结这些算子之间的关系:

image

综上, 外微分是唯一一个 的线性算子, 满足:

  1. 时, ,
  2. 对于 , ,
  3. .

在传统的微积分学中, 积分和微分是通过牛顿-莱布尼兹基本定理联系起来的, 而在外微分中, 则是由斯托克斯定理联系起来, 我们的最终目的是在 Mesh 上得到离散外微分算子.

式子的左边是在 k-dim 的区域 上对 k-form 做积分, 右边是在 k-1-dim 的边界 上对 k-1-form 做积分.

一个例子是散度定理. .

定义 1-form , 散度 , 但是写成 2-form 则是 . 所以运用 Stokes 定理:

另一个例子是 Green 公式: .

同样的, 定义 1-form , 旋度 , 但是写成 2-form 则是 . 所以运用 Stokes 定理: