您好,欢迎访问三七文档
数值分析课程实验3-4实验题目:曲线拟合与数值积分实验内容:1.下面是一处地质岩层断面上部边缘的深度测量数据。水平距离x(km):00.201.002.103.505.006.807.509.0011.212.0深度y(m):1.641.581.681.841.580.860.390.310.390.770.86表11.1试利用复化的梯形求积法求该组数据所在曲线与基准线(x轴)在范围0,12内所围成图形面积.画出数据散点图和图形的示意图.1.2试利用复化的Simpson求积法求该组数据所在曲线与基准线(x轴)在范围0,9内所围成图形面积.画出数据散点图和图形的示意图.1.3试利用复化的Simpson求积法求该组数据所在曲线与基准线(x轴)在范围0,12内所围成图形面积(问题1.2的扩展).画出数据散点图和图形的示意图.1.4用最小二乘法拟合该组数据,画出数据散点图和拟合曲线图形.1.5利用Matlab函数csape求该组数据的三次样条插值函数,其中,边界条件为端点处的斜率(一阶边界条件),可用端点处相邻两点连线斜率代替,画出数据散点图和插值曲线图形.1.6利用1.4得到的拟合曲线函数和Matlab方法quad求介于该曲线与x轴之间区域的面积。1.7利用1.5得到的三次样条函数和Matlab方法quad求介于该曲线与x轴之间区域的面积。1.8利用MonteCarlo法求1.6和1.7所论面积问题(注:各做100n次试验,取平均值作为面积值)。1.9利用Matlab函数int计算下列函数在区间0,9和0,12上的积分。1221cos13xxyxe(1)并以该积分值为基准,分别和1.1-1.3,1.6-1.8所求面积值进行比较,分析差异和差异大小的原因。1.复化的梯形求积法,面积为11.609005101500.511.52-20246810121400.20.40.60.811.21.41.61.82XY2.复化的Simpson求积法,在[0,9]上的面积为9.7478051000.511.52-2024681000.20.40.60.811.21.41.61.82XY3.复化的Simpson求积法,在[0,12]上的面积为11.912805101500.511.52-20246810121400.20.40.60.811.21.41.61.82XYclc;clearall;%X=[00.201.002.103.505.006.807.509.0011.212.0];%第一问,第三问,范围在[0,12]%Y=[1.641.581.681.841.580.860.390.310.390.770.86];X=[00.201.002.103.505.006.807.509.00];第二问,范围在[0,9]Y=[1.641.581.681.841.580.860.390.310.39];YL=0;n=length(X);%复化梯形求积%fori=1:n-1%h=X(i+1)-X(i);%L=2\h*(2*(Y(i+1)+Y(i))-Y(i)-Y(i+1));%YL=YL+L;%end%disp('复化梯形求积法求得的面积为:')%simpson求积fori=1:2:n-2h=X(i+2)-X(i);L=6\h*(2*(Y(i+2)+Y(i))-Y(i)-Y(i+2)+4*Y(i+1));YL=YL+L;enddisp('复化Simpson求积法求得的面积为:')YLset(gca,'FontSize',20)figure(1)plot(X,Y,'g*','LineWidth',5,'markersize',5)figure(2)plot(X,Y,X,0*X,'k','LineWidth',5,'markersize',5)axissquareholdonpatch([X(1)XX(end)],[0Y0],'y')xlabel('X')ylabel('Y')Dx=2;xlim([X(1)-Dx,X(end)+Dx])4用最小二乘法拟合该组数据,画出数据散点图和拟合曲线图形.051000.511.52最小二乘法拟合XYclc;clearall;X=[00.201.002.103.505.006.807.509.0011.212.0];Y=[1.641.581.681.841.580.860.390.310.390.770.86];P=polyfit(X,Y,9);F=polyval(P,X);set(gca,'FontSize',20)plot(X,Y,'k*','LineWidth',3,'markersize',5)axissquareholdonplot(X,F,'LineWidth',3,'markersize',5)title('最小二乘法拟合')xlabel('X')ylabel('Y')Dx=2;xlim([X(1)-Dx,X(end)+Dx]);5利用Matlab函数csape求该组数据的三次样条插值函数,其中,边界条件为端点处的斜率(一阶边界条件),可用端点处相邻两点连线斜率代替,画出数据散点图和插值曲线图形.051000.511.52三次样条插值clc;clearall;X=[00.201.002.103.505.006.807.509.0011.212.0];Y=[1.641.581.681.841.580.860.390.310.390.770.86];PP=csape(X,Y,'complete',[-1,0.001]);fnplt(PP,3,[-0.1,12.1])xlim([-0.1,12.1])holdonset(gca,'FontSize',20)plot(X,Y,'k*','LineWidth',3,'markersize',5)axissquaretitle('三次样条插值')6利用1.4得到的拟合曲线函数和Matlab方法quad求介于该曲线与x轴之间区域的面积。%问题6求面积P=poly2sym(P);P=simple(P);P=matlabFunction(P);disp('由拟合曲线求得的区域的面积为:')S=quad(P,0,12)%用MonteCarlo法a=X(1);b=X(end);m=100000;n=100;fork=1:nx=unifrnd(a,b,1,m);I(1,k)=(b-a)*sum(P(x))/m;endformatlongdisp('由拟合曲线,用MonteCarlo法求得的区域的面积为:')Int=mean(I)formatshort7利用1.5得到的三次样条函数和Matlab方法quad求介于该曲线与x轴之间区域的面积。%问题7Coefs=PP.coefs;S=0;fork=1:length(X)-1P=poly2sym(Coefs(k,:));P=simple(P);P=matlabFunction(P);s=quad(P,X(k),X(k+1));S=S+s;enddisp('由所得三次样条函数求得的区域的面积为:')S%问题8用MonteCarlo法Int=0;fori=1:length(X)-1P=poly2sym(Coefs(i,:));P=simple(P);P=matlabFunction(P);a=X(i);b=X(i+1);m=10000;n=100;fork=1:nx=unifrnd(a,b,1,m);I(1,k)=(b-a)*sum(P(x))/m;endformatlongInt=mean(I)+Int;formatshortenddisp('由所得三次样条函数,用MonteCarlo法求得的区域的面积为:')Int8利用MonteCarlo法求1.6和1.7所论面积问题(注:各做100n次试验,取平均值作为面积值)。9利用Matlab函数int计算下列函数在区间0,9和0,12上的积分。1221cos13xxyxe(1)并以该积分值为基准,分别和1.1-1.3,1.6-1.8所求面积值进行比较,分析差异和差异大小的原因。
本文标题:数值分析3
链接地址:https://www.777doc.com/doc-2387450 .html