解决非线性分析不收敛的技巧
大家都提到了收敛困难的问题为加速收敛应该注意一下几个问题 : 1 收敛容差ANSYS缺省的收敛准则会根据单元的不同而检查不同的收敛力素和容差例如当采用solid65和link8时,缺省的要检查F和DISP两个力素其容差也是缺省的(Help中有)对于钢筋混凝土结构一般而言其位移比较小仅使用F力素收敛即可但其容差也同时放松一般采用5%即可(缺省是5)命令:cnvtol,f,,0.05,2 2 其它选项的设置
自动时间步打开此选择可以让程序决定子步间荷载增量的大小及其是增加或是减小收敛速度较快(命令autots,1)打开后似乎定义的子步数不起控制作用了
打开线性搜索可以帮助收敛的速度(命令:lnsrch,1) 打开预测器可以帮助收敛的速度(命令red,on)
平衡迭代次数在每一子步中的迭代次数缺省是25,将其增加例如改为50(命令: neqit,50)
NSUBST此值不宜过小否则计算过程中老是调整影响计算速度 当然对于比较简单的算例或是分布模型可能不需要如此多的选项但对于复杂的模型是需要的各位可以试试
影响非线性收敛稳定性及其速度的因素很多:
1、模型——主要是结构刚度的大小。对于某些结构,从概念的角度看,可以认为它是几何不变的稳定体系。但如果结构相近的几个主要构件刚度相差悬殊,在数值计算中就可能导致数值计算的较大误差,严重的可能会导致结构的几何可变性——忽略小刚度构件的刚度贡献。 如出现上述的结构,要分析它,就得降低刚度很大的构件单元的刚度,可以加细网格划分,或着改用高阶单元(BEAM->SHELL,SHELL->SOLID)。构件的连接形式(刚接或铰接)等也可能影响到结构的刚度。
2、线性算法(求解器)。ANSYS中的非线性算法主要有:稀疏矩阵法(SPARSE DIRECT SOLVER)、预共轭梯度法(PCG SOLVER)和波前法(FRONT DIRECT SLOVER)。稀疏矩阵法是性能很强大的算法,一般默认即为稀疏矩阵法(除了子结构计算默认波前法外)。预共轭梯度法对于3-D实体结构而言是最优的算法,但当结构刚度呈现病态时,迭代不易收敛。为此推荐以下算法:
1)、BEAM单元结构,SHELL单元结构,或以此为主的含3-D SOLID的结构,用稀疏矩阵法;
2)、3-D SOLID的结构,用预共轭梯度法; 3)、当你的结构可能出现病态时,用稀疏矩阵法; 4)、当你不知道用什么时,可用稀疏矩阵法。
3、非线性逼近技术。在ANSYS里还是牛顿-拉普森法和弧长法。牛顿-拉普森法是常用的方法,收敛速度较快,但也和结构特点和步
长有关。弧长法常被某些人推崇备至,它能算出力加载和位移加载下的响应峰值和下降响应曲线。但也发现:在峰值点,弧长法仍可能失效,甚至在非线性计算的线性阶段,它也可能会无法收敛。 为此,尽量不要从开始即激活弧长法,还是让程序自己激活为好(否则出现莫名其妙的问题)。子步(时间步)的步长还是应适当,自动时间步长也是很有必要的。 4、加快计算速度
在大规模结构计算中,计算速度是一个非常重要的问题。下面就如何提高计算速度作一些建议:
充分利用ANSYS MAP分网和SWEEP分网技术,尽可能获得六面体网格,这一方面减小解题规模,另一方面提高计算精度。 在生成四面体网格时,用四面体单元而不要用退化的四面体单元。比如95号单元有20节点,可以退化为10节点四面体单元,而92号单元为10节点单元,在此情况下用92号单元将优于95号单元。 选择正确的求解器。对大规模问题,建议采用PCG法。此法比波前法计算速度要快10倍以上(前提是您的计算机内存较大)。对于工程问题,可将ANSYS缺省的求解精度从1E-8改为1E-4或1E-5即可。
5、荷载步的设置直接影响到收敛。应该注意以下几点: 1、设置足够大的荷载步(将MAXMIUM SUBSTEP=1000000),可以更容易收敛,避免发散的出现(nsub,nsbstp,nsbmx,nsbmn); 2、设置足够大的平衡迭代步数,默认为25,可以放大到很大(100)(e