在数值模型中,普通的接触尘败类型只能传递压力,相互接触的部件一旦收到拉力就会互相分离。要传递拉力就需要使用绑定接触。TIE接触可以在界面之间传递压力和拉力,而TIEBREAK接触则是在TIE接触的基础上增加可选的失效准则。对于参加了TIEBREAK的节点而言,还可以参与其他约束类的设置,例如NODAL_RIGID_BODY, SPOTWELD等。此外,TIE接触是基于约束的接触类型,而TIEBREAK接触则是基于罚函数的接触类型。在定义了猜昌TIEBREAK接触之后,界面两侧的单元无法发生相对滑移。
1.接触算法
如下图所示,对于大多数的接触类型(除了面到面接触),程序对接触模型的计算都是始于针对接触对中从节点和主面段之间相对位置的处理。从节点具有质量;而主面段为三节点或四节点,可以使壳单元,也可以是实体单元的一个面。
通过将从节点沿主面段的法线方向投影,可以在主面段上“收集”到投影后的从节点。一旦成功收集到从节点,那么这一对从节点和主面段就会定义为一个接触对参加后续的接触计算。为了成功搜索到主面段边界附近的从节点投影,还可以通过参数设置来扩展主面段的面积,如下图所示。对于普通接触来说,在每一个循环步中都会进行了上述的搜索运算,而对于绑定接触,则只会在程序开始之初运行一次搜索运算。
根据从节点到主面段的投影距离可以确定此时两者的相对状态。以主面段上的局部坐标系为参考,若投影距离为负数,则两者相互穿透;
若为正数,则无穿透;
若为零,则从节点在主面段上,如下图所示。
普通接触类型只会处理穿透的情况。此时,程序会根据穿透距离和接触刚度对从节点产生一个指向主面段的接触力,迫使其穿透距离逐渐减小。
其中,f(s)为接触力,K(c)为接触刚度,delta为穿透距离。
而对于TIE接触和TIEBREAK接触,程序还会对无穿透的从节点施加接触力,使得从节点一直保持穿透距离为零的状态。当失效准则达到后,绑定接触失效,两个部件之间的接触类型转换为普通接触(除了TIEBREAK_NODES_ONLY)。
接触力不仅作用于从节点,同时还会作用于主面段的节点。每个节点所受接触力的大小取决于其与从节点的相对位置,这里不再详述。
失效准则有两种:对于单向接触,失效准则为force;对于双向接触,失效准则为stress。
2.不同的TIEBREAK接触
TIEBREAK接触可以分为两大类,自动接触和非自动接触:
自动接触:
*CONTACT_AUTOMATIC_SURFACE_TO_SURFACE_TIEBREAK
*CONTACT_AUTOMATIC_ONE_WAY_SURFACE_TO_SURFACE_TIEBREAK
非自动接触:
*CONTACT_TIEBREAK_NODES_TO_SURFACE
*CONTACT_TIEBREAK_SURFACE_TO_SURFACE
*CONTACT_TIEBREAK_NODES_ONLY
这两种TIEBREAK的区别主要在以下几个方面:
(1)参与绑定接触的从节点
对于一个从节点,假如其投影距离为零、负数或正数(小于主面段对角线长度的1%),那么称这一从节点与其对应的主面段处于初始接触的状态。
当绑定接触为自动接触时,若其OPTION选项为1或3,那么程序会将初始接触的从节点和在之后计算过程中与主面段接触的从节点均设为绑定状态;OPTION选项为其他时,程序只会将初始接触的从节点设为绑定状态。
当绑定接穗兄扒触为非自动接触时,程序会将所有用户设置的从节点都绑定到主面段上,而不会计算投影距离。所以当我们使用非自动绑定接触时,为了使程序运行更为稳定,不要使绑定状态下的从节点离主面段的距离太远,一般为不超过主面段对角线距离的10%。
(2)失效准则
自动TIEBREAK接触只能设置应力为失效准则;非自动TIEBREAK接触既可以设置应力为失效准则,还可以设置力为失效准则。
(3)壳单元的方向
自动TIEBREAK接触可以自动调整壳单元的法线方向;
非自动TIEBREAK接触则不可以,必须将接触面两侧的壳单元的方向手动设置为相对的。但是有一种例外,就是在双向非自动接触中,设置THKOFF选项为1可以激活厚度偏置,这样就可以自动处理壳的方向。
本文翻译自官方文档,原文链接:
https://www.dynasupport.com/tutorial/ls-dyna-users-guide/contact-modeling-in-ls-dyna
若在有限元模拟中引入气囊并使其与其他部件发生相互作用,那么此时应设置特殊的接触模型。下面是考虑气囊的接触问题时的一些难点:
气囊节点速度很高 (>100m/s)
气囊非常软 (E <50Mpa)
气囊非常薄 (<0.5mm)
折叠的气囊经常会发生初始穿透
气囊编织层的处理
为了实现气囊接触稳定和精确的求解,我们建议使用如下接触类型和参数。
强烈建议使用*CONTACT_AIRBAG_SINGLE_SURFACE来处理气囊的编织层之间的自接触。这一接触类型源于*CONTACT_AUTOMATIC_SINGLE_SURFACE,但是针对气囊的折叠问题中的难点进行了重大修改。
在使用SMP(对称多处理器技术,Symmetrical Multi-Processing)时,我们建议使用SOFT = 2选项,这一选项可以处理折叠气囊的初始穿透问题,同时所调用的面段到面段接触搜寻方法在处理气囊的叠及未折叠部分的复杂几何形状时更为有利。使用了SOFT = 2的接触模型计算成本较高,因此此时应提高计算机的性能;此外下图表示了一种由SOFT = 2转换为SOFT = 1或0的方法。我们可以通过设置生效时间和失效时间来实现当气囊不再折叠时接触类型由SOFT = 2转换为SOFT = 1,这种联合使用两种接触类型的办法可以提高计算的稳定性和效率。
在使用MPP(大规模并行处理,Massively Parallel Processing)时,SOFT = 2将不再有效,此时必须使用SOFT = 1或0。那么我们就需要设置一个气囊厚度随时间的变化曲线,使得气囊折叠时厚度非常小,而气囊展开后厚度变大。这样的设置可以避免初始穿透,同时保证气囊展开后可实现较好的接触行为;具体设置位置为*CONTACT中设置卡A中的LCIDAB选项。此外,我们还可以使用设置卡C中的IGNORE = 1选项来直接忽略初始穿透现象;这一方法首次出现在960版本之中,还未彻底验证其在气囊接触问题中的效用。
在气囊的工作过程中,会与许多部件发生接触,例如方向盘 ,乘客,仪表盘,门饰,侧帘,座椅等。这种情况下,我们建议使用双向接触,例如*CONTACT_AUTOMATIC_SURFACE_ TO_SURFACE。假如使腊此用了单面接触例如*CONTACT_AUTOMATIC_NODES_TO_SURFACE,并由气囊节点组成从面,程序将不会检测到部件节点穿透气囊面段的行为,这样一来,即使网格划分十分精细的部件也会出现明显的穿透气囊的现象。在气囊和部件之间的接触模型中使用*CONTACT_AUTOMATIC_SINGLE_SURFACE接触类型也是不明智的,因为这会导致重复进行气囊编制层自接触运算。
气囊与部件接触的难点很大程度在于不同材料的体积模量相差很大(可能相差1000倍),同时气囊编制层非常的薄。为了避免由于编制层过薄而提前触发释放节点的情况,建议将气囊的接触厚度设置为1.0mm这一最小值。由于不同材料类型的存在,强烈建议使用SOFT = 1选项,这样就不需要对罚函数因子进行不断的微调。下图是一个气囊接触问题的实例。
由于搜寻算法只关注节点到面段之间的穿透,所型岩以大部分接触类型都不考虑边到边的穿透问题。在大多数情况下这些接触类型都已经足够使用,但是在一些特殊的壳接触问题中,边与边之间的变得非常重要。下面介绍了处理边到边接触的一些方法,并对它们的优缺点进行了评价。
如图所示,默认情况下,*CONTACT_AUTOMATIC_GENERAL 在边到边接触中只考虑外部边。其中只属于一个单元或面段的边称为外部边,而由两个或多个单元或面段共享的边称为内部边。在接触计算中,程序会检测外部边的整个长度,而非只检测边上的节点。与其他基于罚函数的接触类型相同,SOFT=1可以有效处理不同材料之间的接触问题。
考虑内部边的边到边接触可以通过两种轮租迅方法实现。第一种方法利用了
*CONTACT_AUTOMATIC_GENERAL的梁到梁的接触处理能力。这种方法属于劳动密集型,需要沿着要考虑其接触问题的内部边创建空的梁单元(*ELEMENT_BEAM, *MAT_NULL),直径大概为1mm(elform = 1, ts1 = ts2 = 1.2mm, tt1 = tt2 = 0 in *SECTION_BEAM),并将这些梁归入一个单独的AUTOMATIC GENERAL 接触之中,如下图所示。*MAT_NULL中的d性常数用来确定接触刚度,所以要设置一个合理的值。空梁单元不需要设置结构刚度。
我们更倾向于使用第二个办法,即使用*CONTACT_AUTOMATIC_GENERAL_INTERIOR中的内部边这一选项,这一办法会花费一些额外计算成本。
与上面那些接触不同,*CONTACT_SINGLE_EDGE只处理边到边的接触,可以通过part ID,part set ID, 或 node set来定义从面,同时忽略主面。
可以忽略变形同时所受应力不重要的部件可以通过*MAT_RIGID or *CONSTRAINED_NODAL_RIGID_BODY建为刚体。*MAT_RIGID中的d性常数用于接触刚度的确定,所以要设置为合理的值,一般使用钢的参数。尽管LS-DYNA中有一些专门用于刚体的接触(包含RIGID字样的接触),但是很少被用到。任何一个基于罚函数的接触类型可以用于变形体接触,同时也可以同于刚体接触;实际上它们比RIGID接触类型要更好。刚体和变形体要定义在同一个基于罚函数的接触之中,基于约束的接触不能用于刚体接触。
刚体应该有一个合适的网格密度,以便于捕捉部件的几何形状,太过粗糙的网格会导致计算的不稳定。另一个建议是刚体接触面上的节点间距不能比参与接触的任何变形体更粗糙,因为这样才会实现接触力的合理分布。由于不计算刚体的应力和应变,因此刚体的精细网格并不会对计算产生影响。简而言之,在刚体单元的划分上不要太过吝啬。
*CONTACT_ENTITY是另一种完全不同的办法,可以定义与变形体节点相互接触的解析刚体面。
本文所有接触类型大致可以分为四组:
Group A: Types 3, 5, 10 (SHLTHK = 0)
Group B: Types 3, 5, 10 (SHLTHK = 1)
Group C: Types 5, 13, 14, 15, 16, a3, a5, a10, 26
Group D: Types 19, 20, 21
(全文完)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)