数值分析试题_第1页
数值分析试题_第2页
数值分析试题_第3页
数值分析试题_第4页
数值分析试题_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

1、WORD格式整理专业资料值得拥有1. 设有某实验数据如下:x0.10.20.30.40.50.60.70.80.9y5.125.305.565.936.427.077.949.0210.36345384787098935327(1) 在MATLAB作图观察离散点的结构,用最小二乘法拟合一个合 适的多项式函数;(2) 在MATLAB作出拟合曲线图.解:(1)在MATLAB作图观察离散点的结构,用最小二乘法拟 合一个合适的多项式函数。具体程序如下: x=0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9; y=5.1234 5.3053 5.5684 5.9378 6.4270

2、 7.0798 7.9493 9.0253 10.3627; plot(x,y,r+),lege nd(x,y),xlabel(x),ylabel(y),title(x,y)的散点结构图)(x,y)的散点结构图11- x,y104- 从图中各点可以看到,(x,y )散点结构图的变化趋势与二次多项式 很接近,故选取曲线函数为二次多项式函数,拟合多项式的次数为25 L0.10.20.30.40.50.60.70.80.9用最小二乘法拟合一个合适的多项式函数,具体程序如下: s=polyfit(x,y,2); P=poly2str(s,t)8.2191 tA2 - 1.8822 t + 5.3139

3、 2则曲线函数为发 f(x)=8.2192t -1.8822t+5.3139(2)在MATLAB作出拟合曲线图,具体程序如下: x=li nspace(0.1,0.9,9);拟合曲线y=f(x) y=8.2191.*x.A2-1.8822.*x+5.3139; plot(x,y),lege nd(x,y),xlabel(x),ylabel(y),title(11y拟合曲线y=f(x)x,y1060.20.30.40.50.60.70.850.1x0.92. 在MATLAB用复合Simpson公式编程计算下列积分,并使其结 果至少有6位有效数字.2 x28I e dx (eps=1O()解:(1

4、)所安装的MATLAB不含有复合辛普森程序,用 M文件编辑器编写被积函数的 M文件,并以jfSimpson.m命名保存至MATLAB搜索路径下。程序如下:fun cti onl,step = jfSimps on( f,a,b,type,eps)%type = 1辛普森公式%type = 2 复合辛普森公式if (type=2 & nargin=8) eps=1.0e-8;endI=0;switch typecase 1,l=(b-a)/6)*(subs(sym(f),fi ndsym(sym(f),a)+.4*subs(sym(f),fi ndsym(sym(f),(a+b )/2) +.s

5、ubs(sym(f),fi ndsym(sym(f),b);step=1;case 2,n=2;h=(b-a)/2;I1=0;I2=(subs(sym(f),fi ndsym(sym(f),a)+subs(sym(f),fi ndsym(sym(f),b)/h; while abs(I2-I1)epsn=n+1;h=(b-a)/n;I1=I2;I2=0;for i=0:n-1x=a+h*i;x1=x+h;I2=I2+(h/6)*(subs(sym(f),fi ndsym(sym(f),x)+4*subs(sym(f),fi ndsym(sym(f),(x+x1)/2)+subs(sym(f),

6、fi ndsym(sym(f),x1); endend1=12;step=n;end(2)在命令窗口中,调用jfSimpson函数进行求解。命令窗口显示如下: l,s=jfSimpso n(i nlin e(exp(x.A2),0,2,2,1.0e-8)16.4526102说明:求解积分函数为16.4526。3. 在MATLAB试用经典四阶Runge-Kutta法编程求解初值问题y = -3 y2 2x2 3x , 0 二 x 二 1y(o)解:(1)用M文件编辑器将 RK4.m RK_fun.m、RK_main.m的主程序命名并保存至MATLA搜索路径下。主程序如下:RK4.mfun cti

7、 on t,y = RK4(fu nc,t0,tt,y0,N,varag in)% Rk方法计算一阶级微分方程组,%由微分方程知识可以知道,对于高阶微分方程可以化为一阶微分方程组。%初始时刻为to ,结束时为tt,初始时刻函数值为 y0% N为步数 if nargin RK_mai nans=4. 在MATLAB利用Newton法编程计算方程 x lnx=2的一个根.解:(1)所安装的MATLAB不含有newton.m程序,用M文件编辑器编写被积函数的 M文件,并以newtonqxf.m命名保存至MATLAB 搜索路径下。程序如下:fun cti on root=n ewt onq xf(f,

8、a,b,eps)%牛顿法求函f数在区间a,b上的一个零点% f为函数名%a为区间左端点%b为区间右端点% eps为根的精度% root为求岀的函数零点if (nargin=3)eps=1.0e-4;endf1=subs(sym(f),fi ndsym(sym(f),a); f2=subs(sym(f),fi ndsym(sym(f),b); if (f1=0)root=a;endif (f2=0)root=b;end if (f1*f20)disp(两端点函数值乘积大于0!);return ;elsetol=1;fun=diff(sym(f);fa=subs(sym(f),fi ndsym(s

9、ym(f),a); fb=subs(sym(f),fi ndsym(sym(f),b); dfa=subs(sym(fu n),fi ndsym(sym(fu n) ),a); dfb=subs(sym(fu n),fi ndsym(sym(fu n) ),b);if (dfadfb)root=a-fa/dfa;elseroot=b-fb/dfb;endwhile (toleps)r1=root;fx=subs(sym(f),fi ndsym(sym(f),r1); dfx=subs(sym(fu n),fi ndsym(sym(fu n),r1); root=r1-fx/dfx;tol=ab

10、s(root-r1);endend(2)在命令窗口中,调用newtonqxf函数进行求解。命令窗口显示如下: root= newt on qxf(x-log(x)-2,3,1.0e-9) root =3.14625. 已知线性方程组5x1 2x2 X3 = -12厂一捲 4x2 2x3 = 102x1 - 5x210 x3 = 1(1)利用MATLA说明解该方程组的 Gauss-Seidel迭代法是否收敛;(2)在MATLAB利用Gauss-Seidel迭代法求解该方程组,并给出迭代次数.解:通过M文件编辑器加入gauseidel.m函数程序,如下:fun cti onx,n=gauseide

11、l(A,b,x0,eps,M)%求解线性方程组的迭代法,其中,% A为方程组的系数矩阵;% b为方程组的右端项;% x0为迭代初始化向量% eps为精度要求,缺省值为1e-5;% M为最大迭代次数 % x为方程组的解;% n为迭代次数;if nargin=3eps= 1.0e-6;M = 200;elseif n arg in = 4M = 200;elseif n arg in=epsx0=x;x=G*x0+f;n=n+1;if (n=M)%迭代次数disp(Warning:迭代次数太多,可能不收敛!);return ;endend(1)在命令窗口中,输入程序如下: A=5,2,1;-1,4,2;2,-5,10A =521-1422-510 D=diag(diag(A)D =5000400010 L=-tril(A,1)L =-5-201-4-2-25-10 U=-triu(A,1)U =0 -2 -10 0 -20 0 0 G=(D-L)UG =

温馨提示

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

评论

0/150

提交评论