?

基于復合Newton-Cotes改進的一種數值積分算法

2011-08-29 05:39李夢爽
科技傳播 2011年24期
關鍵詞:秦氏數值積分后置

劉 浩,李夢爽

南京大學,江蘇南京 211102

1 問題的提出

[1]中的證明可知:在 n<=8 時數值穩定,誤差隨n 的增大而減小,同時n>8 時,會產生數值不穩定性,造成巨大計算誤差。但是,實際的計算過程中誤差并沒有像[1]中所言在n小于8時候會隨著n的增大而減小,而是減小到一定程度之后就不再減小。

經過實驗分析(在精度更高的計算環境下,誤差的減小微乎其微)我們確定這不是由于計算機表示精度的原因造成的。進一步分析和對比[2]中的給定積分系數Ai,我們確定這是由于其中在計算過程中計算Ai多項式積分引入了額外的誤差。于是我們提出了一種改進的Newton-Cotes數值積分算法。我們稱新算法為后置秦氏Newton-Cotes算法。

2 算法的介紹

經典的復合Newton-Cotes算法和相關結果

Newton-Cotes計算方法是將問題轉化為計算積分的近似值

當階數過大時會產生數值不穩定性,所以采用復合Newton-Cotes算法增加計算的精度。其思想是講區間[a,b]平分成m段,在每段上使用Newton-Cotes算法,最后將各段結果求即為積分的近似值。

【定理1】[1]n階Newton-Cotes算法的離散誤差

由此當n較大時離散誤差會發散。

但是實際數值計算試驗中并沒有表現出上述定理所述的結果,這是因為上述定理認為Ai的計算是絕對準確的,但實際計算中只是還是使用數值積分方法計算該Ai,只是計算多項式積分的計算更準確一點。然而這卻導致了在n上升到較小值的之后誤差就不再明顯下降。于是我們提出了如下算法。

3 后置秦氏復合Newton-Cotes算法

在經典的復合Newton-Cotes算法中我們會使用,秦九韶算法計算多項式的值之后再進行數值積分。我們這里觀察發現其實Ai的計算可以利用多項式積分的特點進行優化。在后置秦氏復合Newton-Cotes算法中我們先計算出Ai中多項式的系數,之后對系數矩陣做加權平移就可以得到積分后多項式的系數矩陣,然后再使用秦九韶算法計算Ai。這相當于將秦氏算法后置,所以我們取名為后置秦氏復合Newton-Cotes算法。具體介紹之前我們先引入一個引理。

【引理1】k次多項式Pk(t)的系數矩陣為

下圖表示了后置秦氏復合Newton-Cotes算法的圖示。

4 算例與分析

我們將分別使用經典的復合Newton-Cotes算法和后置秦氏復合Newton-Cotes算法計算計算積分,并對比計算結果。

【試驗一】:使用經典的復合Newton-Cotes算法(m是分段數,n表示Newton-Cotes算法的階數)

下圖中上方曲線是m=100時誤差隨n變化的曲線,下方是m=10000時的曲線??v坐標是對數坐標表示誤差的絕對值。

實驗表明經典算法在n在3和8之間精度沒有明顯增長,并驗證了定理一中的關于數值不穩定的結論。

【實驗二】:使用后置秦氏復合Newton-Cotes算法

上圖中上方兩條是實驗一中的數據。最下方曲線是m=10000時候誤差隨n上升變化的曲線。

實驗表明使用改進之后的后置秦氏復合Newton-Cotes算法可以明顯地增強算法的精度。

【實驗三】:對比上述試驗中計算出的Newton-Cotes系數Ai

參考[2]中給定的Cotes系數,我們發現經典算法的系數對稱性和精確度都沒有改進算法好,我們分析認為這正是新算法精度較高的原因。

5 結論

使用我們設計的后置秦氏復合Newton-Cotes算法在不明顯增加計算量的情況下可以大大增加計算結果的精度,尤其在Cotes系數的對稱性上有比較大的改進。

參考文獻

[1]林成森.《數值計算方法.上冊》.科學出版社.

[2]黃云清.《數值計算方法》.科學出版社.

猜你喜歡
秦氏數值積分后置
基于計算前沿面的實時仿真數值積分并行構造及其數值模型解耦加速方法
非正交五軸聯動數控機床后置處理算法開發
秦氏的悲情與野心*——乾隆末年一樁離婚案中的底層婦女
基于辛普生公式的化工實驗中列表函數的一種積分方法
沉淀后置生物處理組合工藝的工程應用
Review of Research on the Prevention of HPV Infection and Cervical Cancer
后置式自動發卡機系統應用
明清時期洞庭秦氏家族研究——以《洞庭秦氏宗譜》為中心
秦氏舊宅廳堂木構架體系結構性能分析
秦氏支祠研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合