主要内容

geometryFromMesh

从网格创建2-D或3-D几何

描述

例子

geometryFromMesh (模型节点元素在内部创建几何图形模型.对于平面和体积的三角网格,这个函数也包含节点model.Mesh.Nodes财产和元素model.Mesh.Elements财产。要将导入的网格替换为具有不同目标元素大小的网格,请使用generateMesh

如果元素表示限定封闭体的曲面三角形网格,则geometryFromMesh创建几何图形,但不将网格合并到模型的相应属性中。要在本例中生成网格,请使用generateMesh

例子

geometryFromMesh (模型节点元素ElementIDToRegionID创建一个多域几何图形。在这里,ElementIDToRegionID指定网格中每个元素的子域id。

G=几何from mesh (模型节点元素返回句柄G在几何学中模型。Geometry,和一个手柄到网格中模型。网

例子

全部折叠

导入一个四面体网格到PDE模型中。

加载一个四面体网格到你的工作空间。的tetmesh随软件一起发布文件。将数据以正确的形状放置geometryFromMesh

负载tetmesh节点= X';Elements = tet';

创建PDE模型并将网格导入模型。

Model = createpde();geometryFromMesh(模型、节点元素);

查看几何和面数。

pdegplot(模型,“FaceLabels”“上”“FaceAlpha”, 0.5)

图中包含一个轴对象。坐标轴对象包含颤动、贴片、线条类型的3个对象。

从点网格的凸包创建一个几何块。

创建一个三维网格。

[x,y,z] = meshgrid(-2:4:2);

创建凸包。

X = X (:);Y = Y (:);Z = Z (:);K = convhull(x,y,z);

将数据以正确的形状放置geometryFromMesh

节点= [x';y';z'];elements = K';

创建PDE模型并导入网格。

Model = createpde();geometryFromMesh(模型、节点元素);

查看几何和面数。

pdegplot(模型,“FaceLabels”“上”“FaceAlpha”, 0.5)

图中包含一个轴对象。坐标轴对象包含颤动、贴片、线条类型的3个对象。

使用MATLAB®创建3-D几何图形alphaShape函数。首先,创建一个alphaShape有圆柱形孔的块状物体。,然后将几何图形导入PDE模型alphaShape边界。

创建一个二维网格。

[xg,yg] = meshgrid(-3:0.25:3);Xg = Xg (:);Yg = Yg (:);

创建单元盘。删除落在单元磁盘内的所有网格网格点,并包括单元磁盘点。

T = (pi/24:pi/24:2*pi)';X = cos(t);Y = sint;circShp = alphaShape(x,y,2);in = inShape(circShp,xg,yg);Xg = [Xg (~in);cost);Yg = [Yg (~in);罪(t)];

创建剩余网格网格点的3-D副本,使用z-坐标范围从0到1。把这些点组合成一个alphaShape对象。

Zg = ones(数字(xg),1);Xg = repmat(Xg,5,1);Yg = repmat(Yg,5,1);Zg = Zg *(0:.25:1);Zg = Zg (:);shp = alphaShape(xg,yg,zg);

获得一个表面网格的alphaShape对象。

[elements,nodes] = boundaryFacets(shp);

将数据以正确的形状放置geometryFromMesh

节点=节点的;Elements = Elements ';

创建PDE模型并导入表面网格。

Model = createpde();geometryFromMesh(模型、节点元素);

查看几何和面数。

pdegplot(模型,“FaceLabels”“上”“FaceAlpha”, 0.5)

图中包含一个轴对象。坐标轴对象包含颤动、贴片、线条类型的3个对象。

若要在分析中使用几何图形,请创建一个体积网格。

generateMesh(模型);

从一个网格创建一个2-D多域几何。

将有关节点、元素和元素到域通信的信息加载到工作区中。该文件MultidomainMesh2D随软件一起发布。

负载MultidomainMesh2D

创建PDE模型。

模型= createpde;

将网格导入模型。

geometryFromMesh(模型、节点元素,ElementIdToRegionId);

查看几何和面数。

pdegplot(模型,“FaceLabels”“上”

图中包含一个轴对象。axis对象包含一个line类型的对象。

从一个网格创建一个3-D多域几何。

将有关节点、元素和元素到域通信的信息加载到工作区中。该文件MultidomainMesh3D随软件一起发布。

负载MultidomainMesh3D

创建PDE模型。

模型= createpde;

将网格导入模型。

geometryFromMesh(模型、节点元素,ElementIdToRegionId);

查看几何图形和单元格数。

pdegplot(模型,“CellLabels”“上”

图中包含一个轴对象。坐标轴对象包含颤动、贴片、线条类型的3个对象。

输入参数

全部折叠

模型容器,指定为PDEModel对象,ThermalModel对象,StructuralModel对象,或ElectromagneticModel对象。

例子:模型= createpde(3)

例子:Thermalmodel = createpde("thermal","steadystate")

例子:Structuralmodel = createpde("structural","static-solid")

例子:Emagmodel = createpde("电磁","静电")

网格节点,指定为实数矩阵。矩阵的大小是2 × -Nnodes对于二维情况和3乘-Nnodes三维箱子。Nnodes是网格中的节点数。

节点jxy,z列中的坐标j节点

数据类型:

网格元素,指定为3、4、6或10行的整数矩阵,和Nelements列,Nelements是网格中元素的数量。

  • 线形平面网格或几何曲面上的线形网格尺寸为3 × 3Nelements.的每一列元素包含曲面元素的三角形角节点的索引。在这种情况下,生成的几何图形不包含完整的网格。创建网格使用generateMesh函数。

  • 线性元素的大小为4 ×Nelements.的每一列元素包含元素的四面体角节点的索引。

  • 平面二次网格或几何曲面上的二次网格尺寸为6 × 6Nelements.的每一列元素包含曲面元素的三角形角节点和边缘中心的索引。在这种情况下,生成的几何图形不包含完整的网格。创建网格使用generateMesh函数。

  • 二次元的大小为10 × -Nelements.的每一列元素包含元素的四面体角节点和四面体边缘中点节点的索引。

有关线性和二次元的节点编号的详细信息,请参见网格数据

数据类型:

每个网格元素的域信息,指定为正整数向量。每个元素都是网格中一个元素的几何区域的ID。这个向量的长度等于网格中元素的数量。

数据类型:

输出参数

全部折叠

的句柄返回模型。Geometry.这个几何是一流的DiscreteGeometry属性

有限元网格,返回为一个手柄模型。网

  • 如果元素是3 × -吗Nelements矩阵表示一个曲面网格,则[].属性为几何体创建一个网格generateMesh函数。

  • 如果元素一个矩阵有超过三行表示一个体积网格,那么具有与输入相同的节点和元素。控件可以为几何图形获取不同的网格generateMesh函数。

版本历史

在R2015b中引入

全部展开