abaqus介绍 - 带小例子

更新时间:2023-09-29 23:48:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

ABAQUS 入门教程

1. 什么是有限元

对于连续的实体,或者流体,如果形状,边界条件较复杂,是不能得到位

移或者应力应变的解析解的,因此提出了利用有限个单元(Finite Element)的集合来离散(Discretize)表示结构的实际几何形状,如下图,该实体由六面体单元和四面体单元(Element)组成,每一个单元代表这个实际结构的一个离散部分。单元由节点构成,单元和单元之间通过共有的节点(Node)连接。节点与单元的集合称为网格(Mesh)。在一个特定网格中的单元数目称为网格密度(Mesh Density),可以很轻易地得到网格密度是和计算精度密切相关的,但是过密的网格会导致庞大的计算量,因此需要根据情况合理确定网格尺寸。

各种单元类型,

不同的单元类型适用于不同的情况。

有限元求解方法:

隐式方法(Implicit) 由胡克定理得: F??Kx

其中F代表力矩阵,K为刚度矩阵,由每个单元的局部刚度矩阵结合得到,x为位移矩阵,代表每个节点的各个方向的位移。隐式方法主要就是求解该方程。位移法步骤如下:

1. 结构离散

2. 单元分析,形成单元刚度矩阵

3. 结构分析,形成总刚度矩阵(包含所有单元刚度矩阵) 4. 约束处理

5. 求解线性方程组,求得节点位移(求得所有节点的位移) 6. 根据节点位移求出各个单元的内力和应变 如下图所示,桁架及其离散化模型:

显示方法(explicit)

显示方法与隐式方法不同,例如应用在ABAQUS/Explicit中的显示方法,并不需要求解一套方程组或计算整体刚度矩阵。求解式通过动态方法从一个增量步前推到下一个增量步得到的,简单来说,就是假设有一个炸弹爆炸的过程,将该过程分成很多个时间增量步,从初始炸弹只有一个点开始,根据增量步一步步递推计算炸弹的冲击波膨胀的过程。

ABAQUS/Explicit适用于求解复杂非线性动力学问题和准静态问题,特别是模拟短暂、瞬时的动态时间,如冲击和爆炸问题。

2. Abaqus简介

ABAQUS是国际上最先进的大型通用有限元计算分析软件之一,具有惊人的广泛的模拟能力。它拥有大量不同种类的单元模型、材料模型、分析过程等。可以进行结构的静态与动态分析,如:应力、变形、振动、冲击、热传递与对流、质量扩散、声波、力电耦合分析等;它具有丰富的单元模型,如杆、梁、钢架、板壳、实体、无限体元等;可以模拟广泛的材料性能,如金属、橡胶、聚合物、复

合材料、塑料、钢筋混凝土、弹性泡沫,岩石与土壤等。

对于多部件问题,可以通过对每个部件定义合适的材料模型,然后将它们组合成几何构形。对于大多数模拟,包括高度非线性问题,用户仅需要提供结构的几何形状、材料性能、边界条件、荷载工况等工程数据。在非线性分析中,ABAQUS能自动选择合适的荷载增量和收敛准则,它不仅能自动选择这些参数的值,而且在分析过程中也能不断调整这些参数值,以确保获得精确的解答。用户几乎不必去定义任何参数就能控制问题的数值求解过程。

Abaqus包括三个主要的分析模块:ABAQUS/Standard(通用求解器,隐式求解),ABAQUS/Explicit(显式),以及ABAQUS/CFD(流体),分析模块的选择是通过定义不同种类的step(分析步)实现,这些模块求解通常是在后台进行的。 而我们常常看到的abaqus界面是ABAQUS/CAE(Computer Aided Engineering),ABAQUS/CAE将各种功能模块(module)集成在一个窗口内,通过ABAQUS/CAE可以方便地实现整个分析过程。

模块切换

ABAQUS/CAE只是一个GUI界面,因此我们也可以通过python程序直接调用各种模块,而不用打开ABAQUS/CAE界面进行求解计算。 Abaqus求解流程

