(照搬,部分更改)
1、可以安装到abaqus的软件安装目录下,建议在软件安装目录下新建一个plugins文件夹,直接把文件解压到这个位置就可以了。我的安装目录如图所示:
2、再有就是在安装abaqus的时候,系统会自动在系统盘(一般是C盘)目录下建立一个插件的安装目录。一般在用户目录下,例如我的这里是C:\Users\misk\abaqus_plugins,将文件解压到这里也可以。如图所示:
3、新版本的abaqus(2016以后)在安装时,会在安装目录下新建一个CAE文件夹,在该文件夹下的plugins中也可以安装插件例如:*...*\SIMULIA\CAE\plugins,将文件解压到这里也可以。
除了这几种,好像还有一些方法,这里就介绍这3种。将文件解压后,重新打开abaqusCAE,就可以在工具栏的Plug-ins目录下找到该插件。如图所示:
首先打开abaqus CAE,打开建立好的模型(也可以直接建立),点击上图中的voxel_vol,打开插件界面,如图所示:
这里首先设定了默认值,你需要将界面中的参数换成你自己的模型。自上而下分别为模型名称,部件名称,新体素化部件名称。
参数设定:
the length of the element: 单个体素的长(x方向)
the width of the element: 单个体素的宽(y方向)
the height of the element: 单个体素的高(z方向)
方向采用全局坐标系。
设定好之后就可以点击ok进行转化。
这里首先建立了一个简单的立方体模型(用abaqus做的,比较随便,不要介意),长宽高分别10,8,5为如图所示:
运行插件,参数设定如图所示:
点击ok,进行体素转换。结果如图所示:
注意左下角,由于按单个体素的尺寸生成不可避免的会出现与原部件宏观尺寸出现偏差,所以这里将偏差输出,在(我的是)软件下方的的日志窗口会输出偏差值。
体素检查:
首先将原部件与体素部件同时在装配体中载入。利用abaqus自带功能进行检查。
其中,绿框是体素部件,蓝框是原部件(这里将体素块设定的太大了)。
这是对单个体素块进行检查,与设定一致。接下来对误差进行检查。
对原部件的8个顶点进行检索:
对体素部件的8个顶点进行检索:
然后就是计算问题了,经计算与输出误差一致。
体素生成技术说明:
(与上一篇插件生成技术大致相同)
该插件首先根据部件的尺寸大小,构建出可以包裹部件的最小网格体,再遍历每一个单元,根据单元的质心是否包络再部件实体中,来决定单元的取舍。
本次以一个球体来演示单元质心的包络情况。如图所示:
情况一:不包络
情况二:包络
在情况一中,单元质心在球体之外,未包络,但是单元却与部件接触,这种情况,单元会判断为None(也就是舍去),在情况二中,质心和单元都包络在球体中,这种情况,单元会判断为保留。这里就列举这两种情况。详细关系见下表:
质心,单元与部件的位置关系对单元取舍的影响
其中,质心与单元都与部件进行接触时(也就是说质心刚好在部件表面时),单元也进行保留。
这里的包络是指质点或单元刚好被部件包裹的情况(也就是说其刚好在部件体内,不超出表面)。接触是指与部件产生交集。
最后,当遍历了每一个单元后,就可以完成部件体素的转换。
这里由于是按体素大小进行生成,所以不可避免与原部件宏观尺寸产生偏差,3个方向的偏差至多为设定的单个体素相应的长宽高的数值。体素生成的基准点为刚好包裹原部件的box的中心。此插件也将偏差进行输出,偏差为宏观尺寸在全局坐标下三个方向的偏差。
问题排除:
由于引用abaqus内核函数来判断单元存留,当遍历单元对不保留单元进行判断时会发生警告。已尝试引用warnings模块最高等级对警告进行抑制,但是,毫无效果。所以该部分已在源代码中删除。对该问题进行保留,所以,在进行比较细致的体素转化时,收到警告是正常现象,非bug。
当遍历单元数较多时,可能比较卡,并时不时伴有警告音发出,比较断续,这也是正常现象。为简化脚本,提高运算速度,并未引用sleep()函数对其整改。
承诺:
1.凡是购买插件的用户,使用过程中若是遇到Bug,本人将承诺对发现的bug进行修复。
2.使用时有什么问题,也可以进行咨询,私信或评论区发言都行,看到有时间会进行回复。
3.还没想好,以后再说。
此插件基于abaqus内核进行编写,下载后解压即可使用。
编写参考abaqus 2016~2020,由于未找到早期版本的内核,所以不保证在abaqus 2016之前的版本还可以运行。abaqus 2020以后的包括最新版本的也没查阅,不清楚更新内容,所以也不保证可以运行。但是继承性一般是比较好的,大概率是可以运行的。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删