法,Gauss-Newton 法等,李,莫&祁详细介绍了一些适合在计算机上求解的有效算法 ,如
Broyden 算法,以及近十几年来发展的新方法,如区间迭代法,单调迭代法和单纯形法等.
1. 综合当前各类非线性方程的数值解法,通过比较分析(1)二分法;(2)迭代法;(3)
牛顿——雷扶生方法;(4)迭代法的收敛阶和加速收敛方法;(5)解非线性方程的
插值方法,这以上五种的算法应用,对某个具体实际问题选择相应的数值解法。
2.比较各类数值算法,分析其优缺点,并应用到具体的实际问题中。
3.利用计算机 MATLAB语言对非线性方程的数值解法进行程序设计。
研究的基本思路是结合目标所提出的问题针对各种方法来具体分析比较:
(1) 二分法 起始区间[a,b]必须满足 f(a)与 f(b)符号相反的条件。二分法的第一部是
选择中点 c=(a+b)/2,然后分析可能存在的三种情况:如果 f(a)和 f(c)符号相反,
则在区间[a,c]内存在零点。如果 f(c)和 f(b)符号相反,则在区间[c,b]内存在零点。
如果 f(c)=0,则 c 是零点。
迭代法 迭代是指重复执行一个计算过程,直到找到答案。首先需要有一个用于逐
项计算的规划或函数 g(x),并且有一个起始
p
。然后通过迭代规则 p =g( p ),可
(3)牛顿——雷扶生法 如果 f(x), f (x) 和 f (x) 在根 p 附近连续,则可将它作为 f(x)
的特性,用于开发产生收敛到根 p 的序列{ p }的算法。而且这种算法产生序列{ p }的
速度比二分法快。牛顿——雷扶生法依赖于 f (x) 和 f (x) 的连续性,是这类方法中已知
的最有用和最好的方法之一。
(4)迭代法的收敛阶和收敛方法、割线法只计算 f(x),不计算 f (x) ,而且在单根
上的收敛阶 R 1.618033989。割线法比牛顿法收敛速度慢一些,牛顿法的收敛阶为 2。
当 p 是一个 M 阶根时,需要更好的求根技术以获得比线性收敛更快的速度。最终结果
显示,通过对牛顿法进行改进,可使其在重根的情况下的收敛阶为 2。加速收敛方法有
Aitken 加速法和 Steffensen 加速法。Steffensen 算法是促使迭代加速收敛的有效算法,但
该算法每算一步,需两次迭代,其效率不够高。
(5) 解非线性方程的插值方法
的插值计算是不方便的。
Lagrange 插值公式需要进行提高插值多项式次数
二分法的优点是对函数 f(x)的性态要求不高,只需连续即可,且计算程序简单,能
保证收敛。其缺点是收敛速度较慢,且只能求实函数的实零点(单重或奇数重零点)。
该方法一般用于确定方程根(或函数实零点)的粗略位置,为快速收敛的算法提供初值。
Newton 法的主要优点是收敛速度快,缺点是其收敛性是局部收敛,要求初始值 x 选
在精确解
x
*附近才能保证收敛。
第 4 页 共 19 页