首页/文章/ 详情

有限元基础知识:显式动力学与中心差分

3小时前浏览2

之前有说过隐式动力学分析 有限元基础知识:动力学分析

经常有工程师在日常的工作中,是有这样一种模式,那就是“隐式不收敛了换显式吧,时间步长弄小点”,的却显式动力学作为瞬态动力学分析的另一种核心方法,专攻短时程、强非线性、高应变率的工程问题。我愿意称其方法的核心思想为“力大飞砖”,啥非线性问题都能算,然后通过大量计算资源将分析步切的非常小以保证精度与稳定性。

显式算法原理

显式动力学与隐式动力学一样都基于以下运动方程:

 

而区别则在于,显式动力学采用中心差分法进行时间离散,其核心思想是通过当前时刻的运动状态直接外推下一时刻的位移,避免求解耦合方程组。设当前时刻为(t_n),中心差分法的关键操作如下:

  1. 速度定义
    速度近似为相邻时刻位移的均值差分

       
  2. 加速度定义
    加速度通过中心二阶差分获得

       

将速度与加速度表达式代入运动方程,得到显式递推关系

  1. 加速度计算
    由当前时刻的力平衡直接求解

       
  2. 位移更新
    通过泰勒展开保留二阶精度项

       
  3. 速度更新
    采用半步长速度迭代

       

这样我们就通过中心差分的方式进行了显式动力学方程的求解与加速度、速度、位移的更新。那么观察上述公式与隐式动力学相比我们可以发现如下几个重要的特点:

  1. 无需刚度矩阵求逆:加速度直接由当前时刻力平衡计算    
    其中      为第n步对应的内力矢量,由单元应力场积分获得,      为外力
  2. 条件稳定性:时间步长受Courant-Friedrichs-Lewy(CFL)条件限制,确保应力波在一个时间步内不跨越单个单元
 

   为最小单元特征长度,    为材料 dilatational 波速。 这里Dilatational波速(纵波速/压缩波速)是材料中体积应变波的传播速度,反映材料抵抗压缩变形的能力。其本构表达式为:

 

   :Lamé常数
   :弹性模量
   :泊松比
   :材料密度

整体上我们可以看到如果在显式分析中随便进行网格细化,那么单元特征长度L会减小,导致最小稳定时间步相应的减小,导致计算效率会受到单元数量增多+最小稳定时间步减小的双重作用,非常的被动,这也是为啥一般软件在显式分析中对于网格的要求会高于隐式分析。

最后总结一下显式分析与隐式分析的区别:

  1. Newmark法(隐式)

    • 需联立求解非线性方程组
    • 无条件稳定(当(\beta \geq 0.25)时)
  2. 中心差分法(显式)

    • 完全显式推进,无迭代过程
    • 最大稳定步长受材料波速限制
    • 特别适合波传播问题(如冲击波模拟)



显式分析中有很多重要的细节,比如质量缩放、缩减积分单元的沙漏控制、接触刚度控制等以及由于其本身不需要求解刚度矩阵的分解,非常适合做并行化,这些内容我们后续慢慢进行分享。

插一些题外小故事,很多做显式分析的同志们都熟悉一款软件LS-Dyna,这个软件就是做冲击、碰撞、爆炸起家的,LS的全称是(Lawrence Livermore software),而Lawrence-Livermore是一个美国国家实验室,主要工作是做核武器性能评估,所以大家就理解为啥这地方会诞生这种软件了,而Lawrence其实是个人名,我不知道大家是否看过电影《奥本海默》,就是电影里的这老哥,给奥本海默做实验的这个。

对于显式理论上面这本书还不错

来源:大狗子说数值模拟
LS-DYNA瞬态动力学显式动力学碰撞非线性理论爆炸材料
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-02-08
最近编辑:3小时前
大狗子说数值模拟
博士 传播国际一流的数值模拟算法
获赞 5粉丝 6文章 42课程 0
点赞
收藏
作者推荐

