9 显式非线性动态分析
在前面的章节中,已经考察了显式动态程序的基本内容;在本章中,将对这个问题进行更详细的讨论。显式动态程序对于求解广泛的、各种各样的非线性固体和结构力学问题是一种非常有效的工具。它常常对隐式求解器是一个补充,如ABAQUS/Standard;从用户的观点来看,显式与隐式方法的区别在于: ?
显式方法需要很小的时间增量步,它仅依赖于模型的最高固有频率,而与载荷的类型和持续的时间无关。通常的模拟需要取10,000至1,000,000个增量步,每个增量步的计算成本相对较低。 ?
隐式方法对时间增量步的大小没有内在的限制;增量的大小通常取决于精度和收敛情况。典型的隐式模拟所采用的增量步数目要比显式模拟小几个数量级。然而,由于在每个增量步中必须求解一套全域的方程组,所以对于每一增量步的成本,隐式方法远高于显式方法。
了解两个程序的这些特性,能够帮助你确定哪一种方法是更适合于你的问题。
9.1 ABAQUS/Explicit适用的问题类型
在讨论显式动态程序如何工作之前,有必要了解ABAQUS/Explicit适合于求解哪些类问题。贯穿这本手册,我们已经提供了贴切的例题,它们一般是应用ABAQUS/Explicit求解的如下类型问题: 高速动力学(high-speed dynamic)事件
最初发展显式动力学方法是为了分析那些用隐式方法(如ABAQUS/Standard)分析起来可能极端费时的高速动力学事件。作为此类模拟的例子,在第10章“材料”中分析了一块钢板在短时爆炸载荷下的响应。因为迅速施加的巨大载荷,结构的响应变化的非常快。对于捕获动力响应,精确地跟踪板内的应力波是非常重要的。由于应力波与系统的最高阶频率相关联,因此为了得到精确解答需要许多小的时间增量。
9-1
复杂的接触(contact)问题
应用显式动力学方法建立接触条件的公式要比应用隐式方法容易得多。结论是ABAQUS/Explicit能够比较容易地分析包括许多独立物体相互作用的复杂接触问题。ABAQUS/Explicit是特别适合于分析受冲击载荷并随后在结构内部发生复杂相互接触作用的结构的瞬间动态响应问题。在第12章“接触”中展示的电路板跌落试验就是这类问题的一个例子。在这个例子中,一块插入在泡沫封装中的电路板从1m的高度跌落到地板上。这个问题包括封装与地板之间的冲击,以及在电路板和封装之间的接触条件的迅速变化。 复杂的后屈曲(postbuckling)问题
ABAQUS/Explicit能够比较容易地解决不稳定的后屈曲问题。在此类问题中,随着载荷的施加,结构的刚度会发生剧烈的变化。在后屈曲响应中常常包括接触相互作用的影响。
高度非线性的准静态(quasi-static)的问题
由于各种原因,ABAQUS/Explicit常常能够有效的解决某些在本质上是静态的问题。准静态过程模拟问题包括复杂的接触,如锻造、滚压和薄板成型等过程一般地属于这类问题。薄板成型问题通常包含非常大的膜变形、褶皱和复杂的摩擦接触条件。块体成型问题的特征有大扭曲、瞬间变形以及与模具之间的相互接触。在第13章“ABAQUS/Explicit准静态分析”中,将展示一个准静态成型模拟的例子。
材料退化(degradation)和失效(failure)
在隐式分析程序中,材料的退化和失效常常导致严重的收敛困难,但是ABAQUS/Explicit能够很好地模拟这类材料。混凝土开裂的模型是一个材料退化的例子,其拉伸裂缝导致了材料的刚度成为负值。金属的延性失效模型是一个材料失效的例子,其材料刚度能够退化并且一直降低到零,在这段时间中,单元从模型中被完全除掉。
这些类型分析的每一个问题都有可能包含温度和热传导的影响。
9-2
9.2 动力学显式有限元方法
这一节包括ABAQUS/Explicit求解器的算法描述,在隐式和显式时间积分之间进行比较,并讨论了显式方法的优越性。
9.2.1 显式时间积分
ABAQUS/Explicit应用中心差分方法对运动方程进行显示的时间积分,应用一个增量步的动力学条件计算下一个增量步的动力学条件。在增量步开始时,程序求解动
??等于节点的合力力学平衡方程,表示为用节点质量矩阵M乘以节点加速度u(在所施
加的外力P与单元内力I之间的差值):
??=P-I Mu在当前增量步开始时(t时刻),计算加速度为:
??|(t)?(M)?1?(P?I)|(t) u由于显式算法总是采用一个对角的、或者集中的质量矩阵,所以求解加速度并不复杂;不必同时求解联立方程。任何节点的加速度是完全取决于节点质量和作用在节点上的合力,使得节点计算的成本非常低。
对加速度在时间上进行积分采用中心差分方法,在计算速度的变化时假定加速度为常数。应用这个速度的变化值加上前一个增量步中点的速度来确定当前增量步中点的速度:
?|u(t??t)2?|?u(t??t)2?(?t|(t??t)??t|(t))2??|(t) u速度对时间的积分并加上在增量步开始时的位移以确定增量步结束时的位移:
?|u|(t??t)?u|(t)??t|(t??t)u(t??t2)
这样,在增量步开始时提供了满足动力学平衡条件的加速度。得到了加速度,在时间上“显式地”前推速度和位移。所谓“显式”是指在增量步结束时的状态仅依赖于该增量步开始时的位移、速度和加速度。这种方法精确地积分常值的加速度。为了
9-3
使该方法产生精确的结果,时间增量必须相当小,这样在增量步中加速度几乎为常数。由于时间增量步必须很小,一个典型的分析需要成千上万个增量步。幸运的是,因为不必同时求解联立方程组,所以每一个增量步的计算成本很低。大部分的计算成本消耗在单元的计算上,以此确定作用在节点上的单元内力。单元的计算包括确定单元应变和应用材料本构关系(单元刚度)确定单元应力,从而进一步地计算内力。
这里给出了显式动力学方法的总结:
1. 节点计算
a. 动力学平衡方程
??(t)?(M)?1?(P(t)?I(t)) u
b. 对时间显式积分
?u(t??t)2??u(t??t)2?(?t(t??t)??t(t))2?t2??tu
?u(t??t)?u(t)??t(t??t)u
2. 单元计算
(t?)
?,计算单元应变增量d? a. 根据应变速率?b. 根据本构关系计算应力?
?(t??t)?f(?(t),d?)
c. 集成节点内力I(t??t)
3. 设置时间 t为t??t,返回到步骤1。
9.2.2 比较隐式和显式时间积分程序
对于隐式和显式时间积分程序,都是以所施加的外力P、单元内力I和节点加速度的形式定义平衡:
9-4
??=P-I Mu其中M是质量矩阵。两个程序求解节点加速度,并应用同样的单元计算以获得单元内力。两个程序之间最大的不同在于求解节点加速度的方式上。在隐式程序中,通过直接求解的方法求解一组线性方程组,与应用显式方法节点计算的相对较低成本比较,求解这组方程组的计算成本要高得多。
在完全Newton迭代求解方法的基础上,ABAQUS/Standard使用自动增量步。在时刻t??t增量步结束时,Newton方法寻求满足动力学平衡方程,并计算出同一时刻的位移。由于隐式算法是无条件稳定的,所以时间增量?t比应用于显式方法的时间增量相对地大一些。对于非线性问题,每一个典型的增量步需要经过几次迭代才能获得满足给定容许误差的解答。每次Newton迭代都会得到对于位移增量?uj的修正值cj。每次迭代需要求解的一组瞬时方程为
?c?P?I?Mu??j Kjjjjj?是关于本次迭代的切对于较大的模型,这是一个昂贵的计算过程。有效刚度矩阵Kj向刚度矩阵和质量矩阵的线性组合。直到一些量满足了给定的容许误差才结束迭代,如力残差、位移修正值等。对于一个光滑的非线性响应,Newton方法以二次速率收敛,描述如下:
迭代 相对误差 1 1 2 10-2 3 10-4 . . . . . .
然而,如果模型包含高度的非连续过程,如接触和滑动摩擦,则有可能失去二次收敛,而是可能需要大量的迭代过程。为了满足平衡条件,减小时间增量的值可能是必要的。在极端情况下,在隐式分析中的求解时间增量值可能与在显式分析中的典型
9-5