摘 要:Anderson算法是求解非線性方程组的有效加速迭代方法。本文采用Anderson(m,β)算法求解二维和三维Burgers方程的Crank-Nicolson格式离散所得的非线性方程组。数值计算结果表明, 当算法参数β=-0.5时, 由离散所得的非线性方程组的Anderson迭代解的收敛性达到最优。
关键词:Burgers方程;Crank-Nicolson格式;Anderson加速
中图分类号:O241.82;O35
文献标识码:A
文章编号 1000-5269(2018)04-0025-07
Burgers方程是描述物理流动、冲击波、湍流等问题的一个简单而重要的流体力学模型[1], 它本质上是对Navier-Stokes方程简化的一种非线性偏微分方程。特别地, Burgers方程不仅是浅水波问题的洪水数学模型,而且还是当代交通流动力学的数学模型。因此, 研究其数值解具有十分重要的意义。
针对Burgers方程的数值求解已有完善的研究工作。在二维情形,FLETCHE[2]给出了3点、5点和7点有限差分格式与线性、二次和三次的有限元格式, 对比之后得出线性有限元格式及三点有限差分格式最为有效。JAIN[3]基于三次样条技术设计了两种数值算法, 并给出算法的稳定性和收敛性分析。 GOYON建立了一种多水平的分层ADI格式[4]; 文献[5-6]建立了Crank-Nicolson格式。在三维情形, CAMPOS等[7]提出了一种具有高精度、低计算代价的高阶有限差分方法,并给出相应的数值实验与分析。
上述已有方法都是求解Burgers方程行之有效的数值方法, 但最后都要归结于求解由离散格式得到的非线性方程组,求解这样的非线性方程组往往随着维数的增加而变得十分困难。通常情况下, 人们采用Newton迭代法来求解这个非线性方程组[5,8-9]。 然而,Newton迭代法的不足之处在于其每一步迭代都需要计算Jacobi矩阵以及其逆矩阵,这会导致巨大的计算代价;并且只有Jacobi矩阵非奇异时,才可以求解,这在多数情况下是无法保证的。因此,如何改进Newton迭代法以高效、快速求解非线性方程组,至今仍是人们关心的重要研究课题;而且结合改进的Newton迭代,以提高数值求解Burgers方程的逼近精度和计算效率是有意义的科学计算问题。
为了改进Newton迭代求解非线性方程组所导致的缺陷, 即避免计算Jacobi矩阵,目前已经取得许多富有成效的工作:Newton-Krylov方法[10-11]、Anderson加速方法[12]、非线性Krylov加速方法[13]、Broyden方法[10,14]等。 在多变量情形,CALEF等[15]讨论了非线性Krylov加速方法与Anderson 加速方法的等价性,并证明在单变量时Anderson加速方法得到同样精度的解,但所需要的迭代步数最少。WILLERT等[16]研究了Broyden方法与Anderson加速方法之间的联系,并作相应的数值比较。WALKER等[17]详细讨论了Anderson加速方法,证明了在求解线性方程组时Anderson加速算法就等价于广义极小剩余法(GMRES法), 同时也指出了Anderson(m,β)算法中参数β的选择范围为[-1,1]。在一定假设的条件下, TOTH等[18]首次给出了Anderson(m,β) 算法的收敛性证明。
本文的工作首先是建立三维Burgers方程的Crank-Nicolson格式; 然后是采用Anderson(m,β)算法来求解二维和三维Burgers方程的Crank-Nicolson格式离散所得的非线性方程组。针对Anderson(m,β)算法对不同的问题,参数β∈[-1,1]的最优选取值不一定相同的特点, 本文结合已有的二维Burgers方程Crank-Nicolson格式,探讨了Anderson(m,β)算法中参数β的最优选取。
大量的实验结果表明,算法参数m应该小于3,这是因为Anderson加速是多点迭代算法,m的增加会造成误差的积累并且对迭代加速的影响在逐渐降低。因此,上述两个数值例子,我们取算法参数m=2。
4 结语
本文使用Anderson加速算法来求解关于二维和三维Burgers方程的有限差分Crank-Nicolson 格式离散所得的非线性方程组。 与Newton迭代方法相比较,我们使用的Anderson加速(Anderson(m,-0.5))方法可以节约CPU时间,而且Anderson迭代解的收敛性达到最优。因此,文中所研究的Burgers方程的数值方法在保持Crank-Nicolson 格式无条件稳定与二阶精度的同时,还兼具Anderson算法求解非线性方程组时加速迭代收敛的双重优点。
参考文献:
[1]FRIED JJ, COMBARNOUS M. Dispersion in porousmedia[J]. Advance in Hydroscience,1971,7(1):169-282.
[2]FLETCHER C A J. A comparison of finite element and finite difference of the one- and two-dimensional Burgers′ equations[J]. Journal of Computational Physics, 1983,51(1):159-188.
[3]JAIN P C. Numerical solution of coupled Burgersequations[J]. International Journal of Non-Linear Mechanics, 1978,13(4):213-222.
[4]GOYON O. Multilevel schemes for solving unsteadyequations[J]. International Journal for Numerical Methods in Fluids, 1996,22(10):937-959.
[5]KWEYU M C. Crank-Nicolson scheme for numerical solutions of two-dimensional coupled Burgersequations[J]. International Journal of Scientific & Engineering Research, 2011,2(5):1-6.
[6]SRIVASTAVA V K, TAMSIR M, BHARDWAJ U. Crank-Nicolson Scheme for Numerical Solutions of Two-dimensional Coupled Burgers′ Equations[J]. International Journal of Scientific & Engineering Research, 2011, 2(5):1-7.
[7]CAMPOS M D, ROMAO E C. A high-order finite-difference scheme with a linearization technique for solving of three-dimensional Burgersequation[J]. Computer Modeling In Engineering and Sciences, 2014,103(3):139-154.
[8]BAHADIR A R. A fully implicit finite-difference scheme for two-dimensional Burgers′ equations[J]. Applied Mathematics and Computation, 2003,137(1):131-137.
[9]SRIVASTAVA V K, AWASTHI M K, SINGH S. An implicit logarithmic finite-difference technique for two dimensional coupled viscous Burgers′ equation[J]. AIP Advances, 2013, 3(12):122105-122114.
[10]KELLEY C T. Iterative Methods for Linear and Nonlinear Equations [M]. Philadelphia:SIAM,1995.
[11]KNOLL D, KEYES D.Jacobian-free Newton-Krylov methods:A survey of approaches and applications[J]. Journal of Computational Physics, 2004,193 (2):357-397.
[12]ANDERSON D G.Iterative procedures for nonlinear integralequa-tions[J]. Journal of The ACM , 1965,12(4):547-560.
[13]CARLSON NN, MILLER K. Design and application of a gradient- weighted moving finite element code I:In one dimension[J]. SIAM Journal on Scientific Computing, 1998,19(3):728-765.
[14]BROYDEN C G. A class of methods for solving nonlinear simultaneousequations[J]. Mathematics of Computation, 1965,19(2):577-593.
[15]CALEF M, FICHTL E, WARSA J,et al. Nonlinear Krylov acceleration applied to a discrete orinates formulation of the k-eigenvalue problem[J]. Journal of Computational Physics, 2013,238(1):188-209.
[16]WILLERT J, TAITANO W T, KNOLL D. Leveraging Anderson acceleration for improved convergence of iterative solutions to transportsystems[J]. Journal of Computational Physics, 2014,273(15):278-286.
[17]WALKER H F, Ni P. Anderson acceleration for fixed-pointiterations[J]. SIAM Journal on Numerical Analysis, 2011,49(4):1715-1735.
[18]TOTH A, KELLEY C T. Convergence analysis for Andersonacceleration[J]. SIAM Journal on Numerical Analysis, 2015,53 (2):805-819.
[19]ASLAN Y. The semi-approximate approach for solving Burgers′ equation with high Reynoldsnumber[J]. Applied Mathematics and Computation, 2005,163(1):131-145.
(責任编辑:周晓南)