Hypermesh与Abaqus联合仿真流程
- 技术邻 >
- CAE仿真 >
- HyperWorks ,
- Abaqus
一、背景介绍
Hypermesh是由美国Altair公司开发的一款高性能有限元前处理器,其优秀的前处理性能受到许多行业有限元工作者的青睐。Abaqus作为老牌的有限元仿真软件,由于其优秀的非线性求解能力,因此被广泛应用于机械、土木、电子等行业。但其自带的前处理器Abaqus CAE在前处理方面确实有些短板,尤其是在涉及到复杂装配或一些其他的特殊场景时,处理起来就有些麻烦了。所以在实际工程中,主流的方法是通过Hypermesh前处理+Abaqus求解的方式进行有限元仿真工作。本文以一个简单但比较典型的例子说明这个工作流程,并指出一些容易碰到的问题。初学者或者不熟悉的人容易因此绕弯路。
二、案例
本次案例的模型如下(模型没有实际工程意义,仅是为了说明仿真流程),上中下三层平板使用壳单元,三层壳单元中间夹着两个实体,实体和壳单元用绑定连接,左侧三层壳单元分别绑定在一起。材料使用带纤维的正交各向异性材料,整体长度方向为纤维方向。
三、流程
本文默认读者对Hypermesh有基本的了解,会在Hypermesh里面进行基础的网格划分。因此,其中一些基础操作便不再赘述。
(1) 划分网格
打开Hypermesh软件,并切换到Abaqus模板下,导入模型并对模型进行分组
划分网格
Hypermesh与Abaqus单元默认的对应关系可以通过以下方式查看,也可以通过这个命令修改。例如Hypermesh内的tria3单元(三角形单元)默认对应了Abaqus里面的S3单元,tetra4单元(四面体单元)对应了Abaqus内的C3D4单元。
编辑
划分好网格后也可以查看单个单元的类型,使用card edit命令,将类型改为elems,然后选择需要查看的单元。
编辑
编辑
这里能看到该单元的在Abaqus的inp文件的格式,里面包含了单元的类型为C3D8R。
(2)创建材料
在模型树的空白位置点击右键,create>material,创建材料。
点击刚才创建的材料,在左下角的属性浏览器中勾选Elastic(弹性材料),将Type更改为ENGINEERING CONSTRANTS(工程常数),在下面分别输入E1、E2、E3(三向弹性模量),Nu12、Nu13、Nu23(三向泊松比),G12、G13、G23(三向剪切模量)
(3)创建局部坐标系
由于本文使用的是各向异性材料,因此需要创建局部坐标系为创建属性做准备,其实不止是各向异性材料需要定义局部坐标系,还有很多场景也需要定义局部坐标系。在下图的位置找到systems命令
编辑
该命令可以通过指定原点、X轴方向、XY平面创建坐标系(也可以选择Y轴,读者可自行尝试)
编辑
重点来了,如果只到这一步的话,Hypermesh内的局部坐标系无法导入到Abaqus里面去,笔者当时也在这里卡了很久。通过上文提到的card edit命令,将类型更改为systs,然后选择刚才创建的局部坐标系。
编辑
进行修改之后,坐标系便可以导入到Abaqus里面去了。
(4)创建属性
在模型树的空白处右键点击create>property
每一个component对应一个property,因此有几个component就创建几个property。使用壳单元的component,其对应的property作如下设置
使用实体单元的component,其对应的property作如下设置。
将property赋给对应的component
(5)创建绑定
在模型树空白处右键单击,然后点击create>set segment,创建set segment,每一个绑定对需要一个master entity(主面)和一个slave entity(从面),Abaqus内同一个从面不能同时作为两个主面的从面,但同一个面可以作为从面的同时作为主面,同一个主面也可以同时作为多个从面的主面(在多层壳单元进行绑定时会遇到这类问题,有些绕,但Abaqus确实需要注意这一点,不然计算会报错,optistruct就不用考虑这些)
每两个需要连接的部件都需要建立一对主面和从面,创建完set segment后开始创建绑定,在模型树右键单击create>contact并在左下角属性浏览器里作如下更改。
依次将模型所有需要有绑定连接的地方绑定上,并对绑定进行以上的设置。
(6)创建载荷步及边界条件以及输出请求
创建约束一个load collector,用于放置载荷和约束,模型树空白区域右键单击create>load collector,将其属性作如下更改
创建约束
创建载荷
编辑
创建输出请求,右键点击create>output block
并将创建好的output block作如下设置
创建载荷步,在模型树空白区域右键点击create>load step
将创建的load step作如下设置
到现在,在Hypermesh里对模型的前处理就全部完成了,目前的状态是可以直接提交计算的状态,不需要打开Abaqus软件了。
(7)导出inp文件
按照下图所标识的方式导出Abaqus用于求解的inp文件
(8)使用bat脚本文件提交计算
新建一个txt文本文件,将这个txt文件后缀名改为bat。右键单击该文件,选择“编辑”。在里面输入如下命令:
abaqus job=test interactive
注意:命令里的“test”是导出的inp文件的文件名,例如我导出的inp文件全名是test.inp,那么这里就是 job=test
将这个bat文件放置到与导出的inp文件在同一目录下,然后双击这个bat文件,即可提交计算。这个脚本只是提交单个inp文件的计算,可以通过边界简单脚本的方式轻松实现多个inp文件按顺序自动提交计算。
(9)Hyperviw后处理
计算完成后在和inp文件同一目录下会生成一个odb文件,这是Abaqus默认的结果文件,打开hyperviw导入该文件即可查看结果。