一个完整的ABAQUS/Standard(隐式求解)或ABAQUS/Explicit分析过程,通常由三个明确的步骤组成:前处理、分析计算和后处理。

使用ABAQUS/CAE一般步骤如下:

2.1 前处理

前处理即输入,定义所求物理问题的模型,输入所有已知信息,如几何形状,单元类型和尺寸,网格类型等,以及材料属性,载荷,边界

条件,相互作用,环境属性(如温度,电磁场)等。 1. Part模块:创建几何体 2. Property模块:定义材料属性

3. Assembly模块:将几何体生成实体(instance),并装配 4. Step模块:创建分析步(step),选择何种求解方式

5. Interaction模块:创建相互作用(比如不同部件接触,部件位移

耦合,力耦合等)

6. load模块:定义载荷(load)和边界(boundary)条件 7. Mesh模块:确定单元类型和尺寸,确定网格类型(mesh),划分网

所有的步骤完成后,ABAQUS/CAE中的Job模块WriteInput会生成一个ABAQUS输入文件,该文件为inp格式(input的缩写),这个inp文件中包含了模型的所有信息,并以一种通用的格式存储,因此这个inp文件对其它的有限元也是同样适用的,同理其他有限元软件生成的inp文件也可以提交给abaqus计算(可能会出现兼容性问题)。 2.2 分析计算

8. Job模块

即将我们要解决的问题提交给abaqus进行计算,这一步通过Job模块的实现,从前处理得到inp文件后,abaqus将该文件提交给abaqus内核进行计算,使用ABAQUS/Standard或ABAQUS/Explicit求解输入文件中所定义的数值模型,它通常以后台方式运行; 2.3 后处理

9. visualization模块

后处理即我们得到了计算结果,该结果存储在一个odb格式的文件中,abaqus提供了visualization模块,用于结果的可视化处理,我们可以通过visualization模块得到变形后的形状,或者冲击的动画,或者某个变量变化的曲线。同时我们也可以通过其他的后处理软件来处理我们的结果。

3. 简单的算例

一个简单的矩形截面梁计算。

Abaqus计算时是没有单位的,因此输入的数值必须保证单位的一致性:

3.1启动abaqus

通过开始菜单,或者快捷方式打开abaqus,如果不能打开,则需要重新启动abaqus证书。如下,

3.2新建分析模型

打开abaqus,已经默认生成一个新的空白模型,可以直接进行操作,或者新建模型或导入模型,必须保证至少有一个模型(model)。

选择模型的类别,有‘标准’及‘显式’,‘计算流体力学’,‘电磁场’

或者导入模型,如下图:

可以导入不同软件生成的模型,abaqus的模型保存为cae格式

3.2.1新建部件几何体

使用默认的空白模型,选择part模块,点击CreatPart

弹出creatpart对话框,设置如图,然后continue。

Name是部件的名称;

Modeling space是要生成的几何体的类型,是 3维立体,2维平面图形,或者轴对称,根据不同的简化需要来确定,比如一个轴,就可以选择轴对称,然后只需要画出旋转的界面就可以,而不用整个3维建模

Type 分为可变形的,离散刚体,解析刚体等,其中在任何力的作用下,体积和形状都不发生改变的物体叫做刚体(Rigid body),通常需要定义一个参考点,这个点的运动就可代表整个刚体的运动。

对于形状简单得刚体部件来说,解析刚体可以比较准确得模拟零部件得几何形状,可以减小计算代价;刚体零部件得几何形状比较复杂时,就需要使用离散刚体了。离散刚体通常用于接触分析中,类似与可变形体,可以模拟任何形状的物体

Shape定义该几何体是什么形状,实体,壳,线,点,注意的是space不同,同样的形状得到的形状性质不同,比如3维的点自由度比2维的点自由度多一个。

Type定义该部件是通过何种方式生成,几何拉伸,旋转,扫掠。比如长方体就通过拉伸长方体的一个面得到。

Approximat size 部件近似大小,通过该尺寸生成合适大小的画布

