王 霞,張啟虎
(鄭州輕工業學院 數學與信息科學系,河南 鄭州 450002)
數值分析中牛頓迭代法的引入方法探討
王 霞,張啟虎
(鄭州輕工業學院 數學與信息科學系,河南 鄭州 450002)
數值分析中牛頓迭代法是求解非線性方程的基本方法.與一般教材上牛頓迭代法的引入方法相比,用積分方程引入牛頓迭代法更能體現數值計算中的“近似”和“構造”思想,便于進一步介紹牛頓法的各種改進形式,有利于學生“創新”算法能力的培養和創新意識的形成.
非線性方程;牛頓迭代法;數值分析;效率指數;方程求根
數值分析是理工科學生必學的一門重要課程.數值分析課程要求學生掌握具體數值計算的方法與理論,強調算法的實際應用.數值分析課程的學生群體可分為兩類:一類是信息與計算科學等專業的理科學生,其學習目標是“研究”和“創新”算法;另一類是工科學生,其主要學習目標是掌握算法的使用.這兩個群體的學習目標不同,教學內容及側重點也應有所區別.
科學研究和工程計算中常常遇到求解非線性方程(組)的問題.數值分析教材中,牛頓迭代法(CN法)[1―11]是求解非線性方程

的一種基本方法,其迭代格式為

(2)式二次收斂于方程(1)的單根,因其收斂速度快,所以牛頓迭代法被廣泛應用于非線性方程的求解.牛頓迭代法的引入方法直接關系到學生對此內容的理解和應用,因此,本文主要探討牛頓迭代法的引入方法.
牛頓迭代法是“非線性方程”這一章的重要一節,由于與其他章節的聯系很小,所以在不同數值分析教材中該章所處位置也不同.文[1―4]將該內容放在“數值積分與數值微分”之后,文[5―11]將其放在“數值積分與數值微分”之前.
牛頓迭代法的常見引入方法可概括為以下4種:
方法1 直接給出迭代函數的具體形式[1―2].文[1]中,直接選取迭代函數,其對應的迭代格式為(2)式;文[2]直接給出了(2)式.
方法2 利用泰勒公式導入牛頓迭代法[3―8],其基本思路是:設方程(1)的近似根為 xn,將函數 f(x)在xn處作泰勒展開,有

用前面兩項近似表示f(x),得近似線性方程

設 f′(xn)≠ 0,令其解 x=xn+1,則得(2)式.
方法3 利用校正技術引入牛頓迭代法[9],基本思路是:設方程(1)的近似根為xn,其校正值 xn+1=xn+Δx能更好地滿足方程(1),即 f(xn+1)≈ 0.將方程(1)的左端用 f(x)在 xn處的微分 f(xn)+ f′(xn)Δx來代替,則有 f(xn)+ f′(xn)Δ x=0,于是

整理可得(2)式.
方法 4 引入一般的帶待定函數的迭代函數,通過提高迭代法的收斂階確定待定函數[10―11],其基本思路是:由方程(1)總可以構造迭代函數

其中k(x)為待定函數,因為

且|φ′(x)|在根α附近越小其局部收斂速度越快,故令φ′(α)=0,從而k (α)=1/f′(α),f ′(α)≠0,于是得到迭代函數x=φ(x)=x ? f(x)/f′(x),從而得到(2)式.
對于以上的4種方法,方法1直接給出迭代函數,適用于使用“算法”的學生,而對于“研究”和“創新”算法的學生來說是不適用的;方法2利用泰勒公式引入牛頓迭代法,利于激發學生“創新”算法的興趣;方法3一步步逼近問題的解,能夠使學生深刻體會逐步逼近的數學思想;方法4能使學生更清楚地理解收斂階的概念.
2.1 牛頓迭代法的積分引入法
下面給出一種新的引入牛頓迭代法的方法[12],此方法的引入需要以數值積分的知識作為基礎,也就是說要把“數值積分與數值微分”這一章放在“非線性方程的數值解法”之前講授.
令α是光滑函數 f(x)的零點,考慮方程 f(x)=0的數值解.由牛頓定理,顯然有

