实验四 MATLAB数值计算.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验四 MATLAB数值计算 一、实验目的 1.掌握数据统计和分析的方法 2.掌握数据插值和曲线拟合的方法 3.掌握求数值导数和数值积分的方法 4.掌握代数方程数值求解的方法 5.掌握常微分方程数值求解的方法 二、实验内容 1.利用matlab提供的rand函数生成30,000个符合均匀分布的随机数,然后检验随机数的性质: 均值和标准方差; 最大元素与最小元素; 大于0.5的随机数个数占总数额百分比。 x=rand(1,30000); Mean=mean(x) %均值 Std=std(x,0,2)%标准方差 MAX=max(x) %最大值 MIN=min(x) %最小值 n=sum(x0.5); percentage=n/30000 %大于0.5的随机数个数占总数额百分比 Mean = 0.5023 Std = 0.2886 MAX = 1.0000 MIN = 2.4530e-005 percentage = 0.5063 2.按下表用3次样条方法插值计算0~900范围内整数点的正弦值和0~750范围内整数点的正切值,然后用5次多项式拟合方法计算相同的函数值,并将两种计算结果进行比较。 a度 0 15 30 45 60 75 90 Sina 0 0.2588 0.5000 0.7071 0.8660 0.9659 1.0000 Tana 0 0.2679 0.5774 1.0000 1.7320 3.7320 t1=0:15*pi/180:0.5*pi; t2=0:15*pi/180:75*pi/180; Sina=[0,0.2588,0.5,0.7071,0.866,0.9659,1]; Tana=[0,0.2679,0.5774,1,1.732,3.732]; x1=0:pi/180:0.5*pi; %3次样条插值 x2=0:pi/180:5/12*pi; T1=interp1(t1,Sina,x1,spline); T2=interp1(t2,Tana,x2,spline); p1=polyfit(t1,Sina,5); %多项式拟合 disp(p1) L1=polyval(p1,t1); p2=polyfit(t2,Tana,5); disp(p2) L2=polyval(p2,t2); x=linspace(0,2*pi,100); subplot(2,1,1); plot(t1,L1,:o,x1,T1,-+,x,sin(x)); title(sin(x)); axis([0,0.5*pi,0,1]); subplot(2,1,2); plot(t2,L2,-*,x2,T2,:.,x,tan(x)); title(tan(x)) axis([0,5/12*pi,0,4]); sin(x)、tan(x)的5次多项式拟合的系数为: 0.0054 0.0075 -0.1745 0.0036 0.9994 0.0000 4.3197 -10.2021 9.2877 -3.2591 1.4027 0.0000 3.(1)求函数在点的数值导数。 x=pi*[1/6,1/4,1/3,1/2]; DX=pi*[1/6,1/12,1/12,1/6]; y=inline(sin(x).^3+cos(x).^3); df=diff(y([0,x]))./DX df = -0.4306 -0.2575 0.2575 0.4306 (2)用数值方法求积分 g=inline(log(1+x)./(1+x.^2)); I=quadl(g,0,1) I = 0.2722 4. 求方程 在附近的根。 f=inline(3*x+sin(x)-exp(x)); fzero(fz,1.5) ans = 1.8900 5. 求函数在(0,1)内的最小值。 f=inline((x.^3+cos(x)+x.*log(x))./exp(x)); [x,fval]=fminbnd(f,0,1) x = 0.5223 fval = 0.3974 6. 求微分方程的数值解,并绘制解的曲线 先建立函数文件sys.m function dy=sys(t,y) dy=zeros(3,1); dy(1)=y(2)*y(3); dy(2)=-y(1)*y(3); dy(3)=-0.51*y(1)*y(2); 取tf=20,再输入命令: t0=0; tf=20; [t,y]=ode45(sys,[t0,tf],[0,1,1]); plot(t,y(:,1),t,y(:

文档评论(0)

189****1013 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档