得到一张画布,在画布的左边有各种工具用来画各种图形,同时还有各种修改和约束工具。 通过滑动鼠标中键,可以放大缩小画面,同时按住ctrl和shift,再按住鼠标中键,可以移动画面。

前面我们选择了拉伸来生成长方体,因此在这个二维的画布上,需要画出拉伸的截面,点击矩形,然后窗口最下方的输入矩形的两个对角点,(100,-10),按enter确认,输入(-100,10)enter确认。如果画错了,可以通过得删除,或者

撤销;

矩形画好后,确认矩形正确,按ESC键,发现下方信息栏出现,如果此时确认截面ok,点击Done,或者点击鼠标中键确认。

弹出拉伸属性对话框,这是因为我们新建part的时候,选择的type是extrusion:设置如图,拉伸30mm,确认。

depth:这个截面拉伸的长度, options:扭转 矩形梁如图:按住ctrl+shift,然后按住鼠标左键,可以旋转视角。

保存模型:保存为默认的cae格式,要养成经常保存的习惯。

3.2.2设置材料属性

至此几何体建立完成,在Module列表中,选择Property模块。点击creat material按钮,如图

create material 表示新建一个材料属性,当一个模型中包含不同材料时,需要定义多个材料属性,同时通过create material旁边的material manager进行管理。

弹出edit material对话框,选择定义材料的弹性属性。

可以看到,在edit material对话框中,材料可以定义弹性,塑形,失效形式,粘性等属性,

在前一个选项general中还可以定义材料的密度等属性。

本算例中不考虑体力,所以没有设置密度。

材料特性设置如下图,弹性模量210000Mpa,注意和mm对应的是Mpa,泊松比0.3,名称为steel。点击Ok确认。

Elastic选项卡中

Type,选择各向同性

定义截面,点击creat section按钮,弹出创建材料截面对话框,设置如图,点击continue

和材料属性一样,同一个模型可以定义多个截面属性,并通过section manager来管理。矩形量是3维的梁,因此选择实体,类型选择均匀。

弹出Edit section对话框,在material选项中自动选择了上一步定义的材料属性steel,ok确认。如果所建的模型是2维的板,还需要定义厚度。

点击assign section 按钮

在下方的信息栏出现:(选择需要赋予截面的区域)

在窗口中点击我们所建的长方体,红色表示选中,然后点击Done,或者单击鼠标中键。 Creat set选项勾选表示,系统自动对我们所选择的区域建一个集合,并命名为Set-1;

弹出 Edit Section Assignment对话框,上一步我们选择了需要赋予截面的区域,这个对话框选择对该区域赋予的截面属性,即我们创建的截面Section-1.然后确认。如果section列表为

空,没有选择,很可能是上一步所创建的截面属性不能赋予给当前区域,需要修改界面属性。

成功赋予截面后的part是绿色。

3.2.3装配

至此几何体建立完成,在Module列表中,选择Assembly模块。

点击creat Instance(生成实体),弹出create instance对话框,设置如图:

creat instance from: 从刚才创建的parts中生成实体,在列表中选择部件。一个模型中只包含一个装配件,它可以由一个或多个部件实体组成,同时一个部件也可以生成多个实体,部件实体是部件在装配件中的映射。部件修改,部件实体也会自动更新 从已有的模型中导入

Instance可以减少重复建模。 instance type:

非独立实体,多个部件实体对应同一个部件时,只需对部件划分一次网格即可。

独立实体,是对应部件的一个复制,划分网格时可以同时显示多个相邻的部件实体,便于设定网格密度。

3.2.3设置分析步

在Module列表中,选择step模块

点击 creat step ,弹出creat step对话框,设置如图。

Name:新建的分析步名称 Insert new step after:

系统会自动创建一个分析步(Initial step),可以在其中施加边界条件,用户必须自己创建后续的分析步,用来施加载荷,当有多个分析步时,需要考虑分析步的顺序。

通过选择分析步的类型,来选择显式或者隐式求解,确定该分析是静态还是动态过程等。

弹出Edit step对话框,设置如下,

