姜 偉,溫瑞萍
(太原師范學(xué)院 數(shù)學(xué)系,山西 晉中 030619)
復(fù)對(duì)稱但非Hermitian線性方程組的問題:
Ax=b,A∈Cn×n,x,b∈Cn
(1)
求解線性方程組(1)是近年來的熱點(diǎn)問題之一,國內(nèi)外許多學(xué)者提出了有效算法.主要有:共軛梯度類方法[1-3];Krylov類方法[4];矩陣分裂迭代和預(yù)條件迭代類方法[5-8,9,10].其中白中治、Benzi 和陳芳提出的 MHSS[5]及PMHSS[6]迭代法是一種交替格式,非常有效,但其位移參數(shù)是根據(jù)一些估計(jì)預(yù)先給定的,在迭代的過程中無論好壞都不曾改變.
文章將基于修正的Hermitian和反Hermitian分裂(MHSS) 迭代法,利用最優(yōu)化方法自適應(yīng)動(dòng)態(tài)選擇其位移參數(shù)[11],提出迭代求解一類復(fù)對(duì)稱但非Hermitian的大型線性方程組的加速M(fèi)HSS(AMHSS)算法.并給出其收斂結(jié)果,最后通過數(shù)值實(shí)驗(yàn)進(jìn)行比較來驗(yàn)證算法的有效性.
本小節(jié)給出求解線性方程組(1)的加速M(fèi)HSS方法如下:
算法(AMHSS算法) 給定精度ε.假設(shè)x(0)∈Cn為任意初始值,k=0,1,2,…,直到迭代序列{x(k)}收斂.
1)計(jì)算rk=b-Ax(k);
2)求解線性方程組
(2)
其中αk+1是以下優(yōu)化問題的解:
(3)
這里rk+1=N(α)M(α)-1rk,而且:
(4)
3) 若‖rk+1‖≤ε,則停止;否則k∶=k+1,返回第一步.
下面考慮算法及收斂性:
引理設(shè){x(k)}是由算法產(chǎn)生的向量序列,M(α)和N(α)由(4)給出,則在第k+1步有:
(5)
其中α是通過優(yōu)化問題(3)得到的,此外有:
(6)
證明 令φ(α)=(αI-iT)(αI+iT)-1,則有φ(α)*φ(α)=I.
因?yàn)椋?/p>
(αI-W)-1N(α)M(α)-1=(αI-iT)(αI+iT)-1(αI+W)-1=φ(α)(αI+W)-1.
有:
又
故:
定理設(shè)A=W+iT∈Cn×n,W∈Rn×n,T∈Rn×n,分別為對(duì)稱正定矩陣和對(duì)稱半正定矩陣,α是正常數(shù),迭代序列{x(k)}收斂于(1)的唯一解x*.進(jìn)一步,若A是正規(guī)矩陣,則誤差范數(shù)‖ek‖=‖x(k)-x*‖2嚴(yán)格遞減,即‖ek+1‖2<‖ek‖2.
證明 算法中第k步的誤差為‖ek‖=‖x(k)-x*‖2.如果αk+1由(3)得到,則對(duì)任意αk>0有:
因此
因此:
另外,若A是一個(gè)正規(guī)矩陣,有WT=TW.
因此,迭代矩陣G(α)=(αI+iT)-1(αI-iT)(αI-W)(αI+W)-1也是一個(gè)正規(guī)矩陣.這表明‖G(α)‖2=ρ(G(α)).
那么,對(duì)于T(αk+1)=G(αk+1)G(αk)…G(α1)
有‖T(αk+1)‖2≤‖G(αk+1)‖2‖G(αk)‖2…‖G(α1)‖2=ρ(G(αk+1))…ρ(G(α1))<1.
因此,‖T(αk+1)‖2=‖G(αk)T(αk)‖2<‖T(αk)‖2<1.
所以有,‖ek+1‖2=‖T(αk+1)e0‖2=‖G(αk+1)Tke0‖2<‖Tke0‖2=‖ek‖2.
本小節(jié)將通過數(shù)值實(shí)驗(yàn)來說明新算法的有效性.實(shí)驗(yàn)中,迭代次數(shù)、運(yùn)行時(shí)間、相對(duì)誤差及絕對(duì)誤差分別用“nit”,“tcpu”(單位:s),“Enormr”,“Eres”表示.初始向量x(0)為零向量.且
迭代停止準(zhǔn)則為Enormr≤10-6.
問題:考慮下列二維對(duì)流擴(kuò)散方程
-(uxx+uyy)+β(ux+uy)=g(x,y)
在區(qū)域(0,1)×(0,1)上滿足狄利克雷邊界條件,常系數(shù)β=i.通過利用五點(diǎn)中心有限差分離散得到復(fù)對(duì)稱但非Hermitian的線性方程組(1)的系數(shù)矩陣A=W+iT,并且W=T1?I+I?T1,T=I?V+V?I(T1是三對(duì)角矩陣T1=tridiag(-1-Re,2,-1+Re),V=tridiag(2,-1,-1),h=1/(m+1)是等距步長(zhǎng),網(wǎng)格雷諾數(shù)Re=βh/2),方程組系數(shù)矩陣的階數(shù)n=2m.方程組右邊b取向量b=Ax*,其中x*=(1,1,…,1)T∈Rn為精確解.
通過采用AMHSS算法求解此問題,對(duì)于不同規(guī)模的線性方程組求解,所得到的數(shù)據(jù)結(jié)果由表1給出.通過數(shù)值結(jié)果可以看出,在同樣精度下, AMHSS算法在迭代步數(shù)和計(jì)算時(shí)間上都有了明顯減少.
表1 AMHSS和MHSS數(shù)值結(jié)果的比較
在文章中,對(duì)一類特殊的復(fù)對(duì)稱但非Hermitian的大型線性方程組的MHSS算法,針對(duì)其位移參數(shù)α的選擇采用最優(yōu)化方法進(jìn)行加速研究.并通過實(shí)驗(yàn)表明,加速M(fèi)HSS算法通過選取適當(dāng)?shù)膮?shù)后在計(jì)算時(shí)間、迭代次數(shù)上有明顯的縮短,能夠更快更精準(zhǔn)地進(jìn)行此類問題的迭代求解.