求解非对称线性方程组的积多项式预处理GMRES算法
VC毕业论文GMRES算法的加速收敛现象分析毕业论文

摘要随着科学和工程技术的发展,越来越多的问题需要求解大规模的线性方程组,对这类方程的快速求解已成为数值代数研究的热点之一,特别是具有稀疏结构的大型方程组的求解。
基于Galerkin原理的Arnoldi算法是求解这种线性代数方程组的近似算法,以下称这种方法为广义极小残余算法(GMRES算法)。
GMRES 方法是目前求解大型稀疏非对称线性方程组最为流行的一种迭代方法。
GMRES算法在迭代过程中通常表现出一种加速收敛行为,随着迭代次数的增加,这种加速收敛现象越明显,即残量收敛会随着迭代步数的增加而逐渐得到改善。
在CG方法中,这种加速收敛与Ritz值有密切关系。
通过分析,我们发现GMRES的加速收敛与其斜投影过程中产生的Ritz值对特征值的逼近程度有关系。
在实际应用中,为了减少存储量和计算量,我们通常使用GMRES算法的重新开始版本来求解大型非对称线性方程组。
本文描绘了GMRES和GMRES(m)的加速收敛现象,并通过实验给予解释。
关键字:广义最小残量; Krylov子空间; Ritz值;加速收敛;正交投影方法;非对称线性方程组On The Superlinear Convergence of GMRESAbstractWit h the d evelo p me nt o f science and p ro ject techno lo g y,mo re and mo re q uestio ns need the so lut io n o f b ig linear syste ms. T h is so lut io n is o ne o f the fastest ways fo r researchin g nu mer ica l algeb ra,esp ecia lly fo r the b ig sparse matr ix. The way o f Arno ld i is b ased up o n the p rinc ip le o f Galerk in, wh ich is clo se d to the so lut io n o f the linear nu mer ica l system.Here, we call the so lut io n as Generalized Min imu m Res id ua l (GMRES).GMRES is o ne o f the mo st p op u lar iterat ive met ho d s fo r the so lut io n o f b ig no ns in gu lar no nsy mmetr ic linear syste ms.It us ua lly has a so-called sup er linear co n vergence b ehav io r.The rate o f co nverge nce seems to imp ro ve as the iterat io n p ro ceed s.F o r ano ther say,the rate o f resid ua l var iab le w ill b e imp ro ved as we increase its iterat io n.F o r the co nju gate grad ie nts metho d, th is met ho d has b een related to a d egree o f co nverge nce o f t he Rit z va lue. Thro u g h so me ana lys is,we fo und that fo r GMRES to o, changes in co n vergence b ehav io r seem to be related to the co nverge nce o f R it z va lue. In o ur p ractica l app licat io n,we also usua lly use GMRES(m) fo r red uc in g sto rage and co unter so lv in g b ig linear systems.Th is p ap er stud ies the sup erlinear co nvergence b ehav io r o f GMRES and GMRES(m),and sup p lies exp la in thro u g h exp erimen t.Key wo rd: GMRES; K ry lo v sub sp ace; R it z va lue; sup er linear co nverge nce;o rtho go na lizat io n metho d; no nsy mmetr ic linear system目录摘要 (I)A B S T RA C T ................................................. I I 第一章引言.. (1)第二章G M R E S算法基础知识 (3)§2.1向量范数 (3)§2.2线性方程组最小二乘问题 (4)§2.2.1Gr a m-S ch m id t正交化方法 (4)§2.2.2Gi v en s变换 (4)第三章G M R E S算法理论 (6)§3.1K RYLOV子空间方法的基本理论 (6)§3.2A RNOLDI算法 (7)§3.3G MR E S算法结构 (8)第四章G M R E S算法的加速收敛现象分析 (9)第五章数值示例与算法实现 (19)§5.1数值实验 (19)§5.2算法改进与实现 (22)§5.2.1预处理技术 (22)§5.2.2算法实现 (24)§5.3实验总结 (34)致谢 (35)参考文献 (38)R E P O RT OF LI T E RA T UR E (39)文献报告 (43)第一章 引言关于线性方程组的数值解法一般分为两大类:直接法和迭代法。
《2024年解线性方程组的VRP-GMRES(m)迭代法》范文

《解线性方程组的VRP-GMRES(m)迭代法》篇一一、引言随着科技的发展,线性方程组的求解在众多领域中扮演着重要的角色。
其中,VRP-GMRES(m)迭代法作为一种高效的求解方法,被广泛应用于各种实际问题中。
本文旨在详细介绍VRP-GMRES(m)迭代法的原理、应用及其优势。
二、VRP-GMRES(m)迭代法的基本原理VRP-GMRES(m)迭代法是一种基于Krylov子空间的迭代方法,用于求解线性方程组。
其基本思想是利用GMRES算法构造一个与原系数矩阵A的某种特定性质的子空间,并在这个子空间中求解线性方程组。
该方法具有较高的求解精度和收敛速度,适用于大规模稀疏线性方程组的求解。
三、VRP-GMRES(m)迭代法的具体步骤1. 初始化:选择一个初始向量x0,设置容差阈值tol、最大迭代次数maxiter等参数。
2. 计算Krylov子空间的一组基向量。
3. 利用GMRES算法,计算残差向量r=b-Ax0,并构造一个正交矩阵Q。
4. 求解最小二乘问题,得到一个近似解x1。
5. 判断收敛性:计算当前解与真实解之间的误差,若误差小于容差阈值或达到最大迭代次数,则停止迭代,输出当前解;否则继续迭代。
6. 重复步骤2至5,直到满足收敛条件或达到最大迭代次数。
四、VRP-GMRES(m)迭代法的应用VRP-GMRES(m)迭代法在众多领域中得到了广泛的应用。
例如,在机械制造、航空航天、电子工程等领域中,线性方程组的求解是必不可少的。
通过应用VRP-GMRES(m)迭代法,可以有效地解决这些问题,提高工作效率和精度。
此外,该方法还可以应用于图像处理、信号处理等领域中的线性系统求解问题。
五、VRP-GMRES(m)迭代法的优势1. 高精度:VRP-GMRES(m)迭代法具有较高的求解精度,可以有效地解决各种线性方程组求解问题。
2. 高效性:该方法能够快速地构造出一个与原系数矩阵A的Krylov子空间,提高了求解速度和效率。
《E-变换GMRES(m)算法的研究与应用》

