楊曉蕾
摘 要:本文通過對于求解非線性方程問題的五種方法即二分法、牛頓法、簡易牛頓法、割線法、steffensen法等數(shù)值分析方法的算法原理及實現(xiàn)方法的研究,通過對非線性方程開普勒方程x-asinx=b(分別對a,b賦值1,2)運用以上五種不同的迭代法進行求解,對幾種迭代法的運算量、迭代步數(shù)、所用時間進行分析與評價,最終對其進行比較,得到五種不同迭代方法的適于求解的非線性方程類型的簡要分析推斷。
關鍵詞:二分法;牛頓迭代法;簡易牛頓法;割線法;Steffensen法
對于非線性方程的求解,在實際問題中時常出現(xiàn)此類問題,在科學和工程計算中非線性方程尤為重要,許多我們熟悉的線性模型都在一定的條件下由非線性問題簡化得到的,為得到更符合實際的解答,往往需要直接研究非線性模型,從而產(chǎn)生非線性科學。
非線性方程的數(shù)值解法在實際中有廣泛的應用,但由于非線性方程的復雜性,在解法上直接法計算求解幾乎不可能,所以需借助二分法、迭代法求解。
在幾百年的研究努力下,已建立了二分法、牛頓法、簡易牛頓法、割線法、Steffensen法。
3 總結分析
由實驗結果知,二分法經(jīng)過迭代后,可以達到較好的精度,但是當所求問題較為復雜,且對其根的估計范圍較為寬泛時,所需迭代的步數(shù)很大,計算量和空間儲存上會有很大的占用。
牛頓法是二次收斂的,因此用牛頓法求解非線性方程的解,迭代次數(shù)較小,且計算量和占用空間較小,可以得到相對較精確的數(shù)值解。但其缺點是需要求非線性方程的導函數(shù)值,適用范圍較小,只能對一階可導的方程進行迭代。牛頓法在比較復雜的問題上能以較小的運算量得出較為精確的數(shù)值解。
簡易牛頓法擁有較小的計算量,算法只用到初始值的導數(shù)值作為分母,但缺點是需要迭代步數(shù)較多,適合簡單且容易觀察出零點大致位置的非線性方程。
割線法收斂速度不如牛頓迭代法收斂速度快,但比二分法快,可以達到相對較高的精度,在其迭代過程中每步只需一次新的函數(shù)賦值,此類迭代算法中函數(shù)賦值構成了主要的計算量,綜合比較割線法的運算量要比牛頓法小。
Steffensen 法的收斂速度在一定條件下可以達到二次收斂,相對割線法和二分法收斂速度較快,在一定程度上避免了兩個值很近時造成的誤差,也不需要求函數(shù)導數(shù)值,綜合來看Steffensen 迭代算法計算量較小且精度較高。
參考文獻:
[1] David Kincaid&Ward Cheney著,王國榮,俞耀明,徐兆亮譯.數(shù)值分析.