多线程对Abaqus计算精度的影响探讨

一般情况下,多线程运行Abaqus/Explicit时,线程数并不会影响计算结果。


然而,有时运行同一个inp文件,当域级并行的拓扑域数目设置的不一样时,我们发现,会存在计算结果不一致的问题,这是如何发生的呢?

先来看一下拓扑域的设置,显式计算时,并行设置有Domain和Loop两种方式,Domain即拓扑域,适用于大多数显式计算,创建任务时,可以把它设置为线程数的整数倍,后处理时,也可以通过Color Code显示这些拓扑区域。


多线程会影响Abaqus计算精度吗?的图1

域级并行设置和后处理显示


Abaqus将划分好的拓扑域均匀地分配给每个线程,所有域内单独进行计算,每一个时间增量内,有共同边界的域之间会进行通信,合并数据。


多线程会影响Abaqus计算精度吗?的图2

设置了8个拓扑域的金属点阵冲击模型





Domain如何影响计算结果?



在分析过程中,不同的分解形式会造成数值浮点运算次序的改变,由此产生不同的截断误差,也就会导致不同的计算结果。

通过一个示例可以展示这个过程,如下图所示,现在我们要计算单元力引起的节点加速度。

  • 假设
  1. 等效节点质量为单位质量
  2. 可执行3位数精度的浮点运算
  3. 问题中的单元力分别为F1=1.57,F2=10.1,F3=-1.53,F4=-10.2

多线程会影响Abaqus计算精度吗?的图3

1个拓扑域运行(左)- 2个拓扑域运行(右)


  • 无限精度下

作为参考值的节点加速度:

a=F1+F2+F3+F4= -0.06



  • 1个拓扑域运行

节点加速度:

a=((F1 + F2) + F3) + F4

数值标准化后:

a=((.016E2 + .101E2) -.015E2) - .102E2= 0


  • 2个拓扑域运行

节点加速度:

a=(F1 + F3) + (F2 + F4)

数值标准化后:

a=(.157E1 - .153E1) + (.101E2 - .102E2)=.004E1 - .001E2

再一次标准化数值运算:

a=.004E1 - .010E1 = -0.006E1= -0.06


使用2个拓扑域运行时的结果与参考值相等,因为在两个较小的数值并入较大的数值之前,恰好把它们相加了。


在很多分析中,这种截断误差引起的微小差异不足以影响整体响应,但是在一些高度非线性的模型如完美结构(未受扰动的几何,Unperturbed Geometry)的后屈曲显式分析中,可能导致显著的计算差别。


比如方管压溃变形的后屈曲显式计算问题。


多线程会影响Abaqus计算精度吗?的图4

方管压溃变形


直接进行完美结构的后屈曲分析会发现,使用不同的拓扑域计算,将导致结果出现显著的差异,根据Abaqus帮助文档,不改变模型的情况下,执行双精度运行,可以一定程度上减少这种误差,但是随着时间积分的向后推进,误差仍会比较显著;而引入几何缺陷,可以最大限度的避免这类问题中由于拓扑域不同而导致的截断误差。


多线程会影响Abaqus计算精度吗?的图5

方管完美结构压溃反力


在屈曲分析之前,先进行特征值屈曲分析,提取前10阶屈曲模态。


多线程会影响Abaqus计算精度吗?的图6

前10阶屈曲模态


再通过屈曲模态引入几何缺陷,执行显式后屈曲分析,不同拓扑域下,计算结果基本一致,没有显著误差。


*IMPERFECTION, FILE=tube_buckle, STEP=1 1, 2.0E-5 2, 0.8E-5 3, 0.4E-5 4, 0.18E-5 5, 0.16E-5 6, 0.10E-5 7, 0.10E-5 8, 0.08E-5 9, 0.02E-5 10, 0.02E-5

多线程会影响Abaqus计算精度吗?的图7

方管几何缺陷结构压溃反力



以上表明,处理完美结构后屈曲显式分析或一些其它的高度非线性显式分析模型时,要特别注意Domian造成的截断误差,而“光滑的”非线性问题,比如金属辊压成型,则对这种截断误差不敏感,无需担心。

多线程会影响Abaqus计算精度吗?的图8

金属辊压成型


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空