太阳集团官网1385但是在1和2之间仍然有很多的取值

当前位置:太阳集团www.1385.com > 太阳集团官网1385 > 太阳集团官网1385但是在1和2之间仍然有很多的取值
作者: 太阳集团www.1385.com|来源: http://www.sifanghuixin.com|栏目:太阳集团官网1385

文章关键词:太阳集团www.1385.com,逐次超松弛

  1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。

  黄金分割法确定对称逐次超松弛迭代法的最佳松弛因子 张德宣,杜成斌,孙立国 (1. 河海大学工程力学系, 江苏 南京 210098) 摘要:本文提出了将黄金分割法确定松弛因子与对称逐次超松弛法的改进迭代格式相结合的迭代算法。算法应用黄金比例分割法确定最佳松弛因子,成功的将其与运行速度和效率很高的对称逐次超松弛法的改进迭代格式相结合,并给出了迭代收敛性证明,编写了相应的程序,对一实际结构进行的算例计算表明,与大型商业软件的计算结果相比较,本文所提算法具有精度高,收敛快的优点。 关键词:黄金分割;对称逐次超松弛法;松弛因子 1 引言 线性代数方程组 (其中A为非奇异系数矩阵,b为列向量)的迭代解法通常有Jacobi迭代法,Gauss Seidel迭代法和对称逐次超松弛迭代(SSOR)法三种,此外还有USAOR迭代法,USSOR迭代法等。 但是当结构的自由度达到较大的数目(如10000个自由度以上),Jacobi法和Gauss Seidel法存在着运算速率很慢这一明显缺点,而且这些迭代方法的结果的精度不能保证。因此本文针对运算速率很高的对称逐次超松弛法的改进迭代格式提出了用黄金分割法确定松弛因子的思路,编写了黄金分割计算松弛因子与相应的迭代法相结合的程序,实际算例表明,本文方法可提高求解大型线性方程组的求解效率和精度。 2 SSOR-PCG法改进的迭代格式 SSOR法在每步迭代中,需计算系数矩阵与方向向量的乘积,下面引用了该法的改进迭代格式,避免了该乘积的计算,比原迭代格式节省计算量8%—50%。 SSOR法的改进迭代格式为: 置初值, (1) R: 式中 ,为内积表示,下同。 如果,则停止,否则 (2) 从迭代格式可见,由于V是对角阵,计算Vy和Vd为2n次乘法运算。改进的迭代格式由于避免了计算Ad,比原迭代格式可省次乘法运算,为A的各行非零元素的平均个数。因此,是改进迭代格式节省计算量约8﹪;时,可节省计算量约50﹪,各迭代步计算量接近CG(共轭梯度)法的计算量。 3 松弛因子的选取 本文采用上述对称逐次超松弛法的改进迭代格式求解大型线性方程组,将黄金分割法确定松弛因子与之相结合,松弛因子的取值对迭代公式的收敛速度影响很大,它的好坏直接影响到收敛的快慢。为了保证迭代过程的收敛,取,但是在1和2之间仍然有很多的取值,究竟如何取值,目前并没有统一的规定,一般是将的取值区间(1,2)进行M等分,松弛因子分别取,,… …,,然后分别代入迭代公式求解的同时比较出最少的迭代次数,这样就得到了最佳的值。但是这种方法如果要得到比较精确的值,M的取值就要变大,如果要在程序中实现,就导致计算量增加很多,运算时间就会延长许多,是很不经济的。 黄金分割比例法是一种经典的算法,本文即采用此种方法来确定最佳松弛因子,其具体步骤和主要思想如下: (1)利用优选法思想,在(1,2)之间选取四个点,即: dot1=1,dot2=dot4-0.618(dot4-dot1),dot3=dot1+0.618(dot4-dot1),dot4=2 。 (2)分别取dot2与 dot3作为松弛因子代入迭代程序,比较出最少的迭代次数,如果dot2对应的迭代次数少,则选取(dot1, dot2)作为收敛区间,如果是dot3对应的迭代次数少,则选取(dot3, dot4)作为收敛区间。 (3)在所选取的收敛区间里循环进行上述的两个步骤,直到选取出迭代次数最少时所对应的最佳松弛因子。 通过本文中所采用的算例验证,本文方法确定松弛因子的加速效果是明显的,计算的时间相对较短。在SSOR法改进迭代格式中采用黄金比例分割的综合算法就可以根据不同的具体工程问题确定最佳松弛因子,该算法简单明了,而且效果显著,大大节省了选取最佳松弛因子的时间,太阳集团官网1385提高了大型有限元方程组计算的收敛速度。 4 收敛性证明 由迭代法的基本定理可知,(B为迭代矩阵)的充要条件是矩阵B的谱半径,如能证明即,那么就能证明迭代法收敛(其中为迭代矩阵的任一特征值)。可设为对应的迭代矩阵的特征向量,而本文算法所采用的迭代矩阵为: (3) 则由 , 即 (4) 然后对两边同时考虑数量积可得 则 (5) 显而易见 (6) 设 , 由于,所以,故 (7) 所以 , 从而. 利用式(6)和式(7)可得 (8) 而本文所采用黄金分割法确定的松弛因子,则,则式(8)小于0。即的任一特征值满足,故本文所采用的迭代方法收敛。 5 算例 设一悬臂梁长20m,高5m,厚1m, 如图1所示。材料弹性模量E=2.1E7,泊松比=0.167,不计自重,上表面受1000 N/m 的均布荷载。网格划分为平面四节点单元,长度方向200等分,高度方向50等分,则节点总数为10251,太阳集团官网1385单元总数为10000。 图1 悬臂梁网格剖分示意图 表1为本文算法与大型商业软件MARC计算的节点位移比较,表2为两者运算时间的比较(采用的计算机配置为:Pentium(R) D CPU 2.80 GHz , 1.00 GB 内存)。 表1 本文算法与MARC计算节点位移比较 节 点 方 向 MARC 解 本文算法解 误 差% 2 x -0.315654E-03 -0.315041E-03 0.194 y -0.151406E-03 -0.151282E-03 0.082 101 x -0.130349E-01 -0.130269E-01 0.061 y -0.354377E-01 -0.353946E-01 0.343 201 x -0.148028E-01 -0.147813E-01 0.145 y -0.942368E-01 -0.942186E-01 0.019 5126 x 0.431350E-04 0.432271E-04 0.213 y -0.353197E-01 -0.352766E-01 0.122 10052 x 0.329006E-03 0.328835E-03 0.052 y -0.168963E-03 -0.168703E-03 0.154 10151 x 0.131212E-01 0.131073E-01 0.106 y -0.355535E-01 -0.355067E-01 0.132 10251 x 0.149818E-01 0.149659E-01 0.106 y -0.943525E-01 -0.943297E-01 0.024 注:表中节点位置参见图1. 表2 二者运算时间比较 Marc计算 本文算法计算 运行时间 1分32秒 17秒 通过所列的表1和表2观察可以发现,本文算法所求出的位移与大型商业软件MARC相比较精度误差很小,具有较高的精度,且在保证精度的基础上计算时间也大大缩短,有很高的利用价值。本文算例所生成并取用的最佳松弛因子=1.729475,而通常算法要想得到精确的松弛因子,只能将松弛因子进行等分再依次代入,依据迭代次数的多少选取出最佳松弛因子,累加起来就是一个非常巨额的计算时间,是很不现实的。而根据本文算法编写的程序,由于包含了黄金比例分割法计算最佳松弛因子的子程序,可以精确的计算出最佳松弛因子,效果显著,大大节省了选取最佳松弛因子的时间,进而提高了大型方程组计算的收敛速度与结果精度,具有非常强的经济实用性。 6 结论 本文提出的黄金分割求解最佳松弛因子结合SSOR法的改进格式的综合算法,不仅计算公式简单,编程易于实现,而且计算结果与大型商业软件求解结果相比,精度较高,速度也大大提高,适宜用于求解大型稀疏线性方程组。 参考文献: [1] Ruiming Li,Dian Zhou. A note on the eigenvalue relationship for USAOR iterative method applied to p-cyclic matrices[J], Journal of Computational and Applied Mathematics, 2004,169: 213-225. [2] M. Madalena Martins. An Error Bound for the SSOR and USSOR Methods[J], Lineab Algebra and Its Applicitions,1996,232:131-147 . [3] 林绍忠. 对称逐步超松弛预处理共轭梯度法的改进迭代格式[J], 数值计算与计算机应用,1997,4:266-270. 5

网友评论

我的2016年度评论盘点
还没有评论,快来抢沙发吧!