《E-变换GMRES(m)算法的研究与应用》篇一一、引言在科学与工程计算领域,线性方程组的求解是一项重要任务。
GMRES(Generalized Minimum Residual)算法作为一种高效的迭代求解方法,被广泛应用于解决大型稀疏线性方程组。
然而,随着问题规模的增大和复杂性的提高,传统的GMRES算法在计算效率和稳定性方面面临挑战。
为此,本文提出了一种改进的E-变换GMRES(m)算法,以更好地满足实际应用的需求。
二、E-变换GMRES(m)算法原理1. 传统GMRES算法概述GMRES算法是一种基于Krylov子空间的迭代算法,通过构造一系列Krylov子空间来逼近线性方程组的解。
其基本思想是利用最小二乘原理在Krylov子空间中寻找最小残差向量,逐步逼近真实解。
2. E-变换GMRES(m)算法提出E-变换GMRES(m)算法是在传统GMRES算法的基础上,引入E-变换技术,以改善算法的收敛性和计算效率。
E-变换是一种基于矩阵分解的技术,通过对矩阵进行适当的分解和变换,可以有效地改善矩阵的性质,提高算法的求解速度和稳定性。
三、E-变换GMRES(m)算法实现1. 算法步骤E-变换GMRES(m)算法的实现过程主要包括以下几个步骤:首先,对给定的线性方程组进行E-变换;然后,利用GMRES算法在Krylov子空间中寻找最小残差向量;最后,通过迭代计算逐步逼近真实解。
2. 算法特点E-变换GMRES(m)算法具有以下特点:一是通过E-变换改善矩阵性质,提高算法的收敛速度;二是具有较好的数值稳定性,能够处理病态方程组;三是计算复杂度较低,适用于大规模问题。
四、E-变换GMRES(m)算法的应用1. 科学计算领域应用E-变换GMRES(m)算法在科学计算领域具有广泛的应用,如流体动力学、电磁场计算、量子力学等领域。
通过将该算法应用于这些领域的线性方程组求解问题,可以有效地提高计算效率和求解精度。
一种加权的Simpler GMRES算法的开题报告

