袁 翔
(温州大学数理学院,浙江温州 325035)
本文主要考虑复对称线性系统问题
其中A=W+iT是一个非奇异复对称矩阵,即A∈Cn×n,W和T都是n阶实对称矩阵,x,b∈Cn×1,为虚数单位.这种形式的复对称线性系统广泛应用于科学计算和工程应用中的许多实际问题,例如电磁学(麦斯威尔方程)、波传播(Helmholtz 方程)、量子力学(Schrodinger方程)、分子散射、结构动力学(机械系统的频率响应分析)、电路分析和量子色动力学(QCD框架)扩散光学层析、高速列车振动分析等,复对称系统也可能从某些移位和逆特征值算法的使用中产生,关于更多细节可以参见文献[1-5].
由于复对称线性系统的普遍存在和意义,近年来学者们对研究问题(1)的兴趣激增,针对这类线性系统提出了许多求解技术.基于(1)式中的A的厄尔米特和斜厄尔米特(Hermitian and Skew-Hermitian Splitting,HSS)分裂:A=H+S,其中,Bai 等人在文献[6]中最早建立HSS 迭代法,此处矩阵右上角的H 表示矩阵A的共轭转置(下文对某个向量和矩阵同理),再记表示对任意的矩阵B和C有B−C为对称正定矩阵(B−C为对称半正定矩阵).然而在HSS 迭代法的每个步骤中,都需要求解一个偏移的斜厄尔米特线性系统,为了克服这一困难,Bai 等人在文献[7]中巧妙地设计了一种修正的HSS(Modified Hermitian and Skew-Hermitian Splitting,MHSS)迭代法;并在文献[8]中提出了预处理MHSS(Preconditioned Modified Hermitian and Skew-Hermitian Splitting,PMHSS)迭代法求解线性系统(1),并证明了此方法是无条件收敛的.PMHSS 迭代法的优良性,引起了研究者广泛关注,并得到了一些改进和推广的版本.Dehghan 等人[9]通过引入一个附加参数,提出了广义的PMHSS(Generalied Preconditioned Modified Hermitian and Skew-Hermitian Splitting,GPMHSS)迭代法.之后Li 等人[10]提出了一种不平衡的PMHSS(Lopsided Preconditioned Modified Hermitian and Skew-Hermitian Splitting,LPMHSS)迭代法,指出当系数矩阵的实部为主导时,其性能优于PMHSS迭代法.除上述方法之外,HSS 和MHSS 方法还有其他很有意义的变体,详见文献[11-12].
复对称线性系统(1)常被看作一种特殊的广义鞍点问题,事实上,如果令x=x1+ix2和b=b1+ib2,则复对称系统(1)可转化为下列块2×2 实值结构化线性系统:
其中 Ξ ∈R2n×2n是非对称不定的,且x1,x2,b1,b2∈Rn×1.对于像系统(2)这种鞍点问题,Bai等人在文献[13]中建立了广义逐次超松弛(Generalized Successive Overrelaxation,GSOR)迭代法.之后,Bai 等人在文献[14]中提出了参数化非精确Uzawa(Parameterized Inexact Uzawa,PIU)迭代法,这在一定基础上推广了GSOR 迭代法.后来,Salkuyeh 等人基于文献[13]中的方法在文献[15]中定义了求解线性系统(2)的GSOR 迭代法.为了进一步提高GSOR 迭代法的效率,Hezeari等人[16]构造出预处理GSOR(Preconditioned Generalized Successive Overrelaxation,PGSOR)迭代法,得出该方法的最优收敛因子小于GSOR 迭代法的最优收敛因子.Li 等人[17]推导出一种新的对称块三角分裂(Symmetric Block Triangular Splitting,SBTS)迭代法.随后,Zhang 等人[2]提出了预处理SBTS(Preconditioned Symmetric Block Triangular Splitting,PSBTS)迭代法,证明了在恰当的条件下,PSBTS 迭代优于SBTS 迭代法.
为了有效解决复对称系统(1)或者块2×2 实值结构化线性系统(2),文献[2]通过添加预处理子先预处理原系统,然后再按照文献[17]中SBTS 迭代法进行分裂,得到含两个参数的迭代法,即PSBTS 迭代法,并对其进行谱分析,最后用数值实验验证了PSBTS 较SBTS 和PGSOR 迭代法更快.本文受这种双参数加速迭代算法的收敛性态的启示,在文献[17]的SBTS 迭代法基础上通过增加一个参数,建立含双参数的SBTS(Double-Parameter Symmetric Block Triangular Splitting,DSBTS)迭代法,从而更有效地解决线性系统问题(1)或(2).
考虑W≻ 0,,当且仅当W与T的零空间不相交,即,Ker(W) ∩Ker(T)={0},其中Ker(⋅)表示相应矩阵的零空间(下同),线性系统(2)中的系数矩阵Ξ 是非奇异的.对系数矩阵Ξ 做如下分裂:
其中α,β∈ (0,∞).利用分裂(3)式和(4)式可以构造出 DSBTS 迭代方法,即令为给定的初始向量,对于k= 0,1,2,…,有
因为W ≻ 0,α,β∈ (0,∞),所以(6)式中的四个子线性系统都是对称正定的.因此数值实验中可用乔里斯基(Cholesky)分解并采用共轭梯度法解决,以此加快算法运行速度.
以下讨论DSBTS 迭代法收敛的收敛理论和使迭代矩阵的谱半径最小的仿真参数α*和β*的选择方式(可用数值实验模拟取值),下文中的σ(⋅)表示某矩阵的谱集,ρ(⋅)表示某矩阵的谱半径.
引理1[16]已知n阶实矩阵W≻ 0,T对称,则矩阵S=W−1T的所有特征值都是实的,且S相似于对角矩阵;若,则S=W−1T的所有特征值都是非负的.
由引理1,推导出如下关于DSBTS 迭代法的迭代矩阵的特征值分布情况和其收敛性分析.
注2 由(7)式和(12)式知,当α=β时,得到SBTS 迭代法的收敛范围
和相应的迭代矩阵的谱半径
其中假设Γα为SBTS 迭代法的迭代矩阵.
由(11)―(12)式、(16)―(17)式知,要比较DSBTS 迭代法与SBTS 迭代法的收敛速度,就要比较二者的收敛因子即迭代矩阵的谱半径大小.由(12)式和(17)式知只要选取合适的α和β,使得在(11)式和(16)式中选取的α和β满足,也即满足<1且α≤β或者1<α且β≤α时,再在此范围内用Matlab 模拟选取最合适的仿真参数α*和β*,便有.因此,由“迭代矩阵的谱半径越小,迭代法收敛得越快”之原理得DSBTS 迭代法较SBTS 迭代法收敛得更快.
注3 当α=β时,ρ(Γα,β) =ρ(Γα),即DSBTS 迭代法退化成SBTS 迭代法,也即DSBTS迭代法是SBTS 迭代法的推广形式之一.
从上面的理论分析可知,前者相对于后者,扩大了迭代法的收敛范围,这一点可以从(11)式、(16)式以及注1 中的(15)式得到证明.通过注2 知当选取恰当的参数时,后者还缩小了迭代矩阵的谱半径.由(12)式知当µmax=0时,只要使取自于收敛范围(11)式里的α和β满足(α− 1)(β− 1)=0就可使得DSBTS 迭代法拥有最快的收敛速度,即此时ρ(Γα,β)=0.下述,不失一般性,我们都假设µmax≠ 0.
通过一些数值实验来说明DSBTS 迭代法求解复对称系统(1)的有效性,所有数值实验将利用Matlab(R2014a)解决.
由此得到复对称线性系统(18)式.
表1 是关于DSBTS、SBTS、GSOR 和MHSS 迭代法的实验参数选取,分别来自于(11)式、文[17]、文[13]和文[7].
表1 DSBTS、SBTS、GSOR 和MHSS 的实验参数选取
表2 是DSBTS、SBTS、GSOR 和MHSS 的实验结果.
表2 DSBTS、SBTS、GSOR 和MHSS 的实验结果
通过表2 的实验结果,可以看出DSBTS 迭代法解决算例1 较其他三种方法来说具有更快的收敛速度和更强的稳定性.