- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Matlab4-数值计算
第四章 MATLAB数值计算 某些问题不存在符号解时,又无其他自由参数,考虑误差、收敛性和稳定性问题,给出数值解。 4.1数值极值点 4.2函数微积分 4.3常微分方程 4.4多项式及其操作 4.5 曲线拟合 4.6 曲线插值 4.1数值极值点 fminbnd()求单变量函数在定点区域的最小值 x = fminbnd(fun,x1,x2)x = fminbnd(fun,x1,x2,options)[x,fval] = fminbnd(...)[x,fval,exitflag] = fminbnd(...)[x,fval,exitflag,output] = fminbnd(...) 1)建立M文件 x = fminbnd(@myfun,x1,x2); function f = myfun(x) f = ... 2)匿名函数 x = fminbnd(@(x) sin(x*x),x1,x2); 例4.1 f = @(x)x.^3-2*x-5; x = fminbnd(f, 0, 2) 结果为 x = 0.8165 y = f(x) y = -6.0887 4.1.2多元函数的极小值点 求多元极小值点主要有两种方法:单纯行下山法(Downhill simplex methods)和拟牛顿法(qussi-Newton methods) x=fminsearch(fun,x0)单纯行下山法求多元函数极值点的指令的最简格式 [x,fval,exitflag,output]=fminsearch(fun,x0,options ,p1,p2)单纯行下山法求多元函数极值点的指令的最完整格式格式 x=fminunc(fun,x0)拟牛顿法求多元函数极值点的指令的最简格式 [x,fval,exitflag,output]=fminunc(fun,x0,options ,p1,p2)拟牛顿法求多元函数极值点的指令的最完整格式格式 例4.2求函数 的极小值点 banana = @(x)100*(x(2)-x(1)^2)^2+(1-x(1))^2; [x,fval] = fminsearch(banana,[-1.2, 1]) 结果是 x = 1.0000 1.0000 fval = 8.1777e-010 例4.3求函数 的极小值点 function f = myfun(x) f = 3*x(1)^2 + 2*x(1)*x(2) + x(2)^2; 调用函数 x0 = [1,1]; [x,fval] = fminunc(@myfun,x0) 结果是 x = 1.0e-006 * 0.2541 -0.2029 fval = 1.3173e-013 4.2 函数的微积分 4.2.1函数积分 函数的积分等于它对应函数图形围成的面积。MATLAB提供了在有限区间内,数值计算某函数面积的3种函数trapz(),quad()和quad1(). 1)单重积分 trapz 梯形法数值积分 quad 辛普森数值积分 quadl科茨数值积分 例4.4用梯形数值积分函数求 X = 0:pi/100:pi; Y = sin(X); Z = trapz(X,Y) 结果是Z = 1.9998 例4.5用辛普森和科茨数值积分函数求 function y = myfun(x) y = 1./(x.^3-2*x-5); Q = quad(@myfun,0,2) 结果是Q = -0.4605 F = @(x) 1./(x.^3-2*x-5); Q = quadl(F,0,2); 结果是Q = -0.4605 2)多重积分 dblquad(fun,xmin,xmax,ymin,ymax) 二重积分 例4.6 F = @(x,y)y*sin(x)+x*cos(y); Q = dblquad(F,pi,2*pi,0,pi); triplequad(fun,xmin,xmax,ymin,ymax,zmin,zmax)三重积分 例4.7 F = @(x,y,z)y*sin(x)+z*cos(x); Q = triplequad(F,0,pi,0,1,-1,1); 4.2.2 函数的微分 与数值积分相反,数值微分特别困难。积分描述一个函数的整体
文档评论(0)