资源描述:
《数值分析试题》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、1.设有某实验数据如下:0.10.20.30.40.50.60.70.80.95.12345.30535.56845.93786.42707.07987.94939.025310.3627(1)在MATLAB中作图观察离散点的结构,用最小二乘法拟合一个合适的多项式函数;(2)在MATLAB中作出拟合曲线图.解:(1)在MATLAB中作图观察离散点的结构,用最小二乘法拟合一个合适的多项式函数。具体程序如下:>>x=[0.10.20.30.40.50.60.70.80.9];>>y=[5.12345.30535.56845.93786.42707.079
2、87.94939.025310.3627];>>plot(x,y,'r+'),legend('x,y'),xlabel('x'),ylabel('y'),title('(x,y)的散点结构图')从图中各点可以看到,(x,y)散点结构图的变化趋势与二次多项式很接近,故选取曲线函数为二次多项式函数,拟合多项式的次数为2。用最小二乘法拟合一个合适的多项式函数,具体程序如下:>>s=polyfit(x,y,2);>>P=poly2str(s,'t')P=8.2191t^2-1.8822t+5.3139则曲线函数为发f(x)=8.2192t2-1.8822t+
3、5.3139(2)在MATLAB中作出拟合曲线图,具体程序如下:>>x=linspace(0.1,0.9,9);>>y=8.2191.*x.^2-1.8822.*x+5.3139;>>plot(x,y),legend('x,y'),xlabel('x'),ylabel('y'),title('拟合曲线y=f(x)')2.在MATLAB中用复合Simpson公式编程计算下列积分,并使其结果至少有6位有效数字.解:(1)所安装的MATLAB中不含有复合辛普森程序,用M文件编辑器编写被积函数的M文件,并以jfSimpson.m命名保存至MATLAB搜索路径
4、下。程序如下:function[I,step]=jfSimpson(f,a,b,type,eps)%type=1辛普森公式%type=2复合辛普森公式if(type==2&&nargin==8)eps=1.0e-8;%缺省精度为0.0001endI=0;switchtypecase1,I=((b-a)/6)*(subs(sym(f),findsym(sym(f)),a)+...4*subs(sym(f),findsym(sym(f)),(a+b)/2)+...subs(sym(f),findsym(sym(f)),b));step=1;case2,n
5、=2;h=(b-a)/2;I1=0;I2=(subs(sym(f),findsym(sym(f)),a)+subs(sym(f),findsym(sym(f)),b))/h;whileabs(I2-I1)>epsn=n+1;h=(b-a)/n;I1=I2;I2=0;fori=0:n-1x=a+h*i;x1=x+h;I2=I2+(h/6)*(subs(sym(f),findsym(sym(f)),x)+...4*subs(sym(f),findsym(sym(f)),(x+x1)/2)+...subs(sym(f),findsym(sym(f)),x1
6、));endendI=I2;step=n;end(2)在命令窗口中,调用jfSimpson函数进行求解。命令窗口显示如下:>>[I,s]=jfSimpson(inline('exp(x.^2)'),0,2,2,1.0e-8)I=16.4526s=102说明:求解积分函数为16.4526。3.在MATLAB中试用经典四阶Runge-Kutta法编程求解初值问题解:(1)用M文件编辑器将RK4.m、RK_fun.m、RK_main.m的主程序命名并保存至MATLAB搜索路径下。主程序如下:RK4.mfunction[t,y]=RK4(func,t0,tt
7、,y0,N,varagin)%Rk方法计算一阶级微分方程组,%由微分方程知识可以知道,对于高阶微分方程可以化为一阶微分方程组。%初始时刻为t0,结束时为tt,初始时刻函数值为y0%N为步数ifnargin<4N=100end%如果没有输入N的话,那么默认计算步长为(tt-t0)/100y(1,:)=y0(:)';h=(tt-t0)/N;%步长t=t0+[0:N]'*h;fork=1:Nf1=h*feval(func,t(k),y(k,:));f1=f1(:)';%RK中的k1f2=h*feval(func,t(k)+h/2,y(k,:)+f1/2);
8、f2=f2(:)';%RK中的k2f3=h*feval(func,t(k)+h/2,y(k,:)+f2/2)