time period:选择的分析步是静态分析步,时间默认。

NIgeom:非线性开关,在分析过程中存在大位移非线性影响时,必须打开。

General static默认关闭

3.2.3设置载荷和边界条件

在Module列表中,选择load模块

1. 施加约束,在悬臂梁的左侧固支。设置如图,continue

注意边界条件施加的载荷步,一般将边界条件施加在系统自动生成的initial step上。 在约束类型中,

第一行是对称,反对称,端部固定

第二行,是位移和角度边界条件

在下方信息栏出现:

选择左端需要固定的面:(若不能选到,同时按住ctrl+shift,再安装左键旋转视图)选中的面成红色。单击Done,或者单击鼠标中键确认。

编辑所选的面的边界条件,选择端部固定,如图,确认,边界条件施加如图。

2. 施加载荷,点击creat Load ,

弹出 Creat load窗口,设置如图,pressure是施加在面上的,因此要选择一个面,continue

在下方的信息栏出现:(选择施加压力的面)

选中梁的上表面,选中为红色,(若不能选到,同时按住ctrl+shift,再按住左键旋转视图),中键滑动放大缩小,同时按住ctrl+shift,再按住中键,可以平移视图。单击Done,或者单击鼠标中键确认。

弹出edit load对话框,编辑载荷大小如图:

distribution:压力的分布情况,均布或者其他分布 Magnitude:压力的大小,注意该处的单位必须统一,为Mpa

Amplitude:载荷的幅值,若需要加载变载荷,需定义此项,是一个最大幅值为1相对于时间的曲线,可以通过解析或者列表等方式建立。

压力加载如图:

3.2.3划分网格

在Module列表中,选择mesh模块

1.设置单元类型,点击

,出现对话框

这是因为,在前面Assembly步,我们选择了Dependent instance,因此不能对整个Assembly划分网格,因此需要单独对part划分网格,在视窗的上方将Assembly改为part。

可以看到模型变为绿色,表示该part可以使用结构化网格划分。结构化网格只包含四边形或者六面体,非结构化网格是三角形和四面体。 设置单元类型,点击

,在下方信息栏出现:(选择需要划网格的part)

选择梁:选中后变红。单击Done,或者单击鼠标中键确认。

选择单元类型C3D8R,Hex表示六面体单元,Wedge是楔形单元,Tet表示四面体单元,可以看到单元有显式单元库和通用单元库。

单元类型设置后,需要设置单元尺寸:点击

设置全局单元尺寸,

设置局部边,弹出对

上的单元尺寸,因为六面体单元越接近正方体越好,因此设置全局单元尺寸话框

单元尺寸设置为2,其余默认。

3. 设置网格类型(不是单元类型)点击,

自动选择为六面体,结构化网格,

structured结构化网格只有六面体和四边形,质量最好

sweep扫掠通常适用于圆柱类几何体

bottom-up相当于在厚度方向,每一层划分的网格都和其他层一样,

free,自由网格,用于较复杂的模型网格划分。

4. 划分网格,点击

,选择yes,或者中键确认。

生成网格如图,都是正六面体。

3.2.4 求解计算

在Module列表中,选择job模块 点击creatjob

,选择需要生成job的模型:Model-1,continue。

设置保持默认,确认。

点击job manager

,弹出对话框,点击提交按钮,submit

注意最下方的各种提示信息,如果出现错误,要修改后在提交。

此时,Job-1的状态变为completed,点击result按钮,可以直接跳转到visualization模块,进行后处理。

跳转到visualization模块后,显示的是未变形的状态,

点击

,查看变形后的mises应力云图:大致的观察,变形结果是否符合预期

在红圈所示处,改变视图中所显示的变量,比如现在输出的是位移U,2方向的位移U2,也就是Y方向的位移。

或者显示应变E33:

点击

(query)查询按钮,弹出对话框,单击probe values,弹出对话框

Prob values对话框中,移动鼠标到需要查询的单元,不需要点击,即可显示查得的数据。

本文来源:https://www.bwwdw.com/article/vldd.html

Top