提取由 pdetool 生成的网格的最长边
Extract the longest edge of a mesh generated by pdetool
当我使用 pdetoolbox 生成网格时,如图所示。如何提取网格的范数(最长边值)?我尝试阅读 "pdetool" 的文档并在 "FEMesh Properties" 中找到了 "MaxElementSize" 属性。虽然我不知道如何在 PDE 工具箱 GUI 中使用 "MaxElementSize"。
从工具箱菜单中,select Mesh
然后 Export Mesh
:
然后您将可以选择更改变量名称。这里重要的是前两个,即 points 和 edges 的名称。在此示例中,我将它们保留为默认值,即 points 的 p
和 edges.[=21 的 e
=]
points
是一个2*n的矩阵,每一列代表一个顶点的X坐标和Y坐标。 e
是一个7*n的矩阵,每一列都是构造边的参数。前两行是边的顶点的索引,其余的在这里不感兴趣。
% Each edge is bounded by two vertices.
% Extract the coordinates of the first set of vertices.
e1 = p(:,e(1,:));
% Extract the coordinates of the second set of vertices.
e2 = p(:,e(2,:));
% Calculate the square distance.
dsqr = sum((e1 - e2).^2);
% Take the maximum.
[dsqrMax, idx] = max(dsqr);
% Length of the longest edge
dMax = sqrt(dsqrMax);
idx
是 e
矩阵中最长边的索引。可以通过e(:,idx);
.
提取所有边的信息
当我使用 pdetoolbox 生成网格时,如图所示。如何提取网格的范数(最长边值)?我尝试阅读 "pdetool" 的文档并在 "FEMesh Properties" 中找到了 "MaxElementSize" 属性。虽然我不知道如何在 PDE 工具箱 GUI 中使用 "MaxElementSize"。
从工具箱菜单中,select Mesh
然后 Export Mesh
:
然后您将可以选择更改变量名称。这里重要的是前两个,即 points 和 edges 的名称。在此示例中,我将它们保留为默认值,即 points 的 p
和 edges.[=21 的 e
=]
points
是一个2*n的矩阵,每一列代表一个顶点的X坐标和Y坐标。 e
是一个7*n的矩阵,每一列都是构造边的参数。前两行是边的顶点的索引,其余的在这里不感兴趣。
% Each edge is bounded by two vertices.
% Extract the coordinates of the first set of vertices.
e1 = p(:,e(1,:));
% Extract the coordinates of the second set of vertices.
e2 = p(:,e(2,:));
% Calculate the square distance.
dsqr = sum((e1 - e2).^2);
% Take the maximum.
[dsqrMax, idx] = max(dsqr);
% Length of the longest edge
dMax = sqrt(dsqrMax);
idx
是 e
矩阵中最长边的索引。可以通过e(:,idx);
.