个人原创帖,原发于“技术邻”网站,转贴于知乎。
在使用python脚本处理abaqus 仿真分析的模型时,一个不可避免的问题就是选取各种几何元素并为之赋予集合,以满足材料赋予、种子点指定、载荷/边界条件/约束/接触等操作的需求。赋予集合这一过程本身并无太多难度,但是几何选取,尤其是复杂模型的几何选取,有时会让二次开发者颇费一番周章。本贴针对abaqus支持的几何元素选取方法做一个梳理汇总,对其应用范围和注意事项进行说明,以期对各位二次开发者有所帮助。
1.Abaqus中支持的几何元素的种类
如图所示,abaqus中支持的主要几何元素有:cell(体)、edge(边)、face(面)、vertex(顶点)、interesting points(关注点,包含三种:边中点、弧中点和弧圆心),reference point(参考点),以及由虚拟拓扑压缩掉的点线(ignored vertex/edge)。我们日常工作中常用的几何元素都可以全面覆盖到了。同种几何元素组成的序列,abaqus中专门称之为geometry sequence对象,是一种类似list的数据结构。生成Set时使用的几何元素,实际上就是这种几何元素的序列,哪怕这个序列里只有一个元素。
2.几何元素捕捉
2.1.通过序号捕捉
通过序号捕捉其实有两种方法。
第一种是经典的index方法,一类几何元素中的每个元素都有一个唯一的序号值,这个序号值可能和空间结构有些关系,也可能没有太多关联,而且在几何模型发生变化后(比如做了一个partition),这些序号可能发生变化,因此当你的模型是静态的,不会再加入新特征,使用index来捕捉几何元素还不失为一种方法。实际使用中,因为我们很难事先知道一个