Wiley David F, Bertram Martin, Hamann Bernd
Center for Processing and Integrated Computing, Department of Computer Science, University of California, Davis, CA 95616-8562, USA.
IEEE Trans Vis Comput Graph. 2004 Sep-Oct;10(5):548-63. doi: 10.1109/TVCG.2004.29.
We present a method for the hierarchical approximation of functions in one, two, or three variables based on the finite element method (Ritz approximation). Starting with a set of data sites with associated function, we first determine a smooth (scattered-data) interpolant. Next, we construct an initial triangulation by triangulating the region bounded by the minimal subset of data sites defining the convex hull of all sites. We insert only original data sites, thus reducing storage requirements. For each triangulation, we solve a minimization problem: computing the best linear spline approximation of the interpolant of all data, based on a functional involving function values and first derivatives. The error of a best linear spline approximation is computed in a Sobolev-like norm, leading to element-specific error values. We use these interval/triangle/tetrahedron-specific values to identify the element to subdivide next. The subdivision of an element with largest error value requires the recomputation of all spline coefficients due to the global nature of the problem. We improve efficiency by 1) subdividing multiple elements simultaneously and 2) by using a sparse-matrix representation and system solver.
我们提出了一种基于有限元方法(里兹近似)对单变量、双变量或三变量函数进行分层近似的方法。从一组带有相关函数的数据点出发,我们首先确定一个光滑的(散乱数据)插值函数。接下来,我们通过对由定义所有数据点凸包的最小数据点子集所界定的区域进行三角剖分来构建初始三角剖分。我们只插入原始数据点,从而减少存储需求。对于每个三角剖分,我们求解一个最小化问题:基于一个涉及函数值和一阶导数的泛函,计算所有数据插值函数的最佳线性样条近似。最佳线性样条近似的误差在类似索伯列夫范数下计算,从而得到特定单元的误差值。我们使用这些特定区间/三角形/四面体的值来确定下一个要细分的单元。由于问题的全局性,对具有最大误差值的单元进行细分需要重新计算所有样条系数。我们通过以下方式提高效率:1)同时细分多个单元;2)使用稀疏矩阵表示和系统求解器。