三角剖分和单纯复形

从三角形到单纯形

  • 三角剖分的算法可知,我们可以将复杂的多边形,剖分为简单的三角形
  • 点由1个顶点确定,线段由2个顶点确定,三角形由3个顶点确定,四面体由4个顶点确定。一般地,n-单纯形由n + 1个顶点v_0, \ldots, v_n确定,记为

        \[ [v_0, \ldots, v_n]. \]

    • 对于三角形[v_0, v_1, v_2],位于线段[v_0, v_1]上的点可以表示为

          \[ v_0 + \lambda(v_1 - v_0) = (1 - \lambda)v_0 + \lambda v_1,\; \lambda \in [0, 1]. \]

      这里,系数相加为1的线性组合,称为仿射组合(对应于直线);系数相加为1,并且系数位于0、1之间的线性组合,称为凸组合(对应于线段)
    • 为了构成一个三角形,任意一个顶点不能等于其他顶点的仿射组合,这称为仿射无关,它可以描述为

          \[ \sum_i \lambda_iv_i = 0,\; \sum_i \lambda_i = 0 \Rightarrow \lambda_i = 0. \]

      因此,v_0v_1v_2仿射无关,等价于v_1 - v_0v_2 - v_0线性无关。进一步,类似于v_0v_1的凸组合构成线段,v_0v_1v_2的凸组合构成三角形
  • 通常,我们需要固定一个标准n-单形。比如,\mathbb{R}^3上的标准单位正交基为

        \[ e_0 = (1, 0, 0),\; e_1 = (0, 1, 0),\; e_2 = (0, 0, 1). \]

    它们的仿射组合构成平面,它们的凸组合构成平面上的三角形

    Rendered by QuickLaTeX.com

    一般地,\mathbb{R}^{n + 1}上的标准单位正交基为e_i0 \leq i \leq n。那么,标准n-单形为

        \[ \Delta^n = [e_0, \ldots, e_n]. \]

  • 在固定了一个标准n-单形之后,任意一个n-单纯形都与之同胚,

        \[ [v_0, \ldots, v_n] \to [e_0, \ldots, e_n],\; \sum_i \lambda_iv_i \mapsto \sum_i \lambda_ie_i, \]

    其中,\lambda_i称为重心坐标
  • 单纯复形\mathscr{K}是一族单纯形
    • 如果s \in \mathscr{K},那么s的面s' \in \mathscr{K}
    • 如果st \in \mathscr{K},那么s \cap t为空集,或者为st的面

三角剖分、多面体细分

  • 点位形(Point Configuration)为

        \[ A = \{ a_1, \ldots, a_n \}, \]

    其中,a_i \in \mathbb{R}^d可以是重合的点
  • 三角剖分(Triangulation)为一个单纯复形\mathscr{T}
    • \mathscr{T}的顶点为A,即vert(\mathscr{T}) = A
    • \mathscr{T}的几何实现为convex(A),即|\mathscr{T}| = conv(A)