陳 偉,蔡 靜,高壽蘭
(湖州師范學(xué)院 理學(xué)院, 浙江 湖州 313000)
牛頓迭代法是求解非線性方程f(x)=0最常用的數(shù)值方法之一.牛頓迭代法的幾何意義鮮明、形式簡(jiǎn)單,并在單根附近具有二階收斂速度.但牛頓迭代法的計(jì)算過(guò)程需要調(diào)用導(dǎo)數(shù)值,這對(duì)函數(shù)的可導(dǎo)性要求很高,同時(shí)需要較大的計(jì)算量,且其局部收斂性還要求迭代的初值與精確根很靠近,這極大地限制了它的應(yīng)用范圍.
近年來(lái),很多文獻(xiàn)對(duì)牛頓迭代法做了進(jìn)一步的修改與推廣.文獻(xiàn)[1]給出了經(jīng)典牛頓迭代法的兩種修正形式,并證明它們具有三階收斂速度.文獻(xiàn)[2]和[3]利用先用牛頓迭代法預(yù)估后校正的方法對(duì)牛頓迭代法進(jìn)行改進(jìn),并證明其在一定條件下至少具有三階收斂速度.文獻(xiàn)[4]利用動(dòng)力系統(tǒng)的李雅普諾夫方法,克服了f(x)的單調(diào)性和特殊情況f′(x)=0.文獻(xiàn)[5]通過(guò)差商和局部指數(shù)逼近類(lèi)似,構(gòu)造了一類(lèi)不需要計(jì)算導(dǎo)數(shù)值的超線性收斂指數(shù)下降迭代法.文獻(xiàn)[6]提出一種新的二階收斂迭代法,解決了非線性方程f(x)=0在某區(qū)間的求根和某些常微分方程的初值問(wèn)題.文獻(xiàn)[7]將Liapunov方法與指數(shù)逼近法結(jié)合,構(gòu)造了一種新的二階收斂指數(shù)迭代法.文獻(xiàn)[8]利用割線代替切線的方法,得到了不帶導(dǎo)數(shù)項(xiàng)的具有線性收斂的單點(diǎn)割線法和具有超線性收斂的雙點(diǎn)割線法.文獻(xiàn)[9]給出一種以割線代替導(dǎo)數(shù),從而避免導(dǎo)數(shù)運(yùn)算的二階收斂迭代公式.文獻(xiàn)[10]利用微分中值定理的漸進(jìn)性和線性插值構(gòu)造了一個(gè)四階的迭代公式.文獻(xiàn)[11]利用差商構(gòu)建了一種避免導(dǎo)數(shù)運(yùn)算的二階收斂牛頓迭代法.文獻(xiàn)[12]基于切比雪夫正交多項(xiàng)式零點(diǎn)插值誤差的極小化性質(zhì),構(gòu)造了非線性方程求根的一類(lèi)迭代算法,其具有超線性收斂速度.
本文通過(guò)添加兩個(gè)參數(shù),同時(shí)對(duì)牛頓迭代法進(jìn)行先預(yù)估再矯正,構(gòu)造一種具有雙參數(shù)的改進(jìn)型牛頓迭代法.通過(guò)調(diào)整兩個(gè)參數(shù)的值可以有效提高迭代法的收斂速度,且在一般情況下比牛頓迭代法具有更快的收斂速度.
參照文獻(xiàn)[4]和[8],引入一個(gè)動(dòng)力系統(tǒng):
(1)
其中,U(x*)為x*的某領(lǐng)域,μ為參數(shù).顯然,方程f(x)=0的根x*是動(dòng)力系統(tǒng)(1)的平衡點(diǎn),反之相同.
由此可見(jiàn),動(dòng)力系統(tǒng)(1)給求解方程f(x)=0提供了各種各樣的可能性,采用不一樣的數(shù)值方程求解動(dòng)力系統(tǒng)(1)就能得到不一樣的求解方程f(x)=0的迭代方法.
由泰勒公式(麥克勞林公式)可對(duì)函數(shù)進(jìn)行如下展開(kāi):
本文將用到此公式k=-1的形式:
若利用Euler法,則可得:
xn+1=xn-hnf(xn)/[μf(xn)+f′(xn)].
(2)
在式(2)中,如果取hn=1,則可得到迭代公式:
xn+1=φ(xn),φ(x)=x-f(x)/[μf(x)+f′(x)].
(3)
當(dāng)f(x)在U(x*)內(nèi)有二階連續(xù)導(dǎo)數(shù)時(shí),容易得到φ(x*)=0,φ′(x*)≠0,則迭代公式(3)是平方收斂的.
在式(3)中,如果取μ=0,則可得到經(jīng)典的牛頓迭代法:
(4)
文獻(xiàn)[11]對(duì)式(4)進(jìn)行了修改,構(gòu)造了一種避免導(dǎo)數(shù)運(yùn)算的迭代法:
(5)
參考上述文獻(xiàn)的構(gòu)造思想,本文對(duì)牛頓迭代法進(jìn)行如下改進(jìn):
首先,利用式(3)進(jìn)行預(yù)估:
最后,得到如下具有雙參數(shù)的改進(jìn)牛頓迭代法:
(6)
由Euler法和傳統(tǒng)牛頓迭代法的一些相關(guān)結(jié)論,不難證明根據(jù)式(6)改進(jìn)的迭代公式在一定條件下是收斂的.因此,下面只需對(duì)迭代公式進(jìn)行收斂階的證明.
定理2設(shè)f(x):I→R在開(kāi)區(qū)間I內(nèi)充分光滑.如果a∈I是f(x)=0的單根,且x0充分靠近a,則由式(6)構(gòu)造的具有參數(shù)的改進(jìn)牛頓迭代法至少具有二階收斂速度.
證明令
en=xn-a,ck=f(k)(a)/[k!f′(a)],k=2,3,4.
將f(x)在a處進(jìn)行泰勒展開(kāi),得:
(7)
(8)
將式(7)和式(8)代入式(6),得:
整理后得:
(9)
利用泰勒公式對(duì)式(9)進(jìn)行展開(kāi),只需展開(kāi)到第4項(xiàng),得:
即
則
(10)
由式(8)得:
(11)
將式(7)和式(11)代入式(6),得:
a+
(12)
利用泰勒公式對(duì)式(12)進(jìn)行展開(kāi),只需展開(kāi)到第3項(xiàng),得:
即
下面通過(guò)求解非線性方程f(x)=0在區(qū)間[a,b]的解,將迭代公式(3)、牛頓迭代法(4)、迭代公式(5)與本文迭代公式(6)進(jìn)行比較.
例1求f(x)=4x7+x6-5x5+3x4+x3-7x2+7x-2=0在區(qū)間[0,1]內(nèi)的根.
初始值取x0=0.5,終止條件為|xn+1-xn|<10-6.迭代公式(3)取μ=-1,迭代公式(5)取A=1,B=0,迭代公式(6)取λ=0.5,μ=-1.例1中4類(lèi)迭代法的收斂速度比較見(jiàn)表1.
表1 例1中4類(lèi)迭代法的收斂速度比較
例2求f(x)=2cosx-3x+3=0在區(qū)間[1,2]內(nèi)的根.
初始值取x0=1.5,迭代公式(3)取μ=-1,迭代公式(5)取A=1,B=0,迭代公式(6)取λ=0.5,μ=-1,終止條件為|xn+1-xn|<10-6.例2中4類(lèi)迭代法的收斂速度比較見(jiàn)表2.
表2 例2中4類(lèi)迭代法的收斂速度比較
從例1和例2的數(shù)值結(jié)果可以看出,本文給出的迭代公式(6)的迭代結(jié)果精度明顯優(yōu)于其他各類(lèi)修正的牛頓迭代法,且收斂速度更快.
湖州師范學(xué)院學(xué)報(bào)2021年8期