Mechanical中脚本开发的主要目的是可以减少重复性劳动,提高工作效率。
本案分析一个L型板的应力奇异问题,应力奇异问题网上有很多介绍,本案不过多赘述。本案的分享的主要目的是通过对网格尺寸的参数化,提取应力奇异处的应力值,来直观的展示应力奇异这个现象,其中会展示如果通过脚本来实现。
先将网格设置成:10mm
应力结果提取如下:
计算将网格尺寸1~10mm的10个尺度下,L板的折弯处的线的应力值,并提取出来。具体代码如下:
可以看到,随着网格的加粗,L板折弯处的应力也在减小。
将折弯处倒角R5,模型如下
应力提取如下:
代码运行结果如下:
把计算所得的结果简单处理如下图,可以看出:
L型板折弯处无圆角会出现应力奇异;
L型板折弯处有圆角时,最大应力也会随着网格细化而增大,其临界网格尺寸为3mm。
mesh = Model.Mesh
mesh_size = mesh.Children[0]
sol = Model.Analyses[0].Solution
for i in range(1,11):
mesh_size.ElementSize = Quantity(i, "mm")
mesh.GenerateMesh()
sol.Solve()
print sol.Children[1].Maximum