6.4 非线性方程求解与函数极值计算0717.pdf

6.4 非线性方程求解与函数极值计算0717.pdf

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
专题六 数值微积分与方程求解 6.4 非线性方程求解与函数极值计算  非线性方程数值求解  函数极值的计算 1.非线性方程数值求解 (1)单变量非线性方程求解 函数的调用格式为: x=fzero (filename,x0) 其中,filename是待求根方程左端的函数表达式,x0是初始值。 1 例1 求f(x)=x- +5 在x =-5和x =1作为迭代初值时的根。 0 0 x f=@(x) x-1./x+5; x1=fzero (f,-5) x1 = -5.1926 x2=fzero (f,1) x2 = 0.1926 x3=fzero (f,0.1) x3 = 3.7372e-16 取x=0点附近的初值,看看结果如何(x3),显然x3不是方程的解,所以利用 fzero函数求解方程,初值的选取是很重要的。在使用MATLAB进行问题求解时, 需要对问题进行多角度分析,而不能机械地套用命令或程序。 2 f(x)=x -1=0的根。 f=@(x) x.^2-1; x=[]; x0=-0.25:0.001:0.25; for x00=x0 x=[x,fzero (f,x00)]; end plot(x0,x,-o) xlabel (初值); ylabel (方程的根); axis([-0.25,0.25,-1,1]) 结果表明,在零附近,相同的根所对应的初值范围并不连续,求得的根也并 非是离初值比较近的根。所以fzero函数执行的是一个数值有哪些信誉好的足球投注网站过程,有哪些信誉好的足球投注网站结 果依赖于函数特性和指定的初值。 (2)非线性方程组的求解 在MATLAB的最优化工具箱中提供了非线性方程组的求解函数fsolve,其调用 格式如下: x=fsolve(filename,x0,option) 其中,x为返回的近似解,filename是待求根方程左端的函数表达式,x0是初值, option用于设置优化工具箱的优化参数,可以调用optimset函数来完成。例如, Display参数设置为 ‘off’时不显示中间结果。 利用fsolve函数解例1的方程。 f=@(x) x-1./x+5; x1=fsolve (f,-5,optimset(Display,off)) x1 = -5.1926 x2=fsolve (f,1,optimset(Display,off)) x2 = 0.1926 x3=fsolve (f,0.1,optimset(Display,off)) x3 = 0.1926 当初值是0.1时,利用fzero函数无法得到正确结果,这里利用fsolve函数就能 得到正确结果,因为不同函数的实现方法不同,适用的场合也不同。总之,多 角度选择和分析是很有必要的。 例2 求下列方程组在(1,1,1)附近的解并对结果进行验证。  2 x sin x + y + z e 0  x + y + z 0  xyz 0  f=@(x) [sin(x(1))+x(2)+x(3)^2*exp(x(1)),x(1)+x(2)+x(3),x(1)*x(2)*x(3)]; f([1,1,1]) ans = 4.5598 3.0000

文档评论(0)

155****1800 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档