欢迎来到天天文库
浏览记录
ID:59590015
大小:440.50 KB
页数:32页
时间:2020-11-14
《波音公司飞机最佳定价策略.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第二章方程求解本章学习目的:1.复习求解方程的基本原理和方法,掌握解方程的迭代算法;2.能利用MATLAB软件编写迭代算法程序,了解迭代过程的图形表示;3.熟练掌握用MATLAB软件的函数来求解方程和方程组;4.通过范例展现求解实际问题的初步建模过程和MATLAB程序设计。§2.1引言“方程是很多工程和科学工作的发动机”。研究大型的土建结构、机械结构、输电网络、管道网络,研究经济规划、人口增长、种群繁殖等问题时,简单的分析可以直接归结为线性或非线性方程组,复杂一些要用到(偏)微分方程,求数值解时将转化为n非常大
2、的方程组。若干世纪以来,工程师和科学家花了大量的时间用于求解方程(组),数学家研究各种各样的方程求解方法。本章我们就是要学习求解线性方程组、非线性方程(组)的方法,以及利用数学软件利用计算机对方程和方程组进行求解。§2.2方程的求解方法考虑求方程f(x)=0的解,我们通常采用这样的几种方法:因式分解法、图形放大法、数值迭代逼近法。1.因式分解法:这是我们最熟悉、常用的一种方法,这个方法的关键在分解因式,包括对多项式函数、三角函数和指数函数等的分解。但对于无法进行分解的函数则无能为力。2.图形放大法:由于计算机的
3、广泛应用,可以非常方便地作出函数f(x)的图形(曲线),找出曲线与x轴的交点的横坐标值,就可求出f(x)=0的近似根。这些值尽管不精确,但是直观,方程有多少个根、在什么范围,一目了然。并且可以借助于计算机使用图形局部放大功能,将根定位得更加准确。3.数值迭代逼近法:利用图形的方法或连续函数的零点存在性定理,可以推知f(x)在某一区间内有根,我们就可以用数值方法来求方程的根,这就是迭代逼近法。迭代逼近法分为区间的迭代和点的迭代。区间迭代又分为对分法和黄金分割法;点的迭代又分为简单迭代法、单点割线法、两点割线法、牛
4、顿法等。迭代失败后又可以采用加速迭代收敛方法。各种迭代方法原理都很简单(详见教材p41),请同学们自学。2.2.1图形放大法用图形放大法求解方程f(x)=0的步骤:(1)建立坐标系,作曲线f(x);(2)观察f(x)与x轴的交点;(3)将其中的一个交点进行局部放大;(4)该交点的横坐标值就是方程的一个根;(5)对所有的交点进行相同的处理,就得到方程的所有解。例2.1求方程所有的根及大致分布范围,欲寻求其中的一个实根,并且达到一定的精度。(1)画出的图形;x=-6:0.01:6;y=x.^5+2*x.^2+4;p
5、lot(x,y)gridon;我们可以看出方程在-2~+2范围有一个实根。(2)逐次缩小范围得到较精确的根。x=-2:0.01:2;y=x.^5+2.*x.^2+4;plot(x,y)gridonx=-2:0.01:-1.5;y=x.^5+2.*x.^2+4;plot(x,y)gridonx=-1.6:0.01:-1.5;y=x.^5+2.*x.^2+4;plot(x,y)gridon因此我们可以看出这个实根的值在-1.55~-1.5之间。2.2.1简单迭代法1.迭代算法步骤:对方程f(x)=0求解(1)对方程
6、经过简单变形得到(不是唯一的),x被称之为不动点;(2)设置为迭代初值,迭代过程为,n=0,1,2……(3)当两次迭代结果之差小于某个设定的误差值时,我们认为迭代结果是收敛的,可得到结果的近似值。例2.2求方程的非负实根。解:由于函数连续,并且在x=0和x=1处函数值符号相反,可以判断函数在区间(0,1)必有零点,即方程在(0,1)内必然存在根。(1)先将函数变形为;(2)设置迭代初值为0,编程进行迭代。n=1;x=0;y=exp(x)/3;ys=vpa(y,10);z=abs(y-x);whilez>10^(
7、-5)x=y;y=exp(x)/3;ys=vpa(y,10);z=abs(y-x);n=n+1;endn,y,ysn=21y=0.6190ys=.6190471917从该结果可以看出,迭代21次后两次迭代的结果误差值满足小于的条件,结果收敛,迭代结果为0.6190,若保留小数点后10位有效数字则结果为0.6190471917。例2.3用迭代方法求解方程解:(1)对方程变形为,有不同的形式,比如;(a);(b);……(c)(2)设定初始值为1,编程迭代求解x=1;y=1;z=1;fork=1:25x=x^3-x^
8、2-1;y=(y^2+y+1)^(1/3);z=1+1/z+1/z^2;endx,y,zx=-Infy=1.8393z=1.8393在程序中,函数x,y,z分别对应方程(a)(b)(c),从结果可以看出方程(a)不收敛,结果趋于负无穷大,方程(b)(c)收敛,结果为1.8393。而且,还可证明(b)比(c)收敛速度快。注:这段程序和例2.2有所不同,这里是设定了固定的迭代次数。2.迭代
此文档下载收益归作者所有