使用特定的德劳内三角插值
加权插值使用delaunayTriangulation查询
这个例子展示了如何对分散执行加权插值使用特定的德劳内三角的点的集合。
创建一个delaunayTriangulation
二维的一组散点。
P = -2.5 + 5 *画廊(“uniformdata”,50 [2],0);DT = delaunayTriangulation (P)
DT = delaunayTriangulation属性:分:[50 x2双]ConnectivityList: [87 x3双重约束:[]
样一个抛物线函数,V (x, y)中指定的点P
。
V = P (: 1)。^ 2 + P (:, 2) ^ 2;
定义随机查询10分。
Pq = 2 + 4 *画廊(“uniformdata”[10 2]1);
执行加权插值V
使用三角测量,DT
。使用nearestNeighbor
找到最近邻点的指数,六世
为查询的集合点,魁人党
。然后检查的具体值V
在指数。
vi = nearestNeighbor (DT, Pq);Vq = V (vi)
Vq =10×15.3163 0.3453 4.3026 1.2579 1.9435 5.9194 3.9030 0.4172 11.7282 0.8641
线性插值使用delaunayTriangulation查询
这个例子展示了如何执行线性插值与特定的德劳内散点集三角。
您可以使用三角测量
方法,pointLocation
查询,计算封闭三角形顶点权重的大小。权重被称为质心坐标,他们代表团结的一个分区。也就是说,三个权重之和等于1。插入的值的一个函数,V在一个查询点的加权值的总和V在这三个顶点。如果函数值,V1、V2、V3的三个顶点,和权重是B1, B2, B3,然后插入值(V1) (B1) + (V2) (B2) + (V3) (B3)。
创建一个delaunayTriangulation
二维的一组散点。
P = -2.5 + 5 *画廊(“uniformdata”,50 [2],0);DT = delaunayTriangulation (P)
DT = delaunayTriangulation属性:分:[50 x2双]ConnectivityList: [87 x3双重约束:[]
样一个抛物线函数,V (x, y)点P
。
V = P (: 1)。^ 2 + P (:, 2) ^ 2;
定义随机查询10分。
Pq = 2 + 4 *画廊(“uniformdata”[10 2]1);
找到包含的三角形每个查询使用pointLocation
方法。在下面的代码中,“透明国际”
封闭的三角形和包含id公元前
包含每个三角形的重心坐标。
(钛、bc) = pointLocation (DT, Pq);
找到的值V (x, y)在每个封闭三角形的顶点。
:琐事上= V (DT (ti));
计算的加权值的总和V (x, y)用点积。
Vq =点(公元前',琐事上')'
Vq =10×15.9456 1.1222 4.7963 0.9373 2.3533 3.4219 2.3104 0.7728 8.0479 1.0886
另请参阅
delaunayTriangulation
|nearestNeighbor
|pointLocation