哈工大MATLAB选修课第2次小作业_第1页
哈工大MATLAB选修课第2次小作业_第2页
哈工大MATLAB选修课第2次小作业_第3页
哈工大MATLAB选修课第2次小作业_第4页
哈工大MATLAB选修课第2次小作业_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 1. 表1 用三次样条方法插值计算0-90 度内整数点的sin 值和0-75 度内整数点的正切值,然后用5 次多项式拟合方法计算相同的函数。a(度) 0 15 30 45 60 75 90Sin(a) 0 0.2588 0.5000 0.7071 0.8660 0.9659 1.0000tan(a) 0 0.2679 0.5774 1.0000 1.7320 3.732解:分别对应的程序如下:正弦函数: x = pi*(0:90)/180; y = sin(x); xx = pi*(0:.25:90)/180; yy = spline(x,y,xx); plot(x,y,'o'

2、;,xx,yy)正切函数: x = pi*(0:75)/180; y = tan(x); xx = pi*(0:.25:75)/180; yy = spline(x,y,xx); plot(x,y,'o',xx,yy)正弦拟合:figurex=pi*(0:15:90)/180;y=0,0.2588,0.5,0.7071,0.866,0.9659,1.0;xx=pi*(1:0.05:90)/180;p2=polyfit(x,y,5);yy=polyval(p2,xx);plot(x,y,'-ro',xx,yy);正切拟合:figurex=pi*(0:15:75)/

3、180;y=0,0.2679,0.5774,1,1.732,3.732;xx=pi*(1:0.05:75)/180;p2=polyfit(x,y,5);yy=polyval(p2,xx);plot(x,y,'-ro',xx,yy);legend('描点显示','五次拟合')2. 采用最近点法、线性法和3 次样条法插值计算1-100 整数间平方根 n 1 4 9 16 25 36 49 64 81 100Sqtr(n)1 2 3 4 5 6 7 8 9 10解:程序如下:x=1,4,9,16,25,36,49,64,81,100;y=1,2,3,4

4、,5,6,7,8,9,10;xx=1:100;yy=interp1(x,y,xx)subplot(2,2,1)plot(x,y,'-ro',xx,yy,'dr');title('线性法');subplot(2,2,2);y2=interp1(x,y,xx,'nearest'); plot(x,y,'-ro',xx,y2,'dr');title('最近点法')subplot(2,2,3);y3=interp1(x,y,xx,'spline');plot(x,y,'

5、;-ro',xx,y3,'dr');title('3次样条法')仿真的结果:3. 已知p(x)=2x4-3x3+5x+13,求p(x)的全部根,由方程p(x)=0 的根构造一个多项式f(x),并和p(x)比较。解:程序如下:P=2,-3,0,5,13;Y=poly2str(P,'X');K=roots(P);L=poly(K);F=poly2str(L,'x');原函数Y,运行后得到根K,用根构造的函数F为如下:4. 有两个多项式p(x)=2x4-3x3+5x+13;q(x)=x2+5x+8, 求p(x),p(x)q(x)

6、 和p(x)/q(x)的导数。解:对应的程序如下:P=2,-3,0,5,13;Q=1,5,8;format ratK1=polyder(P);K2=polyder(P,Q);p,q=polyder(P,Q);Dzi=poly2str(p,'x');Dmu=poly2str(q,'x');D1=poly2str(K1,'x');D2=poly2str(K2,'x');Dzi为P/Q导数的分子,Dmu为P/Q导数的分母;D1为P的导数,D2为P*Q的导数,运行的结果如下:5. 求解恰定方程组,采用左除法、求逆法、lu 和qr 分解法2

7、x+3y+5z=103x+7y+4z=3x-7y+z=5程序如下:A=2,3,5;3,7,4;1,-7,1;b=10;3;5;det(A);rank(A);x=Ab;Xx=inv(A)*b;L,U=lu(A);Q,R=qr(A);X=U(Lb);X1=R(Qb);相应的仿真的结果如下:x代表左除法,Xx代表求逆法,X表示LU法,X1表示QR分解法:6. 求解超定方程组,采用采用左除法、求逆法和最小二乘法2x-4y+10z=226x+5y-4z=325x-y+33z=10x+4y-76z=33对应的程序如下:A=2,-4,10;6,5,-4;5,-1,33;1,4,-76;b=22;32;10;

8、33;x=Ab;Xx=pinv(A)*b;X1=lsqnonneg(A,b);运行的结果如下:程序如下:z1=fzero('x41+x3+1',-1);z2=fzero('x-sin(x)./x',0.5);z3=fzero('3*x+sin(x)-exp(x)',1.5);结果如下:(1) 的函数为function q=myfun(p)x=p(1);y=p(2);q(1)=x2+y2-9;q(2)=x+y-1;再输入:x=fsolve('myfun',3,0',optimset('Display',

9、9;off')显示的结果如下:(2) 的函数如下:function q=fun1(p)x=p(1);y=p(2);z=p(3);q(1)=sin(x)+y2+log(z)-7;q(2)=3*x+2.y-z3+1;q(3)=x+y+z-5;End再输入:x=fsolve('fun1',1,1,1',optimset('Display','off')显示的结果如下:(1) 建立函数:function yp=fun2(t,y) %建立相应的函数yp=-(1.2+sin(10*t)*y;end再在命令窗口输入:t0=0;tf=5;y0=1

10、;t,y=ode23('fun2',t0,tf,y0); %求数值解 t,y得倒最后的结果为:最终t=5,y=0.0025(2)函数如下:function dy=zzd(t,y) dy=zeros(2,1); dy(1)=dy(2); dy(2)=(2-2.*t.*dy(1)-3.*y(1)./(1+t.2);end 再在命令窗口输入:t,y=ode23(zzd,0 5,0 1),t,y显示的结果为:(1)函数:function f=fe(x) f=1./(x-0.3)2+0.01)-1./(x-0.9)2+0.04)-6;End再输入:K=quad('fe',0,1)得到如下结果:(2)函数为:function f=fsk(t)%创建一个新函数 f=sqrt(cos(t.*t)+4*sin(2.*t).2)+1) ;%函数的表达式End再输入:L=quad('fsk',0,2*pi);得到如下结果:(1) 函数如下:function f=fxy(x,y)global ki;ki=ki+1; %ki用于统计被积函数的调用次数f=exp(-(x.2+y.2);end再输入:global ki;ki=0;I=dblquad('f

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论