本页只解决一个问题
连续微分形式怎样变成网格上的稀疏矩阵?
本页是原长篇讲义的单概念版本。第一次阅读只追踪本页定义的对象;看见未掌握的前置符号时,先沿链接退回,不要跳过定义硬背结论。
开始前
12. 离散外微分:incidence matrix
三角网格上:
- 离散 0-形式:顶点值f∈RV;
- 离散 1-形式:有向边值ω∈RE;
- 离散 2-形式:面值η∈RF。
上一章的边界矩阵B1,B2 给出离散外微分:
d0=B1T:C0→C1,
d1=B2T:C1→C2.
由于B1B2=0:
d1d0=B2TB1T=(B1B2)T=0.
对边e=(i,j):
(d0f)ij=fj−fi.
对面t=(i,j,k):
(d1ω)ijk=ωij+ωjk+ωki.
这部分完全由拓扑决定,不依赖顶点坐标和边长。
13. 离散 Hodge 星:把度量加入链复形
离散外微分只知道连接关系。要定义内积、伴随和 Laplacian,需要离散 Hodge 星矩阵⋆k。
在离散外微分(DEC)的 circumcentric dual 中,常用对角近似:
(⋆k)σk,σk=∣σk∣∣⋆σk∣,
即对偶单元体积与原单元体积的比。
二维中:
(⋆0)ii=∣⋆vi∣,
(⋆1)ee=∣e∣∣⋆e∣,
(⋆2)tt=∣t∣1.
离散k-形式内积是
⟨α,β⟩k=αT⋆kβ.
13.1 离散余微分
dk−1 关于上述内积的伴随满足
δk=⋆k−1−1dk−1T⋆k
(整体符号依约定)。于是离散 Hodge-Laplacian
Δk=dk−1δk+δk+1dk.
14. 离散 Hodge 分解的线性系统
给定离散 1-形式ω,希望求
ω=d0f+δ2η+h.
利用正交投影:
14.1 求恰当部分
最小化
fmin∥ω−d0f∥⋆12.
法方程为
d0T⋆1d0f=d0T⋆1ω.
左侧正是 0-形式的 stiffness/Laplace 矩阵。常数函数位于零空间,所以必须固定一个顶点或加零均值约束。
14.2 求余恰当部分
可令δ2η=⋆1−1d1T⋆2η,再做相同的加权最小二乘。二维中也常将 2-形式写成标量势,通过旋转梯度求解。
14.3 求调和余量
h=ω−d0f−δ2η.
数值上检查
∥d1h∥≈0,∥δ1h∥≈0.
15. 余切 Laplacian 从 Hodge 星出现
在三角网格上,0-形式的离散 Laplace 能量可写成
E(f)=21(d0f)T⋆1(d0f)=21fT(d0T⋆1d0)f.
对内部边(i,j),若两侧对角为αij,βij,则对应权重
wij=21(cotαij+cotβij).
因此
E(f)=21(i,j)∈E∑wij(fi−fj)2.
这表明余切权重不是经验技巧,而是离散 Hodge 星或分片线性有限元的自然结果。
读完必须能回答
- 不看公式,用自己的话回答开头的核心问题。
- 指出本页最重要公式中每个符号的类型:标量、向量、矩阵、映射还是集合。
- 找出定理成立所需的假设,并举一个删除某条假设后可能失败的例子。
- 对最小例子手算一遍;若本页含代码,再比较手算与程序输出。
前后课程
上一课:Hodge 分解 | 下一课:环面调和形式与代码验证
许可协议:CC BY
作者:Davids
本文链接:https://hustjjd.github.io/ccg/02-08-lesson/
更新于:2026年10月12日