將(4)式右端的積分值用數值積分中的左矩形公式近似代替,并令x=α,可得0 ≈ f(xn)+(α ? xn)f′(xn),從而解出α≈ xn? f(xn)f′(xn).令 α=xn+1,即可得到

這樣,由積分方程和牛頓定理,利用數值積分中的左矩形公式就引入了牛頓法.這樣的引入方法會帶給學生這樣一個思考:左矩形公式(或右矩形公式)是數值積分的一個簡單的代替,其精度較低,因此得到的牛頓迭代法的收斂階也較低,如果用精度較高的梯形公式近似代替(4)右端的積分項,能否得到更高階的迭代公式呢?
2.2 牛頓迭代法的改進

其中 n=0,1,2,… .(5)式的迭代需要隱式計算,這會給求解帶來很大麻煩,為避免隱式計算,下面給出預估–校正的方法,即

其中 n=0,1,2,… .可以證明(6)式為三階收斂,它是對牛頓迭代法的改進,其效率指數為,大于牛頓法的效率指數與(6)式對應的方法稱為梯形牛頓法或代數平均牛頓法(AN法)[12].
沿著此思路,學生自然能想到兩個數的平均不只代數平均.這時,教師可介紹調和平均牛頓法、幾何平均牛頓法等.
用 f′(xn)和 f′(zn)的調和平均值代替 f′(xn),可得到調和平均牛頓法(HN法)[13],即

用 f′(xn)和 f′(zn)的幾何平均值代替 f′(xn),可得到幾何平均牛頓法(GN法)[14],即

與一般教材上牛頓迭代法的引入方法相比,用積分方程引入牛頓迭代法更能體現數值計算中的“近似”和“構造”思想,便于進一步介紹牛頓法的各種改進形式,有利于學生“創新”算法能力的培養和創新意識的形成.
[1] 陳公寧,沈嘉驥.計算方法引論[M].北京:北京師范大學出版社,2000:130―142.
[2] 林成森.數值計算方法[M].北京:科學出版社,2005,33―41.
[3] 孫志忠,袁慰平,聞振初.數值分析[M].南京:東南大學出版社,2002,34―43.
[4] 馬東升.數值計算方法[M].北京:機械工業出版社,2004,32―39.
[5] 李慶揚,易達義,王能超.現代數值分析[M].北京:高等教育出版社,1995,26―268.
[6] 鄧建中,葛仁杰,程正興.計算方法[M].西安:西安交通大學出版社,1985,191―197.
[7] 石東洋.數值計算方法[M].鄭州:鄭州大學出版社,2007,158―164.
[8] 張韻華,奚梅成,陳效群.數值計算方法與算法[M].北京:科學出版社,2006,90―93.
[9] 王能超.計算方法簡明教程[M].北京:高等教育出版社,2004,123―126.
[10] 施吉林,劉淑珍,陳桂芝.計算機數值方法[M].北京:高等教育出版社,1999,238―247.
[11] 白峰杉.數值計算引論[M].北京:高等教育出版社,2004,136―139.
[12] Weerakoon S,Fernando T G L.A variant of Newton’s method with accelerated third-order convergence[J].Appl. Math.lett.,2000,13(8):87―93.
[13] ?ZBAN A Y.Some variants of Newton’s methods[J].Appl. Math.lett.,2004,17:677―682.
[14] 王霞,趙玲玲,李飛敏.牛頓方法的兩個新格式[J].數學的實踐與認識,2007,37(1):72―76.
〔責任編輯 張繼金〕
G642,O241.7
A
1006-5261(2010)05-0073-02
2010-01-14
河南省教育廳自然科學基金項目(2008-755-65);鄭州輕工業學院教改項目
王霞(1970―),女,河南開封人,副教授.