资源描述
第五章第五章 非线性方程的数值解法非线性方程的数值解法5.1 5.1 二分法二分法5.2 5.2 迭代法迭代法5.3 5.3 牛顿法牛顿法5.4 5.4 弦截法弦截法 引引 言言非线性方程非线性方程:指次数不低于二的代数方程和超越方程。代数方程:代数方程:16世纪:找到三次、四次方程的求根公式;19世纪:证明了5次以上的一般代数方程无公式解。工程中常有此类方程,例如:在风道设计计算 中,通常采用柯氏公式:5.15.1解题步骤:解题步骤:1 1 确定初始区间:一般题中给出或画出函数图形或由实际意义得到。2 2 通过二分法求得一个比较粗糙的近似值。3 3 利用其它解法求得精度较高的近似值。5.1 5.1 二分法二分法一、二分法:一、二分法:abx1x2ab或或x*图图5 51 1 二分法的几何意义二分法的几何意义几何意义:几何意义:例例解解n函数值符号函数值符号有根区间有根区间f(2)=-10(2,3)1f(2.5)0(2,2.5)2f(2.25)0(2,2.25)3f(2.125)0(2,2.125)4f(2.0625)0(2.0625,2.125)5f(2.09375)0(2.09375,2.109375)二、算法与流程图:二、算法与流程图:1.1.算法:算法:2.2.流程图流程图:(略):(略)3.C3.C程序:程序:#include#include#define A 2#define B 3float f(x)float x;float y;y=x*x*x-2*x-5;return(y);main()float a=A,b=B,x;x=(a+b)/2;if(f(x)1e-5)if(f(a)*f(x)E)x1=x2;x2=g(x1);printf(The root is%f.n,x2);5.4 5.4 弦截法弦截法 牛顿法收敛速度很快,但需计算导数,对于复杂 函数不方便。一、弦截法:一、弦截法:1.1.弦截公式:弦截公式:5.105.102.2.几何意义:几何意义:图图5 54 4 弦截法的几何意义弦截法的几何意义3.3.收敛性:收敛性:因此,此算法被称为弦截法弦截法。x0切线切线 割线割线 利用公式(5.10),得5.115.11特别地代入(5.11),有略去分母中的一阶项得由此可见,弦截公式(5.10)仅仅是线性收敛的,慢于牛顿法。二、快速弦截法:二、快速弦截法:得到下列计算公式:5.125.12可以证明其误差为这种收敛速度是比较快的,我们称公式(5.11)为快速弦截法快速弦截法。收敛速度快,与牛顿法相当。计算前需要取两个初值。我们称快速弦截法(5.11)是 多步迭代多步迭代,而牛顿法则是一一 步迭代步迭代。几何意义几何意义:图图5 55 5 快速弦截法的几何意义快速弦截法的几何意义例例解解n012340.50.6 0.56754 0.56715 0.56714 收敛速度与牛顿法相当3.3.MathematicaMathematica方程求根函数:方程求根函数:Solve方程或方程组,变量表列NSolve方程或方程组,变量表列FindRoot方程,变量,初值表列求解多项式方程的精确解求解方程的数值解使用牛顿法或割线法求解任意方程的数值解,一次只能求一个解,根据需要初值可以为一个、两个,或一个区间。
展开阅读全文