本文翻译自官方文档,原文链接:
https://www.dynasupport.com/tutorial/ls-dyna-users-guide/contact-modeling-in-ls-dyna
如果模型中的从节点有可能在实际情况中的确会最终停留于主面的后面,那么就要避免使用这些接触类型。这些非自动接触类型中可能会也可能不会考虑壳单元厚度的偏置(见 *CONTROL_CONTACT中的SHLTHK)。如果壳厚度偏置选项未激活(这是默认设置),那么来自开放软件DYNA3D的旧版本node-to-surface接触就会利用接触类型 types 5 和 10来实现,此时程序会对每一个从节点潜在的主面进行增量搜索。这一搜索技术是基于面段的连续性之上的,所以定义的面段必须是连续的。如果几何模型中有非常尖锐的形状,或者面段的形状很差(也就是单元形状很差--注),那么这一搜索算法将无法搜寻到合适的主面面段。如果壳厚度偏置选项被激活(也就是SHLTHK > 0),那么主面的投影方向就是节点的法线方向,面段所对应的从节点则根据基于面段的桶排序(bucket sorting)进行定位;这种情况下,主面就可以是连续的,尖锐的几何形状和形状很差的单元也将不会在搜索过程中导致严重问题。利用节点法向矢量来投影主面的工作非常消耗CPU的计算时间,但是其优点是即使对于形状非常“凸”的面,也可以保证投射出的面的连续性。在FORMING接触类型引入之前,types 5 和 10接触是薄金属片成型模拟的常用选项。
如下接触类型
*CONTACT_CONSTRAINT_NODES_TO_SURFACE (18)
与考虑壳单元偏置的*CONTACT_NODES_TO_SURFACE工作方式非常类似。
Type 18 接触无法求解带有刚性体的接触,因为它是基于约束的接触而不是基于罚函数的接触。这种接触下,约束力用来保证节点精确地依附于主面。通常情况下,我们不建议使用这一接触,因为它并没有基于罚函数的接触那么稳定。
双向接触
本质上,双向接触的原理和上述单向接触是一样的,只不过单向接触中只运行了一次的穿透检查(检查从节点是否穿透主面)在双向接触中运行了两次(还会检查主节点是否穿透了从面)。也就是说,双向接触是对称的,主面和从面的定义就显得不那么重要,因为两种计算结果是一致的。由于额外进行了穿透检查,双向接触的计算耗时大概是单向接触的两倍。
对于碰撞分析,我们推荐使用如下接触类型:
*CONTACT_AUTOMATIC_SURFACE_TO_SURFACE (a3)
这是由于大变形的存在,相互碰撞的两个部件相互之间的方向并不总是同模型预想的一致。如上所述,自动接触可以检测壳单元两侧的穿透情况。
对于金属成型模拟,如下接触类型可用但是不常用。
*CONTACT_FORMING_SURFACE_TO_SURFACE (m3)
上述单向接触类型types 5, 18 和 16对应的双向接触分别为:
*CONTACT_SURFACE_TO_SURFACE (3)
*CONTACT_CONSTRAINT_SURFACE_TO_SURFACE (17)
*CONTACT_ERODING_SURFACE_TO_SURFACE (14)
绑定接触(只约束平动自由度,无失效,无偏置)
绑定接触中,从节点被约束到了主面上一起运动。在计算的开始阶段,程序会利用从节点到主面的正交投影(orthogonal projection)来对距离每一个从节点最近的主面进行定位,若根据预定的准则,某一从节点被认为距离主面很近,那么将会被直接移动到主面上。这种方法会导致不涉及应力的情况下轻微修改几何模型。我们建议使用节点集合或面段集合而不是直接使用部件来定义绑定接触。这种情况下,用户可以直接控制某一物体直接绑定到另一物体上,而避免使用本不想使用的约束条件。随着计算的运行,从节点以及其对应的主面的等参位置(isoparametric position)就通过运动约束方程固定下来了。以如下两个接触为例:
*CONTACT_TIED_NODES_TO_SURFACE (6)
*CONTACT_TIED_SURFACE_TO_SURFACE (2)
由于没有约束从节点的转动自由度,这两个接触只可用于体单元,若用于壳单元则会出现不合理的响应。同时这两个接触的区别仅仅在于输入格式的不同(设置为从节点或者从面),工作原理是一致的。
通常情况下,由于这种接触是不对称式的,所以当绑定接触面的两侧部件材料属性一致时,主面应该设置在网格较粗的那一个部件上。但如果有一侧材料表现地非常软,那么主面应该设置到较硬的部件上。
这两个接触为基于约束的接触,因此无法用来绑定刚体和变形体,或者绑定两个刚体。若用户想要将可变形体绑定到刚体上,可以利用关键字*CONSTRAINED_EXTRA_NODES将可变形体的节点设置为刚体的附加节点;此外还可以利用offset偏置选项实现绑定(如下)。
绑定接触(只约束平动自由度,无失效,有偏置)
这一绑定接触与上一节所述绑定接触类似,只是允许增加一个主面段和从节点之间的偏置距离。有偏置的绑定接触可以用于绑定刚体,这是由于它是基于罚函数的接触类型。例如:
*CONTACT_TIED_NODES_TO_SURFACE_OFFSET (o6)
*CONTACT_TIED_SURFACE_TO_SURFACE_OFFSET (o2)
由于偏置的距离所产生的力矩传递会被忽略,所以当绑定的两个面距离很近时,这类绑定接触可以最好地实现;同时也会给结构施加一个转动自由度的约束。在基于罚函数的接触中这不算是一个大的问题,但是对于基于约束的接触来说,可能会得出完全错误的结果。
如果想要不忽略力矩的传递,可以使用两个办法实现。首先,可以在使用罚函数的情况下,使用梁状弹簧单元(beam-like spring elements )传递力矩:
*CONTACT_TIED_NODES_TO_SURFACE_BEAM_OFFSET (b6)
*CONTACT_TIED_SURFACE_TO_SURFACE_BEAM_OFFSET (b2)
其次还可以使用约束方程实现:
*CONTACT_TIED_NODES_TO_SURFACE_CONSTRAINED_OFFSET (c6)
*CONTACT_TIED_SURFACE_TO_SURFACE_CONSTRAINED_OFFSET (c2)
在使用了BEAM和CONSTRAINED选项时,偏置的距离可以适当地变大一点。但是由于此时转动自由度就不会被约束住,因此这种带偏置的接触就不能用于梁单元和壳单元。用户手册出版之后,这种带偏置的接触被增加到了960版本之中。
绑定接触(约束平动和转动自由度,有失效,无偏置)
这种绑定接触使用一种动态的约束方法,并且同时约束平动和转动自由度。此外,在模拟点焊时,若联合梁单元的材料模型*MAT SPOTWELD使用,还可以实现绑定接触的失效。例如:
*CONTACT_TIED_SHELL_EDGE_TO_SURFACE (7)
*CONTACT_SPOTWELD (7)
*CONTACT_SPOTWELD_WITH_TORSION (s7)
上面这些接触类型会将节点投影到主面之上,这对关键字*CONTACT_SPOTWELD是非常重要的,因为用于模拟点焊的梁要足够长,以便使我们可以设置最小系数的质量缩放(质量缩放对于程序在计算过程获取一个合理的时间步是必不可少的)。
TORSION 选项使得用来模拟点焊的梁能够以等效力的形式将扭力转递给周围的主面节点,而梁的轴向旋转自由度则会被约束起来。在LS-DYNA中, 非线性的壳单元有零刚度的旋转自由度(drilling degree-of-freedom),因此需要通过壳单元的薄膜响应(membrane behavior)来承受扭力。
绑定接触(约束平动和旋转自由度,有偏置)
这种接触类型通过使用动态或罚函数方法将偏置后的节点绑定到主面上:
*CONTACT_TIED_SHELL_EDGE_TO_SURFACE_OFFSET (o7)
*CONTACT_TIED_SHELL_EDGE_TO_SURFACE_BEAM_OFFSET (b7)
*CONTACT_TIED_SHELL_EDGE_TO_SURFACE_CONSTRAINED_OFFSET (c7)
使用了BEAM 和 CONSTRAINED选项后,程序将会计算由于偏置而产生的转矩,并用来更新主面。CONSTRAINED选项不能用于刚体,只能用于变形体。假如非要使用罚函数法来约束刚体,那么难点在于参与绑定接触的刚体节点的质量:如果每一个节点的质量是精确的,那么罚函数法可以顺利运行;但如果节点质量没有意义(这种情况通常出现在刚体有精确的几何模型,但是其惯性的属性是独立于网格定义的),那么罚函数将无法运行。这是因为罚函数使用节点质量计算约束旋转的罚函数力。
绑定接触(只约束平动自由度,有失效)
下面这些接触类型可以设置失效参数。在这些接触中,保证接触面的方向对齐是很重要的,因为这决定了拉伸和压缩的方向。我们可以沿法向(拉伸方向)和剪切方向设置失效力或失效应力。
*CONTACT_TIEBREAK_NODES_TO_SURFACE (8)
*CONTACT_TIEBREAK_NODES_ONLY (i8)
*CONTACT_TIEBREAK_SURFACE_TO_SURFACE (9)
(未完待续)