方程求根:二分法--不动点迭代--牛顿法--弦截法
1.问题概述
许多复杂的求解问题,都可以转换成方程f(x)=0的求解问题。这一系列的解叫做方程的根。对于非线性方程的求解,在自变量范围内往往有多个解,我们将此变化区域分为多个小的子区间,对每个区间进行分别求解。我们在求解过程中,选取一个近似值或者近似区间,然后运用迭代方法逐步逼近真实解。
2.理论与方法
1.二分法(Bisection Method)
首先假定一个初始区间[a,b],函数f(x)=0,在此区间上连续。f(a)*(b)<0,说明在此区间至少存在一个实根。考察有根区间[a,b],取中点x0=(a+b)/2将它划分为两半,然后进行根的搜索,即检查f(x0)与f(a)是否同号;如果确系同号,说明所求的根x在x0的右侧,这时令a1=x0,b1=b;否则x必在x0的左侧,这时令a1=a,b1=x0(如图2-1所示)。不管出现哪一种情形,新的有根区间[a1,b1]的长度仅为[a,b]的一半,通过一步一步的二分操作,逐步靠经精确解。由于这是粗略的估计,最终很难得到一个准确解,所以只能求出一个靠近真实解的,所以我们应该在求解的开始时候确定一个误差,当迭代n次过后满足 |x-xn|<=误差 。同时我们可以求出迭代次数n=⌈log2((b-a)/2*误差)⌉