generateMesh
创建三角形或四面体网格
描述
例子
生成二维网格
为l形几何图形生成默认的2-D网格。
创建PDE模型并包含l形几何。
模型= createpde(1);geometryFromEdges(模型、@lshapeg);
为几何体生成默认网格。
generateMesh(模型);
查看网格。
pdeplot(模型)
生成三维网格
创建一个比默认网格更细的网格。
创建PDE模型并包含BracketTwoHoles
几何学。
模型= createpde(1);importGeometry(模型,“BracketTwoHoles.stl”);
生成一个默认网格进行比较。
generateMesh(模型)
ans = FEMesh with properties: Nodes: [3x10003 double] Elements: [10x5774 double] MaxElementSize: 9.7980 MinElementSize: 4.8990 MeshGradation: 1.5000 GeometricOrder: '二次元'
查看网格。
pdeplot3D(模型)
创建一个目标最大元素大小为5的网格,而不是默认的7.3485。
generateMesh(模型,“Hmax”5)
ans = FEMesh with properties: Nodes: [3x66982 double] Elements: [10x44093 double] MaxElementSize: 5 MinElementSize: 2.5000 MeshGradation: 1.5000 GeometricOrder: '二次元'
查看网格。
pdeplot3D(模型)
在指定的边和顶点上细化网格
生成一个2-D网格,在指定的边缘和顶点周围有更细的点。
创建一个模型。
模型= createpde;
创建并绘制二维几何图形,表示在其中心有一个菱形孔的圆。
g = geometryFromEdges(model,@scatterg);pdegplot (g,“VertexLabels”,“上”,“EdgeLabels”,“上”)
使用默认网格参数为这个几何图形生成一个网格。
m1 = generateMesh(模型)
m1 = FEMesh with properties: Nodes: [2x1159 double] Elements: [6x547 double] MaxElementSize: 0.0509 MinElementSize: 0.0254 MeshGradation: 1.5000 GeometricOrder: 'quadratic'
绘制结果网格。
pdeplot (m1)
在边1上生成一个目标尺寸小于目标最小元素尺寸的网格,MinElementSize
,默认网格。
m2 = generateMesh(模型,“对冲”{0.001})
m2 = FEMesh with properties: Nodes: [2x2631 double] Elements: [6x1241 double] MaxElementSize: 0.0509 MinElementSize: 0.0254 MeshGradation: 1.5000 GeometricOrder: '二次元'
绘制结果网格。
pdeplot (m2)
生成一个网格,指定边1和顶点6和7的目标大小。
m3 = generateMesh(模型,“对冲”{0.001},“Hvertex”{7 [6], 0.002})
m3 = FEMesh with properties: Nodes: [2x2903 double] Elements: [6x1365 double] MaxElementSize: 0.0509 MinElementSize: 0.0254 MeshGradation: 1.5000 GeometricOrder: '二次元'
绘制结果网格。
pdeplot (m3)
输入参数
模型
- - - - - -模型对象
PDEModel
对象|ThermalModel
对象|StructuralModel
对象|ElectromagneticModel
对象
模型对象,指定为PDEModel
对象,ThermalModel
对象,StructuralModel
对象,或ElectromagneticModel
对象。
例子:模型= createpde(3)
例子:Thermalmodel = createpde("thermal","steadystate")
例子:Structuralmodel = createpde("structural","static-solid")
例子:Emagmodel = createpde("电磁","静电")
名称-值参数
指定可选参数对为Name1 = Value1,…,以=家
,在那里的名字
参数名称和价值
对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。
在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字
在报价。
例子:generateMesh(模型、“Hmax”0.25);
GeometricOrder
- - - - - -元素几何顺序
“二次”
(默认)|“线性”
元素的几何顺序,指定为'
线性的
或“二次”
.
表示线性元素的三角形或四面体在角上有节点。表示二次元的三角形或四面体在其角和边缘中心有节点。二次型网格的中心节点总是在角与角之间的半距离处添加。对于具有曲面和边缘的几何图形,中心节点可能不会出现在边缘或表面本身上。
一般来说,“二次”
元素产生更精确的解。金宝搏官方网站覆盖默认值“二次”
只是为了解决一个三维的静磁问题,为了节省内存,或者用传统的求解器来解决一个二维的问题。传统的PDE求解器对2-D几何图形使用线性三角形网格。
例子:generateMesh(模型、“GeometricOrder”、“线性”);
数据类型:字符
|字符串
Hgrad
- - - - - -网目生长速率
1.5
(默认)|大于等于1且小于等于2的数
网格生长速率,指定为大于或等于1且小于或等于2的数字。
例子:generateMesh(模型、“Hgrad”1.3);
数据类型:双
Hmax
- - - - - -目标最大网格边长
正数
目标最大网格边长,指定为正数。
Hmax
是网格边缘长度的近似上界。偶尔,generateMesh
可以创建一个网格与一些元素超过Hmax
.
generateMesh
的默认值Hmax
从整体几何尺寸。
小Hmax
值可以让您创建更精细的网格,但网格生成在这种情况下会花费很长时间。您可以通过使用中断网格生成Ctrl + C.请注意,generateMesh
可能需要额外的时间来响应中断。
例子:generateMesh(模型、“Hmax”0.25);
数据类型:双
机构
- - - - - -目标最小网格边长
负的数量
目标最小网格边长,指定为非负数。
机构
是网格边缘长度的近似下界。偶尔,generateMesh
可以创建一个网格与一些元素小于机构
.
generateMesh
的默认值机构
从整体几何尺寸。
例子:generateMesh(模型,“机构”,0.05);
数据类型:双
Hface
- - - - - -所选面上的目标尺寸
单元阵列
选定面上的目标大小,指定为包含偶数个元素的单元格数组。奇数索引元素是指定人脸id的正整数或正整数的向量。偶数索引元素是指定相应面的目标大小的正数。
例子:generateMesh(模型、“Hmax”0.25,Hface,{(1 2)、0.1 (3 4 5),0.05})
数据类型:双
对冲
- - - - - -所选边缘周围的目标大小
单元阵列
所选边缘周围的目标大小,指定为包含偶数个元素的单元格数组。奇数索引元素是指定边id的正整数或正整数的向量。偶数索引元素是指定相应边的目标大小的正数。
例子:generateMesh(模型、“Hmax”0.25,“对冲”,{[1 - 2],0.01,0.05})
数据类型:双
Hvertex
- - - - - -所选顶点周围的目标大小
单元阵列
所选顶点周围的目标大小,指定为包含偶数个元素的单元格数组。奇数索引元素是指定顶点id的正整数或正整数的向量。偶数索引元素是指定对应顶点的目标大小的正数。
例子:generateMesh(模型、“Hmax”0.25,Hvertex, {0.02})
数据类型:双
更多关于
提示
generateMesh
可以在不同的版本中返回略有不同的网格。例如,网格中元素的数量可以改变。避免编写依赖于显式指定的节点和元素id或节点和元素计数的代码。generateMesh
使用指定局部元素大小时,使用以下规则集Hface
,对冲
,或Hvertex
.的缺省值和自定义值都有效机构
而且Hmax
.如果为相邻的区域指定局部大小,
generateMesh
使用最小大小。例如,如果在一条边上指定大小为1,在其中一个顶点上指定大小为0.5,则该函数将逐渐减小该顶点附近的元素大小。如果指定的本地大小小于
机构
,generateMesh
忽略了机构
在这些地方。如果指定的本地大小大于
Hmax
,generateMesh
忽略指定的本地大小。Hmax
在网格的任何地方都不超出。
版本历史
Abrir比如
Tiene una versión modificada de este ejemplo。¿Desea abrir este ejemplo con sus modificaciones?
MATLAB突击队
Ha hecho clic en unenlace que对应一个este commando de MATLAB:
弹射突击队introduciéndolo en la ventana de commandos de MATLAB。Los navegadores web no permission comandos de MATLAB。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。