matlab编程软件工程硕士试题及答案.doc_第1页
matlab编程软件工程硕士试题及答案.doc_第2页
matlab编程软件工程硕士试题及答案.doc_第3页
matlab编程软件工程硕士试题及答案.doc_第4页
matlab编程软件工程硕士试题及答案.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

解答一已知观察数据 -2-101201320作图可见散点分布接近抛物线,试求它的拟合二次曲线。 首先绘制关于变化的散点图,利用matlab编写程序代码如下: x=-2-1012; y=0 1 320; plot(x,y)得到图形如图一:图一 以下是利用matlab拟合工具箱得到的结果:y = p1*x2 + p2*x +p3 Coefficients: p1 = -0.64286 p2 = 0.1 p3 = 2.4857Norm of residuals = 0.95618故所求方程为:1 用欧拉法解初值问题y=5x1-y 0x1.0y0=0 y(0)=0;x=-2:1:2;h=0.1;for k=1:10用欧拉方法与改进的欧拉方法求初值问题在区间0,1上取的数值解。解欧拉方法的计算公式为现用matlab编程,程序如下 x0=0;y0=0;x(1)=0.1;y(1)=y0+0.1*5*x0*(1-y0);for n=1:9 x(n+1)=0.1*(n+1); y(n+1)=y(n)+0.1*5*x(n)*(1-y(n); end; xY得到结果如下:x = Columns 1 through 9 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.7000 0.8000 0.9000 Column 10 1.0000y = Columns 1 through 9 0 0.0500 0.1450 0.2732 0.4186 0.5639 0.6948 0.8016 0.8810 Column 100.9345 X与y一一对应。这便是利用欧拉数值求解法求解一阶线性微分方程的结果。三2 写出计算线性代数方程组的G-S迭代格式,并分析此迭代格式的收敛性。 解:在命令中调用函数e.mA=3,1,3;1,3,3;-3,2,3;B=4,-1,2;x,n=e(A,B,0,0,0,1.0e-6)3 四设的已知值为:,请用二次插值多项式计算的近似值,结果取四位有效数字。取步长h=0.1,保留5位有效数字,并与准确解比较。设二次拟合方程为:y = p1*x2 + p2*x +p3 (*)则x=1时,y=0.8415,x=1.5时,y=0.9975,x=2时,y=0.9093。此时用Maltab拟合工具箱求解拟合出来的函数关系式为插值关系式,将三组对应关系代入(*)式可得差值结果为:y = p1*x2 + p2*x + p3 Coefficients: p1 = -0.4884 p2 = 1.533 p3 = -0.2031Norm of residuals = 7.4476e-016由此求得在x=1.8处的插值结果为0.9739。如图二,为插值曲线图二取步长h=0.1,保留5位有效数字,代码如下:clearclcformat long x=1:0.1:2;for i=1:11 y1(i)=-0.4884*x(i)2+1.533*x(i)-0.2031; y2(i)=sin(x(i);end其中,y1为插值结果,y2为准确值,得到结果如下:y1 = Columns 1 through 4 0.841500000000000 0.892236000000000 0.933204000000000 0.964404000000000 Columns 5 through 8 0.985836000000000 0.997500000000000 0.999396000000000 0.991524000000000 Columns 9 through 11 0.973884000000000 0.946476000000000 0.909300000000000y2 = Columns 1 through 4 0.841470984807897 0.891207360061435 0.932039085967226 0.963558185417193 Columns 5 through 8 0.985449729988460 0.997494986604054 0.999573603041505 0.991664810452469 Columns 9 through 11 0.973847630878195 0.946300087687414 0.909297426825682y1与y2之差y3如下:ans = Columns 1 through 4 0.000029015192103 0.001028639938565 0.001164914032774 0.000845814582807 Columns 5 through 8 0.000386270011540 0.000005013395946 -0.000177603041506 -0.000140810452469 Columns 9 through 11 0.000036369121805 0.000175912312585 0.000002573174318我们可以看到,采用二次多项式插值的办法来逼近sinx在1,2内的结果精确度还是很高的。七请用LU分解法求解方程组Ax=b,其中。利用Matlab求解建立的M文件如下:function y=LU(A,B);A=2 3 3;4 7 7;-2 2 5;B=3 2 -7;n=length(A); A=A B; for k=1:n-1; for i=k:n; if(abs(A(i,k)=max(abs(A(k:n,k) P(k)=i; temp=A(k,:); A(k,:)=A(i,:); A(i,:)=temp; end end for j=k+1:n; A(j,k)=A(j,k)/A(k,k); A(j,k+1:n+1)=A(j,k+1:n+1)-A(j,k)*A(k,k+1:n+1); endendP(n)=n; L(1,1)=1; L(2:n,1)=A(2:n,1);L(1,2:n)=0;U(1,1)=A(1,1); U(2:n,1)=0;U(1,2:n)=A(1,2:n); for i=2:n; L(i,1:i-1)=A(i,1:i-1); L(i,i)=1; L(i,i+1:n)=0; U(i,1:i-1)=0; U(i,i:n)=A(i,i:n);end x(n) = A(n,n+1)/U(n,n); for k = n-1:-1:1 x(k)=A(k,n+1);for p=n:-1:k+1;x(k) = x(k)-U(k,p)*x(p); end x(k)=x(k)/U(k,k); endxLUP得到运行结果如下:x = 7.5000 -9.3333 5.3333L = 1.0000 0 0 -0.5000 1.0000 0 0.5000 -0.0909 1.0000U = 4.0000 7.0000 7.0000 0 5.5000 8.5000 0 0 0.2727P = 2 3 3故所求解为:X= 7.5000 -9.3333 5.3333十一计算积分 的值。原式=十二给定数据x0.10.20.3f(x)5.12345.30535.5684用最小二乘法求与给定数据相拟合的一次多项式利用最小二乘法求解的matlab代码如下: x=0.1 0.2 0.3; y=5.12345.30535.56

温馨提示

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

评论

0/150

提交评论