有限元基础知识:非线性屈曲1

上次说了线性屈曲分析,有限元基础知识:线性屈曲分析这次说一下非线性屈曲,非线性屈曲一般用于分析后屈曲问题,诸如汽车行业:控制臂的后屈曲分析,诸如土木行业的:钢结构后屈曲分析。与线性屈曲不同的点在于,非线性屈曲可以考虑在屈曲发生过程中的:几何非线性(大变形)材料非线性(比如金属的塑性)甚至接触关系一般来说对于上述非线性问题,我们会采用牛顿法进行迭代求解,然而对于载荷-变形行为较为复杂的仿真分析(如后屈曲),传统的牛顿法无法求解,应该采用弧长法进行求解。目前最为常用的弧长法采用改进Riks方法(ModifiedRiks),这里Riks是个人名,没啥含义。之所以需要选用这一类型的方法,原因在于比如在一个力加载的系统中,力的大小是随着加载增加的,而当计算之前用户其实无法预估最大的力,所以可能会加载到一个结构永远无法承受的力,这样结构的计算就永远不收敛,如下图所示:而如果采用位移加载,在一定程度上则可以避免上述的情况,却由于位移或单调递增或以一个函数的形式施加,没法准确的捕捉后屈曲的snap-back(跳回失稳)行为,如下图所示:所以对于一个典型的非线性后屈曲问题,有以下的特征:荷载位移曲线可能达到某个峰值后迅速下降可能存在跳回失稳的情况屈曲发生后承载力可能迅速下降后又提升(变形到了另外一个相对稳定的状态)那么弧长法由于其既可以处理snap-through(载荷下降),又可以处理snap-back(位移减少)就成了我们处理后屈曲问题的当前的唯一选择。具体的做法为,在弧长法中,我们会引入一个新的变量,,这里我们以力加载为例,可以认为就是载荷系数,那么现在我们有如下的公式:而上述公式由于是与相关的(考虑几何、材料、边界非线性的结果),我们需要对上述公式进行非线性方程求解,但现在别说非线性方程了,线性方程都解不了,因为我们假设原系统有个未知数,现在引入了,上述方程其实是一个个方程求解个未知数的问题,是肯定求解不了的,那么我们就再“人为”的多引入一个方程,即约束方程,改进的Riks中认为,每一步的增量的,正交于,即:那么我们就多了一个方程:那么我们就可以有个方程求解个未知数,而这里由于引入了,这个待求解的系数,可以增大可以变小,在某个增量步中可正可负,也就完美的解决了传统牛顿法力控制、位移控制的问题。对于上述非线性方程的求解,其实真正求解过程还有很多技巧,我们下次来说一说。最后说一些应用上需要注意的点:虽然我们采用弧长法时候经常需要设置总弧长,但一般来说用户比较难以预估构件发生后屈曲时的总弧长,现在商业软件中会默认对载荷向量进行归一化处理,所以如果预估的极限载荷为设置载荷的n倍,建议设置总弧长为倍。而对于弧长增量则更多的是起到控制其收敛的作用,比如如果设置的载荷为10N,那么如果弧长增量设置为1,则可以认为大概每个增量进行1*10N左右的载荷提升。对于自动Riks增量设置,弧长增量会在最大最小增量之间自动的调整,以达到更好的收敛性与提升计算效率。尽可能通过设置停止准则的方式来达到结束计算的效果,一般软件中如Abaqus,支持对于最大载荷比例系数p进行设置,默认值为1.0,这意味着当迭代过程中的载荷超过了设置载荷的p倍后,软件就会停止计算。一个常用的经验是在不考虑非线性的情况下,做个线性屈曲分析,然后考虑初始缺陷与各种非线性将该线性屈曲的极限载荷作为非线性屈曲的输入载荷一般来说在进行后屈曲分析中,应该默认打开几何非线性,考虑其在大变形下的力学性能。来源:大狗子说数值模拟

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