网站大量收购独家精品文档,联系QQ:2885784924

[理学]Matlab数值.ppt

  1. 1、本文档共63页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]Matlab数值

* * * * * * * * * * * * * * * * * * * * * * * * MATLAB对稀疏矩阵的处理: 进行大规模计算的优点 a=sparse(r,c,v,m,n) 在第r行、第c列输入数值v,矩阵共m行n列,输出a为稀疏矩阵,只给出(r,c)及v aa=full(a) 输入稀疏矩阵a,输出aa为满矩阵(包含零元素) a=sparse(2,2:3,8,2,4), aa=full(a), a =(2,2) 8 aa= 0 0 0 0 (2,3) 8 0 8 8 0 输出 n=500;b=[1:n]; a1=sparse(1:n,1:n,4,n,n); a2=sparse(2:n,1:n-1,1,n,n); a=a1+a2+a2; tic;x=a\b;t1=toc aa=full(a); tic;xx=aa\b;t2=toc y=sum(x) yy=sum(xx) 例. 分别用稀疏矩阵和满矩阵求解Ax=b, 比较计算时间 设 0 0 t1, t2相差巨大,说明用稀疏矩阵计算的优点 (y=yy 用于简单地验证两种方法结果的一致) shiyan54 + + + + + + + + + x y y=f(x) (xi,yi) ?i 使点(xi,yi) 与曲线 y=f(x)的距离?i尽量小,i=1,…n 曲线拟合与最小二乘准则 用MATLAB作线性最小二乘拟合 1. 作多项式 f(x)=a1xm+ …+amx+am+1拟合,可利用已有程序: a=polyfit(x,y,m) 输入:数据x,y (同长度数组);m (拟合多项式次数) 输出:系数a=[a1, …am , am+1] (数组)。 2. 对超定方程组 仍用 可得最小二乘意义下的解 多项式在x点的值: y=polyval(a,x) 例 汽车刹车距离 刹车距离d与车速v的关系: 数据拟合 (#) 车速与刹车距离的实际数据记作(vi, di), i=1,2,?,7 结果 shiyan57 用MATLAB作多项式运算 1.多项式乘法:p=conv(p1,p2) 3.多项式生成: p=poly(x) 2.多项式除法 [q,r]=deconv(p1,p2) 生成方阵x的特征多项式,或以向量x为根 4.多项式求根: r=roots(p) 8.部分分式展开: [r,p,k]=residue(b,a) 9.矩阵多项式求值: PM=polyvalm(p,M) 5.多项式显示: PS=ploy2str(p,’s’) 一般“卷积”运算 6.多项式求导: dp=ployder(p) 7.多项式积分: ip=ployint(p) 例:多项式求根 (也可说明问题的“病态性”) 考虑如下的问题 f(x)=(x-1)(x-2)…….(x-20) 显然方程 f(x)=0 的解是 1 2 3 4 ……… 19 20 请问: 如下方程的解是什么? p=poly(1:20); ep=zeros(1,21); ep(3)=1.0e-5; re=roots(p+ep) plot(re,b+); hold on plot(1:20,0,r*); hold off Matlab program Root_example.m ?=10e-5 ?=10e-6 ?=10e-8 MATLAB优化工具箱解非线性方程 fzero: 单变量方程 f(x)=0 求根(变号点) 最简形式 x= fzero(@f, x0 ) 可选输入: “P1,P2,...”是传给f.m的参数(如果需要的话) ’opt’是一个结构变量,控制参数(如精度TolX ) opt可用optimset设定, 不指定或指定为’[ ]’时将采用缺省值 如: opt=optimset(‘TolX’,1e-8) 输出: ’fv’是函数值; ’ef’是程序停止运行的原因(1,0,-1); ’out’是一个结构变量,包含: iterations(迭代次数), funcCount (函数调用次数), algorithm(所用算法) 一般形式 [x, fv, ef, out] = fzero(@f, x0, opt, P1, P2, ... ) 必须输入: ’f’为f.m函数名,’x0’是迭代初值(或有根区间) 输出: ’x’是变号点的近似值(函数不连续时不一定是根) 演示: examFzero.m fso

文档评论(0)

ipbohn97 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档