ABAQUS显式动力学弹丸洞穿:5个坑踩完才算真会用
显式动力学算冲击、爆炸、穿透这类问题确实强,但很多人第一次算弹丸洞穿,要么不收敛,要么钢板不变形,要么结果离谱。问题基本都出在下面这几个点上。
这个案例是40×40×10mm钢板,直径10mm的弹丸以一定速度垂直撞击,用显式动力学算整个穿透过程。
▲ 案例模型:弹丸垂直撞击钢板,显式动力学计算完整穿透过程
坑1:弹丸设成变形体,算到天荒地老
弹丸的硬度远高于钢板,穿透过程中弹丸自身变形很小。这种情况把弹丸设成离散刚体(Discrete Rigid)就行,不需要划分网格,计算量直接降一个数量级。
刚体部件需要设一个参考点(Reference Point),速度、质量都加在参考点上。注意刚体的质量不能为零,否则动量不对,结果会飘。
什么时候不能用刚体?如果弹丸本身会变形、碎裂,或者你关心弹丸的应力分布,那就必须用变形体。但大部分穿甲问题,弹丸设刚体完全够用。
坑2:材料只给了弹性,钢板穿不透
这是初学者最常见的错误。钢板在高速冲击下会发生大塑性变形,甚至失效断裂,只给弹性模量和泊松比是算不出穿透的。
正确的材料设置应该包含:
•弹性:弹性模量、泊松比
•塑性:屈服应力-塑性应变数据表,至少给3-5个点
•损伤失效:延性损伤(Ductile Damage)或剪切损伤,加损伤演化(Damage Evolution)
开了损伤失效后,还要在Field Output里勾选STATUS变量,这样单元达到失效准则后会被自动删除,才能看到真正的洞穿效果。
]
▲ 材料编辑对话框:塑性参数+损伤失效,缺一不可
坑3:网格全局加密,电脑直接卡死
显式动力学的时间步长由最小单元尺寸决定,全局加密会让时间步长变得极小,计算量指数级增长。
正确做法是局部加密:只有弹丸撞击区域和可能发生失效的区域用细网格,其他区域用粗网格。这个案例里,钢板中心撞击区域用1mm左右的网格,边缘区域可以放到3-5mm。
网格过渡区用渐变过渡,不要从1mm直接跳到5mm,否则会出现应力集中。另外,单元类型选C3D8R(减缩积分实体单元),不要用C3D8(全积分),全积分在大变形下容易体积自锁
]]
▲ 钢板几何建模:40×40×10mm,撞击区域做局部网格加密
坑4:接触没设对,弹丸直接穿过去
显式动力学推荐用通用接触(General Contact),软件自动判断所有接触对,比手动面面接触方便,也更不容易漏。
接触属性里要设摩擦系数,钢-钢碰撞一般取0.1-0.2。不设摩擦的话,弹丸会打滑,结果偏乐观。
还有一个细节:弹丸设成刚体后,通用接触里刚体和变形体的接触是自动识别的,不需要单独定义。但如果用面面接触,主面选刚体表面,从面选钢板的单元面,别搞反了。
坑5:质量缩放乱设,结果全错
显式动力学为了加快计算,常用质量缩放(Mass Scaling)。原理是人为增加单元质量,增大时间步长。但质量缩放不是越大越好。
经验值:质量缩放增加的总质量不超过模型总质量的1%-5%,对结果影响可忽略。超过10%就要小心了,惯性效应会被改变,冲击速度和能量分布都会偏。
设置方式:在Step里打开Mass Scaling,目标时间步长设为你想要的值,软件自动调整单元质量。算完后看一下质量增加比例,在合理范围内就没问
3]]
▲ 创建部件对话框:弹丸选离散刚性,钢板选可变形实体
最后说一句
显式动力学算穿透,核心就三件事:材料要给全(塑性+损伤)、网格要局部加密、接触和质量缩放别乱设。这三个搞定了,基本能跑出合理的结果。剩下的就是调损伤参数和网格密度,让失效形态和实验对上。
下一篇会讲显式动力学的能量平衡怎么看,以及怎么判断结果可不可信,有需要的可以关注。










全部评论 (0)