一种加权的Simpler GMRES算法的开题报告1. 主题介绍在解决线性方程组的过程中,GMRES算法是一种有效的迭代求解方法,它可以在不需要预先知道矩阵的特征值和特征向量的情况下求解大型非对称矩阵的方程组。
但是,由于GMRES算法的迭代过程中需要存储整个Krylov子空间,在求解大型矩阵问题时会导致高存储和计算复杂度。
因此,一些研究者提出了一些基于GMRES算法的改进方法,如简化GMRES算法(Simpler GMRES)。
2. 研究目的本研究的目的是对Simpler GMRES算法进行研究和改进,以提高其求解大型非对称线性方程组的效率。
具体来说,本研究将探索一种加权的Simpler GMRES算法,该算法将引入权重参数来调整迭代过程中的矩阵向量乘积中的非线性部分和线性部分的权重,以减少存储和计算负担,并提高求解效率。
3. 研究内容a.GMRES算法的原理和缺点;b.Simpler GMRES算法的基本思想和算法流程;c.基于加权策略的Simpler GMRES算法的设计和实现;d.通过数值实验比较加权策略和传统方法的效果,并分析其优劣之处;e.进一步改进算法,提高求解效率。
4. 研究方法本文研究将采用数值实验的方法,以Matlab为平台,分别对加权策略和传统方法进行测试,比较其求解大型非对称线性方程组时的运算速度和精度。
通过不同的测试数据和参数设置,得出加权策略和传统方法的优劣效果和原因,并对算法进行改进和优化。
5. 参考文献(1)Saad Y. (2003). Iterative methods for sparse linear systems. Society for Industrial and Applied Mathematics Philadelphia.(2)Solomonik E., Demmel J., Tang W., et al. (2014). A simpler and more accurate sparse matrix vector multiply. Proc. 2014 IEEE International Conference on Cluster Computing (CLUSTER), Madrid, pp. 64-72.(3)Ubaru S., Tomov S., and Dongarra J. (2015). An experimental study of a simplified GMRES algorithm. SIAM Journal on Scientific Computing, vol. 37(4), pp. S126-S148.。
[2021]求解非对称线性方程组分裂算法完整版PPT
![[2021]求解非对称线性方程组分裂算法完整版PPT](https://img.taocdn.com/s3/m/2b1de1881eb91a37f0115c41.png)
n 100 200 400
600
800
1000
1600
IT 278 280 ቤተ መጻሕፍቲ ባይዱ90
289
295
279
292
CPU 0.1716 0.5460 1.5600 3.9312 7.1604 11.1853 46.7067
表 3:IT 和 CPU(取 10, 1.5)
n
100
200
400
600
IT 393 425 418
448
CPU 0.2496 0.9516 2.6520 5.9748
800 374 9.3601
1000 444 17.3317
1600 437 70.9181
谢 谢 大 家!
2、新分裂算法
H MN
明显地 产生迭代
迭代矩阵
P M S
Q N 1S
A PQ
Px k Qx k1 b
T P 1Q
(8) (9) (10) (11)
(12)
(13)
定理 1 设 H M N 是对称 P-正则分裂,则有
T max M 1N , 1
(14)
当 1 时, T 1.
求解非对称线称性矩方程阵组分T裂算M法 1N 为迭代矩阵。满足条件(5),对于对称正定矩阵、H-
求解非对称线性方程组分裂算法
求解非对称线性方程组分裂算法
求解非对称线矩性阵方程、组分M裂-算矩法阵有很好的结论。但是对于非对称矩阵,如何分裂或什
求解非对称线性方程组分裂算法
求解非对称线性方程组分裂算法
求求解解非 非对对称称线线么性性样方方程程分组组分分裂裂裂满算算法法足(5),没有结论。2001 年我给出一些初步结论,2003
《E-变换GMRES(m)算法的研究与应用》范文

《E-变换GMRES(m)算法的研究与应用》篇一一、引言随着科学技术的飞速发展,数值计算在众多领域中扮演着越来越重要的角色。
其中,GMRES算法(Generalized Minimum Residual Algorithm)因其对稀疏线性系统的有效求解而被广泛应用。
本文着重介绍一种经过优化的E-变换GMRES(m)算法,研究其理论基础、算法流程及在具体应用中的表现。
二、E-变换GMRES(m)算法理论基础GMRES算法是一种基于Arnoldi过程的迭代算法,用于求解线性方程组。
E-变换GMRES(m)算法则是在GMRES算法的基础上,引入了E-变换技术,以进一步提高算法的收敛速度和求解精度。
E-变换GMRES(m)算法的核心思想是在Arnoldi过程中引入一个E-变换矩阵,通过优化该矩阵的构造,使得算法在迭代过程中能够更好地逼近解空间。
这种优化可以显著提高算法的收敛速度和求解精度,特别是在处理大规模、高维度的线性系统时,其优势更为明显。
三、E-变换GMRES(m)算法流程E-变换GMRES(m)算法的流程主要包括以下几个步骤:1. 初始化:设定初始向量、迭代精度、最大迭代次数等参数,构建初始矩阵。
2. E-变换:根据预定的E-变换策略,对当前矩阵进行E-变换,得到新的矩阵。
3. Arnoldi过程:利用Arnoldi过程对新的矩阵进行迭代计算,得到一组正交向量。
4. 最小二乘问题求解:利用最小二乘原理,求解得到残差向量和迭代解。
5. 判断收敛:根据设定的迭代精度和最大迭代次数,判断是否达到收敛条件。
若未达到,则返回步骤2继续迭代;若达到收敛条件,则输出最终解。
四、E-变换GMRES(m)算法的应用E-变换GMRES(m)算法在众多领域中都有广泛的应用,如计算流体动力学、电磁场仿真、结构力学等。
以下以计算流体动力学为例,介绍E-变换GMRES(m)算法的应用。
在计算流体动力学中,往往需要求解复杂的流场方程,这些方程通常表现为大型稀疏线性系统。
解线性方程组的VRP-GMRES(m)迭代法

收稿日期:2021-02-01基金项目:晋中信息学院“线性代数”教学团队建设项目;晋中信息学院“概率论与数理统计”精品课程项目.作者简介:白雪婷,女,山西吕梁人,晋中信息学院讲师;杨琴乐,晋中信息学院(山西晋中030800).2021年第4期第42卷总第313期学报解线性方程组的VRP-GMRES (m )迭代法白雪婷,杨琴乐摘要:为更有效求解科学研究与工程计算中大规模线性方程组问题,该文提出一种变参数重启动GMRES (m )算法,即VRP-GMRES (m )算法,通过适当地变化GMRES (m )算法中的重启动参数m ,很好地解决了GMRES (m )算法在执行时因参数m 选择不当造成的迭代停滞问题.另外,利用Givens正交变换证明新算法不仅收敛,而且计算精度更高.数值算例表明,VRP-GMRES (m )算法可显著提高GMRES (m )算法的计算效率和计算精度,其优越性随着计算问题规模的增大而更加明显,具有广阔的工程应用前景.关键词:VRP-GMRES (m )算法;Givens 变换;变参数;收敛性;计算精度中图分类号:O29文献标志码:A文章编号:1008-7974(2021)04-0022-08DOI :10.13877/22-1284.2021.04.004应用科学、物理和工程领域许多问题可建立偏微分方程的数学模型,这些微分方程经过离散后一般都可归结为求解大型稀疏线性方程组Au =b ,A ∈R n ×n,u ,b ∈R n ,其中A 为非奇异矩阵.这类方程组的求解通常采用迭代法.目前,以Galerkin 原理为基础建立的广义极小残余GMRES (m )迭代法是求解此类方程组最有效的方法之一.因此,近年来GMRES (m )算法及其在其他领域的应用一直是人们研究的热点[1-4].实际计算表明,当系数矩阵A 是良态矩阵时,GMRES (m )算法及一些简单改进后的GMRES (m )算法便可有效地求解这些线性系统[5-6],但如果系数矩阵A 具有很强的病态性,则必须结合一些特定的预处理技术[7-10].不管是GMRES (m )算法还是预处理GMRES (m )算法,在实际执行这些算法时,参数m 一旦选定,在之后整个迭代过程当中将始终固定不变.所以参数m 的选择也是影响算法有效执行的关键因素之一.研究表明,m 取值较小时,有可能出现收敛慢甚至不收敛等现象,m 选择过大会造成存储空间过多的需求.因此,如何选择一个合适的参数m 一直困扰着众多学者,最近有不少学者试图通过变化GMRES(m)算法中的重启动参数m来克服这些困难.BAKE A H最初通过选择随机的参数m来改善GMRES(m)算法的收敛性,后来又根据两次迭代所得残余向量的范数之比来确定参数m的大小,但这也并不能保证算法的收敛性[11-12],PEAIRS L等则通过强化学习方法来决定参数m的取值,该方法进一步表明适当的参数m可以提高GMRES(m)算法的计算效率,但由于强化学习只是一种机器学习方法,因此存在一定局限性[13].1GMRES(m)算法基本理论1.1Galerkin原理任意给定向量u0∈R n,令u=u0+z,则方程组Au=b等价于Az=r0,(1)其中:r0=b-Au0是初始残余向量.给定一个参数m>0,设R n中两个m维子空间K m和Lm分别为:Km=span {} r0,Ar0,⋯,A m-1r0,Lm=A K m=span {} Ar0,A2r0,⋯,A m r0,且v1,v2,⋯,v m和w1,w2,⋯,w m分别为子空间Km和L m的基.令V m={}v i m i=1,W m={}w i m i=1.求解式(1)的Galerkin原理为:给定一个m>0,寻找近似解z m=V m y m∈K m,使(r0-Az m)⊥L m,即()r0-AV m y m⊥L m,该式也可表示为()r0-AV m y m,ωi=0,y m∈R m.1.2Arnoldi过程及其性质Arnoldi过程具体如下(文中若不作特殊说明, ⋅均表示向量的二范数):①对m>0和初始向量v0∈R n.计算v1= r0 r0,其中r0=b-Au0;②对于k=1,2,⋯,m,计算h i,k=()Av k,v i,-vk+1=Av k-∑i=1k h i,k v i,h k+1,k= -v k+1,要求-vk+1⊥v i()i=1,2,⋯,k;③如果h k+1,k=0,停止;否则v k+1= -vk+1h k+1,k.Arnoldi过程有如下重要性质.定理1[14]在Arnoldi过程中,令V m+1= (V m|v m+1),-H m=éëêùûúH mh m+1,m e T m,则如下关系成立.AV m=V m H m+h m+1,m v m+1e T m,AV m=V m+1-H m,V T m+1V m+1=I,(2)其中:H m=(h ij)m是上海森伯格矩阵,e T m= (0,0,⋯,1)∈R m且I是一个m+1阶单位矩阵.1.3GMRES算法定理2[15]令A为n×n方阵并假定L=AK,u=u0+z=u0+V m y,则由Galerkin原理得到的近似解Z m将使残余向量r0-Az在Krylov 子空间K m中达到最小,反之亦然,并且有r=b-Au=r0-Az=βe1--H m y,(3)其中:β= r0,e1=()1,0,⋯,0T∈R m+1.这个定理表明,在K m中极小化残余向量r0-Az2等价于在R m中极小化βe1--H m y. GMRES(m)算法基本思想就是固定重启动参数m,通过求解最小二乘问题miny∈R mβe1--H m y,迭代计算求得z m,使得 r m=r0-Az m<τ,GMRES(m)算法详细步骤如下:①给定误差上界τ>0,给定一个合适的m()m<n,取u0∈R n,计算r0=b-Au0以及β= r0;②完成Arnoldi过程得{}v i m i=1和-H m;③求解最小二乘问题min y∈R mβe1--H m y,得y m,这里e1=()1,0,⋯,0T∈R m+1;白雪婷,等:解线性方程组的VRP-GMRES(m)迭代法2021年第4期学报④计算z m =V m y m .若 r m= r-Az m<τ,迭代终止;否则,令u m =u 0+z m ,u 0=u m ,转向步骤②.在GMRES (m )算法中,并非任意选取m 都能使其收敛.事实上,适当地变化m 可以有效地改善GMRES (m )的收敛性,且在一定程度上可以避免收敛慢甚至不收敛等现象.2VRP-GMRES (m )算法2.1VRP-GMRES (m )算法适当变化重启动参数m ,通过迭代使得残余向量 r m=r-Az m<τ,具体过程为:Step1:选择一个较小的初始正整数m ()m ≪n ,给定误差上界τ>0;Step2:执行Arnoldi 过程,得到{}v i m i =1和-H m ;Step3:求解如下最小二乘问题min y ∈R mβe 1--H m y ,(4)可得y m ,计算近似解z m =V m y m ,且令u m =u 0+z m ;Step4:如果 r m=r-Az m<τ,迭代停止,输出u =u m .否则,转向Step5;Step5:令u 0=u m ,m =m +1()m ≤n 转至Step2.实际执行VRP-GMRES (m )算法时,可能出现收敛慢甚至不收敛等现象(虽然这种情况较少发生).所以,为防止参数m 过大而造成存储空间过多的需求,可以先执行若干次VRP-GMRES (m )算法,待m 增加到一定程度且残量范数减小到某一适当值时,再固定m循环迭代,即执行GMRES (m )算法.2.2收敛分析定义1[15]设G i =éëêêêêêêêêêêêêêêêêùûúúúúúúúúúúúúúúúú1⋱1c i s i -s ic i1⋱1i 行i +1行,(5)其中:实数c 和s 满足c 2i +s 2i =1,称G i 为平面旋转矩阵,也称为Givens (吉文斯)变换矩阵.定理3在VRP-GMRES (m )算法中,令E = r m ,-E =r m +1,则-E <E .证明在VRP-GMRES (m )算法中,令式(5)中G i ∈R ()m +1×()m +1,s i =h ()i -1i +1,i()h ()i -1ii2+()h ()i -1i +1,i 2,c i =h ()i -1ii ()h (i -1)ii 2+()h ()i -1i +1,i 2,其中:i =1,2,⋯,m ,h ()i -1i i 和h ()i -1i +1,i 是-H m 经i -1次Givens 正交变换后对角线及次对角线元素.令Q m =G m G m -1⋯G 1,对式(4)中-H m 和βe 1作正交变换,则可得Q m -H m =éëêùûúR m O =-R m ,其中:R m 是m 阶可逆上三角方阵.又Q m ()βe 1=()g Tm ,αT =-g m ,e 1=(1,0,⋯,)0T ∈R m +1,于是min y ∈R mβe 1--H m y=min y ∈R mQ m ()βe 1--H m y =min y ∈R m-g m --R m y =min y ∈Rméëêùûúg m α-éëêùûúR m 0y .解R m y =g m ,得y m .此时E = r m= r-Az m= r-AV m y m=||α.当参数m 变为m +1时,由Arnoldi 过程,有-H m +1=éëêêêêêêùûúúúúúúh 1,m +1-H m⋮h m +1,m +1Oh m +2,m +1.令式(5)中G i ∈R()m +2×()m +2,且s i =h ()i -1i +1,i()h ()i -1ii2+()h ()i -1i +1,i 2,c i =h ()i -1ii ()h (i -1)ii 2+()h ()i -1i +1,i 2,其中:i =1,2,⋯,m +1,取Q m +1=G m +1G m ⋯G 1,对式(4)中-H m 和βe 1作正交变换,则Q m +1-H m +1=éëêùûúR m +1O =-R m +1,其中:R m +1是m +1阶可逆上三角方阵,Q m +1()βe 1=()g Tm +1,-αT =-g m +1,其中:e 1=()1,0,⋯,0T∈R m +2,g m +1∈R m +1.于是miny ∈R m +1βe 1--H m +1y =miny ∈Rm +1Q m +1()βe1--H m +1y =min y∈Rm +1-g m +1--R m +1y =min y ∈Rm +1éëêùûúg m +1-α-éëêùûúR m +10y ,解R m +1y =g m +1,得y m +1.此时Eˉ= r m +1=r 0-Az m +1= r-AV m +1y m +1=||αˉ=||s m +1α<||α=E .(6)由定理3知,VRP-GMRES (m )算法不仅收敛,而且比GMRES (m )算法计算精度更高.3数值实验本节通过两个不同类型的数值算例说明VRP-GMRES (m )算法的有效性和可行性,分析比较GMRES (m )和VRP-GMRES (m )两种算法的数值结果.在以下算例中均选取u 0=()0,0,⋯,0T∈R ()n -1作为初始向量, r m =r-Az m <τ=1e -8作为停止迭代标准.算例1考虑如下一维波动方程ìíîïïïïïïïïu tt =4u xx ,0<x <1,0<t <0.5;u ()0,t =u ()1,t =0,0≤t ≤0.5;u ()x ,0=f ()x =sin ()πx +sin ()2πx ,0≤x ≤1;u t()x ,0=g ()x =0,0≤x ≤1.(7)该方程精确解为:u ()x ,t =sin ()πx cos ()2πt +sin ()2πx cos ()4πt ,其中:u ()x ,t 表示振弦,是对特定位置x 和特定时间t 的波强度的一个测量,如图1(a )所示.用中心差分格式离散后可得Au =b ,A ∈R ()n -1×()n -1,u ,b ∈R n -1,(8)其中:n 表示x 方向和t 方向网格数.用VRP-GMRES (m )算法求解式(8),计算结果如图1(b )所示.由图1知,式(7)的数值解和精确解是一致的,这也说明VRP-GMRES (m )算法的正确性.(a)精确解(b)数值解图1振幅分布(n =10,m =7)白雪婷,等:解线性方程组的VRP-GMRES (m )迭代法2021年第4期学报分别用GMRES (m )算法和VRP-GMRES (m )算法求解式(8),当n =10,m =7时,cond ()A =56.5079.GMRES (m )算法循环迭代9次后出现迭代停滞,此时残量范数为1.4099,但对于VRP-GMRES (m )算法,迭代3次后残量范数已达到1.4230e-014.迭代过程各节点绝对误差大小的比较如图2所示.GMRES (m )算法VRP-GMRES (m )算法(a)迭代2次后绝对误差GMRES (m )算法VRP-GMRES (m )算法(b)迭代3次后绝对误差图2迭代过程中各节点绝对误差大小的比较由图2可知,当迭代次数相同时,用VRP-GMRES (m )算法比用GMRES (m )算法得到的计算结果的绝对误差要小得多,而且随着迭代次数的增加,用VRP-GMRES (m )算法计算产生的绝对误差减少得更快.这说明本文算法不仅具有更高的计算精度,而且能快速收敛.当参数m 分别取不同值时,对两种算法的计算结果进行比较如表1~表4所示.表1~表4分别给出两种算法的迭代次数、运行时间、计算精度和收敛速度比较.从表1~表4可知,文中提出的算法收敛快,稳定性好,计算精度高,运行时间短.参数m 的选择对GMRES (m )算法至关重要,参数m 选择不当会导致算法失败,而参数m 的选择对VRP-GMRES (m )算法的执行基本无任何影响.这表明,GMRES (m )算法对参数m 的选择相当敏感,m 的微小变化可能会导致GMRES (m )算法出现迭代停滞等现象,而本文提出的VRP-GMRES (m )算法中参数m 是变化的,在一定程度上降低了GMRES (m )算法对参数m 的敏感度,这也是VRP-GMRES (m )算法的优点之一.表1两种算法迭代次数比较n (网格数)102030405060m (重启动参数)81929395485两种算法迭代次数GMRES (m )算法11331579164VRP-GMRES (m )算法223121414表2两种算法运行时间比较n (网格数)102030405060m (重启动参数)81929395485两种算法运行时间/s GMRES (m )算法0.0294150.0289820.0921441.38182523.539635157.340531VRP-GMRES (m )算法0.0182540.0134420.0861720.8471084.68302614.662790表3两种算法计算精度比较n (网格数)102030405060m (重启动参数)81929395485两种算法计算精度GMRES (m )算法2.1069e-0091.1751e-0152.0093e-0122.4647e-0093.3092e-0112.0593e-009VRP-GMRES (m )算法2.9235e-0141.1984e-0155.4751e-0142.1327e-0102.1327e-0106.5913e-013表4两种算法收敛性比较n(网格数)102030405060m (重启动参数)81929395485两种算法收敛性GMRES (m )算法停滞停滞停滞停滞停滞停滞VRP-GMRES (m )算法收敛收敛收敛收敛收敛收敛事实上,当网格数n 增大时,系数矩阵A 的条件数也不断增大,当n =59时,A 的条件数已达到2.1098e+003,方程组(8)呈现严重的病态性.由表1知,此时即使参数m 取值很大,GMRES (m )算法的收敛速度也不是很快,而且在达到给定误差时,GMRES (m )算法的迭代次数是VRP-GMRES (m )算法的11.7倍,运行时间是其10.7倍.这表明,随着计算规模地增大,VRP-GMRES (m )算法比GMRES (m )算法更有效,有更广阔的前景.算例2考虑如下二维泊松方程{u xx +u yy =2()3x +x 2+y 2,()x ,y ∈Ω=[]0,1×[]0,1;u ()x ,y =x 2()x +y 2+2,()x ,y ∈∂Ω.(9)该方程精确解为u ()x ,y =x 2()x +y 2+2,其中:u ()x ,y 是温度分布函数,温度分布如图3(a )所示.将式(9)所示的求解区域分别沿x 方向和y 方向n 等分,可得Au =b ,A ∈R ()n -1×()n -1,u ,b ∈R n -1.(10)取n =40,m =10,用VRP-GMRES (m )求解式(10)时,各节点处的温度分布如图3(b )所示.由图3可知,数值解和精确解是一致的.(a)精确解(b)数值解图3温度分布(n =40,m =10)当m =10时,随着计算规模不断增大,VRP-GMRES (m )算法所需迭代次数变化较小且所需的迭代次数要比GMRES (m )少很多,如图4(a )所示,说明VRP-GMRES (m )算法有更高的计算效率,同时,VRP-GMRES (m )算法还有更高的精度,如图4(b )所示.另外,实际执行VRP-GMRES (m )算法时,虽然每次迭代所耗时可能比GMRES (m )算法长,但是由于VRP-GMRES (m )算法收敛速度很快,所以当残量范数达到给定误差时,如表5所示,本文提出的VRP-GMRES (m )算法总的运行时间要比GMRES (m )算法少很多.白雪婷,等:解线性方程组的VRP-GMRES (m )迭代法2021年第4期学报(a)计算效率比较(b)计算精度比较图4不同网格下两种算法计算效率和计算精度比较(m =10)表5不同网格下两种算法运行时间比较n (网格数)405060708090m(重启动参数)101010101010两种算法运行时间/s GMRES (m )算法1.5808475.70255516.96530643.204335100.077638189.671624VRP-GMRES (m )算法0.8298662.4452352.44523514.07231827.73167451.9084184结语文中提出一种求解线性方程组的VRP-GMRES (m )算法,理论证明新算法收敛且计算精度更高.数值试验结果表明本文提出的VRP-GMRES (m )算法不仅有更高的计算效率和计算精度,而且有更好的稳定性.新算法适合用来求解由科学研究和工程问题得到的大型线性方程组.参考文献:[1]PHILIPPEON B ,REICHEL L.The generation of Krylov subspace bass [J ].Appl.Numer.Math.,2012,62:1171-1186.[2]罗东明,陈平剑,吴希明.GMRES 算法在悬停旋翼数值模拟中的应用[J ].空气动力学报,2012,30(4):471-476.[3]戴愚志,宋竞正,任慧龙.GMRES 方法在悬停旋翼数值模拟中的应用[J ].海洋工程,2003,21(4):15-22.[4]PU B Y ,HUANG Y Z ,WEN C.A Preconditionedand Extrapolation-accelerated GMRES Method for Page Rank [J ].Appl Math Lett ,2014,37:95-100.[5]SAAD Y ,SCHULTZ M H.GMRES :A General⁃ized Minimal Residual Algorithm for Solving Nonsymmet⁃ric Linear Systems [J ].SIAM J Sci Comput ,1986,7(3):856-869.[6]AYACHOUR E H.A Fast Implementation forGMRES Method [J ].Comput Appl Math ,2003,159:269-283.[7]JOSE E P ,ALEX A P.Making use of BDE-GMRESmethods for solving short and long-term dynamics in power systems [J ].Elec Power Energy Sys ,2013,45:293-302.[8]YIN J F ,KEN H.Preconditioned GMRES Meth⁃ods with Incomplete Givens Orthogonalization Method for Lagre Sparse Least-squares Problems [J ].Compu ApplMath ,2009,226:177-186.[9]LIN F R ,YANG S W ,JIN X Q.PreconditionedIterative Methods for Fractional Diffusion Equation [J ].J Comput Phys ,2014,256:109-117.[10]LIANG Y ,SZULARZ M ,YANG L T.Finite-ele⁃ment-wise Domain Decomposition Iterative Solvers with Polynomial Preconditioning [J ].Math Comput Mod ,2013,58:421-437.[11]BAKE A H.On Improving the Performance ofthe Linear Solver Restarted Gmres [D ].Boulder :University of Colorado at Boulder ,2003:20-25.[12]BAKER A H ,JESSUP E R ,KOLEV T V.ASimple Strategy for Varying the Restart Parameter inGMRES(m)[J].J Comput Appl Math,2009,230:751-761.[13]PEAIRS L,CHEN T ing Reinforcement Learning to Vary the m in GMRES(m)[J].Procedia Com⁃puter Science,2011(4):2257-2266.[14]ESSAI A.Weighted FOM and GMRES for Solv⁃ing Nonsymmetric Linear Systems[J].Numer Algorithms,1998,18:277-299.[15]蔡大用,白峰杉.高等数值分析[M].北京:清华大学出版社,1997:74-75.(责任编辑:陈衍峰)A Kind of VRP-GMRES(m)Iteration Algorithm for Linear EquationsBAI Xue-ting,YANG Qin-le(Jinzhong University of Information,Jinzhong030800,China)Abstract:To solve large scale linear equations in scientific computations and engineering applications eff⁃ciently,an iterative method named VRP-GMRES(m)algorithm is proved.By properly changing a variable restart parameter for the GMRES(m)algorithm,the iteration stagnation problem resulted from improper selection of the parameter is resolved efficiently.Givens orthogonal transformation is used to prove that the proposed algorithm is not only fast convergent but also is highly accurate.Numerical experiments show that the new algorithm can significantly improve the computational efficiency and precision.Its superiori⁃ties will be much more remarkable when it is used to solve larger scale problems.So it has extensive pros⁃pect in scientific and engineering computing.Keywords:VRP-GMRES(m)algorithm;Givens transformation;variable parameter;convergence;compu⁃tational accuracy白雪婷,等:解线性方程组的VRP-GMRES(m)迭代法。
《E-变换GMRES(m)算法的研究与应用》范文

《E-变换GMRES(m)算法的研究与应用》篇一一、引言在现代科学计算领域中,大规模线性系统的求解已成为一种重要的技术。
针对这种大规模系统的求解问题,Krylov子空间方法被广泛地应用。
其中,GMRES(广义最小残差)算法以其出色的数值稳定性和收敛性,成为了最受欢迎的算法之一。
而本文的主要研究对象则是经过优化的E-变换GMRES(m)算法。
该算法是在传统的GMRES算法基础上进行优化改进的,用于更有效地处理高阶或者高复杂度的线性系统问题。
二、E-变换GMRES(m)算法的原理E-变换GMRES(m)算法是一种基于Krylov子空间的迭代方法,主要目的是通过近似的方式解决大型线性系统的解。
它的主要原理是将待解决的线性系统通过一定的矩阵运算转化到一个更小的Krylov子空间内,并在该子空间中迭代寻找近似的解。
与传统GMRES算法相比,E-变换GMRES(m)通过特定的E-变换优化了子空间的构建和迭代过程,从而提高了解的准确性和计算效率。
三、E-变换GMRES(m)算法的特点与优势1. 高精确性:由于引入了E-变换,E-变换GMRES(m)算法在处理某些特定问题时,可以获得比传统GMRES更高的精度和更好的稳定性。
2. 快速收敛性:通过对Krylov子空间进行高效的优化,该算法能够快速地收敛到线性系统的解。
3. 良好的扩展性:E-变换GMRES(m)算法的参数m可以根据实际问题的需要进行调整,使其具有良好的灵活性和扩展性。
四、E-变换GMRES(m)算法的应用E-变换GMRES(m)算法在许多领域都有广泛的应用,如计算流体动力学、电磁场计算、量子物理模拟等。
在计算流体动力学中,大量的偏微分方程需要求解,E-变换GMRES(m)可以有效地解决这些问题。
在电磁场计算中,Maxwell方程组的求解需要极高的精度和稳定性,而E-变换GMRES(m)则能满足这些要求。
此外,该算法在处理大规模稀疏矩阵问题时也表现出色。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
求解非对称线性方程组的积多项式预处理GMRES算法孙春晓;徐乐顺【摘要】When the number of condition of coefficient matrix was too large, the pretreatment method was usually to be used to solve the nonsymmetrical linear equation set. Based on the complementary convergence behavior of GMRES algorithm, an effective product polynomial pretreatment factor was constructed. Under certain condition, the coefficient matrix was pretreated with the product polynomial and the number of spectral condition could be reduced remarkably so that the convergence of the residual would be significantly accelerated. Numerical experiment showed that the new algorithm would have a distinct advantage in connection with residual convergence.%当系数矩阵的条件数过大时,求解非对称线性方程组通常采用预处理方法.根据GMRES算法的补足收敛特性,构造一种有效的积多项式预处理因子.在一定条件下,应用积多项式对系数矩阵进行预处理,可以显著降低谱条件数,从而加快残量的收敛速度.数值试验表明,新算法在残量收敛方面具有明显的优势.【期刊名称】《兰州理工大学学报》【年(卷),期】2012(038)005【总页数】4页(P145-148)【关键词】多项式预处理;Krylov子空间;迭代法;GMRES【作者】孙春晓;徐乐顺【作者单位】西北农林科技大学理学院,陕西杨凌712100;西北农林科技大学理学院,陕西杨凌712100【正文语种】中文【中图分类】O241.6很多科学计算问题经过离散可归结为求解线性方程组式中:A∈RN×N是非奇异的.求解线性方程组(1)的很多迭代法可归结于多项式法,即满足:这里xn(n≥0)为第n步迭代解,rn=bn-Axn为其对应的迭代残量.等价地式中:pn(z)=1-zqn-1(z)称为残量多项式.或有其中,κn(r0,A)=span是对应于r0,A 的krylov子空间.容易证明,此时残量rn满足:式中:‖·‖为RN上的Euclidean范数.由此定义的迭代方法称为最小残量法,如GMRES算法.由最小残量所产生的残量按范数‖·‖是非增的,且当n=N 时得到方程组(1)的精确解,因此此类方法总是收敛的.但在实际应用中,由于矩阵的阶数可达106以上,执行整体的最小残量法所需的存储量和计算量会随着迭代步数的增加而变得不可接受[1].Saad采用循环 GMRES(m)算法,但此算法会失去超线性收敛性,产生停滞[2].N.M.Nachtigal等提出混合GMRES算法,但此算法的收敛性从理论上得不到保证,而且在实际应用中,其Richardson迭代可能收敛得很慢甚至发散[3].为了提高Krylov子空间的稳定性,实际求解时通常采用预处理方法[4-5].本文采用多项式预处理 GMRES(m)方法,找到有效的低阶多项式s(x),这样迭代解被应用到s(A)Ax=s(A)b中.这种预处理方法在解决某些大型稀疏线性方程组的系数矩阵A的条件数过大时是很有效的.本文利用GMRES(m)算法的补足收敛性质构造预处理多项式.由此给出一种新的算法,称为积多项式预处理GMRES算法(PP-GMRES).1 预处理多项式的构造1.1 GMRES(m)算法的补足收敛性质定义GMRES(m)算法第n次循环对应的双纽线为其中设λ是A 的任一特征值,若λ包含在Ln中,则|pn,m(λ)|<τn.|pn,m (λ)|取值越小,迭代残量在这一特征向量方向有明显下降.下面用数值实验来说明GMRES(m)算法的补足收敛性质.例1 考虑线性方程组Ax=b.其中取δ=0.05,初始迭代向量x0=[0,0,0,0]T.记 A 的谱σ (A ) = (λ1,λ2,λ3,λ4)=(0.5,1.0,1.5,2.0).GMRES (3)算法前两次循环所对应的双纽线如图1所示.重新开始GMRES(m)算法的不同迭代循环所产生的迭代残量偏向于不同的特征向量,使其所形成的残量多项式在收敛方向上相互补足,从而残量的收敛达到一种平衡.以相继迭代循环的残量多项式作乘积,形成积多项式,这样能够保证残量在所有特征向量方向上都有均匀、明显的下降.取前两次循环的残量多项式作乘积π2,3(z)=p1,3(z)p2,3(z),做双纽线图1 例1GMRES(3)前两次循环的双纽线;特征值:·Fig.1 Lemniscates of the first two cycles and their eigenvalues of GMRES(3)for example 1;eigenvalues:·图2中所有特征值包含在双纽线L中,π2,3(z)在矩阵A的谱上得到了整体的下降.图2 GMRES(3)前两次循环对应的积多项式的双纽线;特征值:·Fig.2 Lemniscates of a product polynomial corresponding to the first two cycles and their eigenvalues of GMRES(3);eigenvalues:·1.2 理论基础引理1[6]设方程组Ax=b的系数矩阵A是可对角化的且其谱分解为其中,λi(i=1,2,…,N)都是正实数.不妨设λ1≤λ2≤…≤λN,则给定初始估计x0,执行m 步GMRES算法,有其中是A的条件数.下面利用积多项式构造多项式预处理因子s(z),使得κ(s(A)A)尽可能小.由于式中由此可得定理1 设方程组(1)的系数矩阵A可对角化,其特征值λ1,λ2,…,λN 均为实的.若则有证明由于s(A)A=IN-πn,m(A),A 可对角化,则s(A)A也可对角化.λi 为A 的任一特征值,故1-πn,m(λi)为s(A)A的任一特征值.又且πn,m(λi)均为实的.由矩阵条件数的定义[7]可知,矩阵的任何一种条件数都大于等于1.根据定理1,若τ足够小,预处理矩阵s(A)A的条件数接近于1.这样,对预处理方程组s(A)A=s(A)b执行GMRES算法将会得到较好的收敛效果.而适当的选取积多项式πn,m(z),可使其在矩阵A 的谱上整体下降[8-9],即τ≪1.2 积多项式预处理GMRES算法根据上面的分析,给出积多项式预处理GMRES算法(PP-GMRES).选取初始迭代向量x0.1)执行GMRES(k)算法n次,得到残量多项式序列;构造积多项式2)由πn,k(z)=1-s(z)z 得到预处理多项式s(z).3)对s(A)Ax=s(A)b执行循环GMRES(m)算法,直至收敛.对新算法的几点说明:1)数k和参数m 可以不一致,这样使得算法很灵活.2)GMRES(m)循环在第m 步得到的近似解xm,是在预处理krylov子空间上使得残量范数最小[10].3)根据残量多项式的互补性理论[6]及数值试验,通常取n=2,即如果实际执行效果不太好,可适当放大n.4)计算单次残量多项式的系数有两种方法.一是文献[5]的迭代公式,二是通过求解特征矩阵的特征多项式来求解残量多项式[11-12].3 数值实验本节给出三个数值试验比较PP-GMRES(m),PolyGMRES(m)[13],HGMRES(m),GMRES(m)四种算法的执行结果.为了使数值结果便于重复,这里具体给出各参数的值,而不考虑算法的执行细节.选取右端项b=(1,1,…,1)T,初始估计x0=(0,0,…,0)T.例2 同文献[5]中例1,选取A为三对角Toeplitz矩阵由图3可以看出,四种算法都使迭代残量下降.比较起来,PP-GMRES(5)算法下降最快,说明积多项式π2,5(z)在矩阵A 的谱上的值比较小,使得预处理后的系数矩阵的条件数较小,从而加速了收敛.例3 选取A为Grear矩阵图3 例2收敛曲线:工作量和残量对数的范数Fig.3 Convergence curve of log.residual norm vs work for example 2由于该矩阵伪谱的凸包中含零点,在这种情况chebyshev类型或其他一些混合算法将导致失败.由图4可以看出GMRES算法失败,但PP-GMRES算法有很满意的收敛效果.图4 例3收敛曲线:工作量和残量对数的范数Fig.4 Convergence curve of log.residual norm vs work for example 3参考文献:[1]JOUBERT W D,VARGA R S.A hybrid Arnoldi-Faber iterative method for nonsymmetric linear systems [J].Part Ⅰ:Theory,PartⅡ:Parallel implementation.Internat J Comput Math,1992,44(1):243-267.[2]SAAD Y,SCHULTZ M H.GMRES:A generalized minimal residual algorithm for solving nonsymmetric linear systems[J].SIAM J Sci Stat Comput,1986,7:856-869.[3]YIN Junfeng.A class of preconditions based on matrix splitting for nonsymmetric linear systems [J].Applied Mathematics and Computation,2010,16:1694-706.[4]YIN Junfeng,KEN Hayam.Preconditioned GMRES method with incomplete orthogonalization method for large sparse least-squares problems[J].Journal of Computational and Applied Mathematics,2009,26:177-186.[5]NACHTIGAL N M,REICHEL L,TREFETHEN L N.A hybrid GMRES algorithm for nonsymmetric linear systems[J].SIAm J Matrix Anal Appl,1992,13(3):796-825.[6]MORGAN R B.A restarted GMRES method augmented with eigenvectors[J].SIAM J Matrix Anal Appl,1995,16:1112-1135.[7]李庆杨,王能超,易大义.数值分析[M].武汉:华中科技出版社,2002:206-207.[8]ZHONG B J,MORGAN R plementary cycles of restarted GMRES[J].Numer Linear Algebra Appl,2008,15:559-571.[9]ZHONG B J.A product hybrid GMRES algorithm for nonsymmetric linear systems [J].Journal of Computational Mathematics,2005,23:82-92.[10]SAAD Y.A flexible inner-outer preconditioned GMRES algorithm [J].SIAM J Sci Comput,1993,14:461-469.[11]钟宝江.一种灵活的混合GMRES算法[J].高等学校计算数学学报,2001,3:261-272.[12]NAJAFI H S,MOGHADDEN H Z.A new computational GMRES method[J].Applied Mathematics and Computation,2008,199:527-534.[13]全忠,项淑晃.基于GMRES的多项式预处理广义极小残差法[J].计算数学,2006,4:365-376.。