1 / 45
文档名称:

3非线性方程matlab计算方法.ppt

格式:ppt   大小:1,610KB   页数:45页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

3非线性方程matlab计算方法.ppt

上传人:s1188831 2017/8/8 文件大小:1.57 MB

下载得到文件列表

3非线性方程matlab计算方法.ppt

文档介绍

文档介绍:第三章非线性方程的数值解法
史晓非
大连海事大学信息科学技术学院
信号与图像处理研究所
简介(Introduction)
我们知道在实际应用中有许多非线性方程的例子,例如
(1)在光的衍射理论(the theory of diffraction of light)中,我们需要求x-tanx=0的根
(2)在行星轨道( ary orbits)的计算中,对任意的a和b,我们需要求x-asinx=b的根
(3) 在数学中,需要求n次多项式xn + a1 xn-1+...+an-1 x + an =0的根
求f(x)=0的根
满足方程的x值通常叫做方程的根或解,
也叫函数f(x)=0的零点。
非线性方程的一般形式 f(x)=0 这里f(x)是单变量x 的函数,它可以是代数多项式
f(x)=a0+a1x+……+anxn (an≠0)
也可以是超越函数,即不能表示为上述形式的函数。
方程根的数值计算步骤
判断根的存在
确定根的分布范围
根的精确化
根的存在定理(零点定理):
f(x)为[a,b]上的连续函数,若 f(a)·f(b)<0,则[a,b]中至少有一个实根。如果f(x)在[a,b]上还是单调递增或递减的,则f(x)=0仅有一个实根。
根的分布范围:
在用近似方法时,需要知道方程的根所在区间。若区间a,b含有方程f(x)=0的根,则称a,b为f(x)=0的有根区间;若区间a,b仅含方程f(x)= 0的一个根,则称a,b为f(x)= 0的一个隔根区间。求隔根区间有两种方法:
例如,求方程3x-1-cosx=0的隔根区间。
将方程等价变形为3x-1=cosx ,易见y=3x-1与y=cosx的图像只有一个交点位于[,1]内。
画出y=f(x)的略图,从而看出曲线与x轴交点的大致位置。也可将f(x)=0等价变形为g1(x)=g2(x)的形式,y=g1(x)与y=g2(x)两曲线交点的横坐标所在的子区间即为含根区间。
(1)描图法
(2)逐步搜索法
运用零点定理可以得到如下逐步搜索法:
先确定方程f(x)=0的所有实根所在的区间为[a,b],从x0=a 出发,以步长
h=(b-a)/n
其中n是正整数,在[a,b]内取定节点:
xi=x0+ih (i=0,1,2,……,n)
计算f(xi)的值,依据函数值异号及实根的个数确定隔根区间,通过调整步长,总可找到所有隔根区间。
§ 对分区间法(Bisection Method )
a
b
x1
x2
a1
b2
x*
b1
a2
停机条件(termination condition ):

a
b
x1
x2
a
b
什么时候停止?

x*
While(|a-b|>eps)
x=(a+b)/2
计算f(x)
若(|f(x)|<eps) x为解
若f(x)*f(b)<0 修正区间为[x,b],即a=x
若f(a)*f(x)<0 修正区间为[a,x],即b=x
End while