欢迎来到天天文库
浏览记录
ID:18323019
大小:110.11 KB
页数:9页
时间:2018-09-16
《数值分析实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数值分析——上机实验报告班级:06110801学号:0611080111姓名:成军指导老师:李建良课程名称:数值分析班级和姓名:0611080111成军实验1:曲线拟合问题的数值试验一、摘要和引言:1对实验数据(xi,yi)i=1,2,3…..N利用最小二乘法原理,编制确定拟合多项式Pn(x)=a0+a1x+a2x2+a3x3+…..+anxnn<2、9987250.9983500.9996拟合多项式Pn(x)=a0+a1x+a2x2+……+anxn分别对n=2,3,4,5,6进行数值计算,且根据各自的偏差平方和进行分析拟合效果。二、数学模型:polyfit()是Matlab提供的最小二乘多项式数据拟合函数,其调用格式为P=polyfit(X,Y,n)其中参数X和Y均为向量,分别由数据点(xi,yi)的横坐标、纵坐标构成,n为多项式的次数,返回值p为多项式的系数,顺序由高次向低次。拟合多项式在x处的值y可按如下调用格式计算Y=polyval(p,x)给出数据点x=[x1,x2,x3,…,xm]Y=[y1,y2,y3,…ym]拟合多项3、式pn(x)=anxn+an-1xn-1+…+a1x+a0(n>x=[5101520253035404550];y=[1.00291.00231.00000.99900.99830.99790.99780.99810.99870.9996]4、;>>p2=polyfit(x,y,2)输出:p2=0.0000-0.00041.0054N=3时>>x=[5101520253035404550];y=[1.00291.00231.00000.99900.99830.99790.99780.99810.99870.9996];p3=polyfit(x,y,3)输出:p3=0.00000.0000-0.00041.0050N=4时>>x=[5101520253035404550];y=[1.00291.00231.00000.99900.99830.99790.99780.99810.99870.9996];>>p4=polyfit(5、x,y,4)输出:p4=-0.00000.0000-0.0000-0.00011.0039N=5时>>x=[5101520253035404550];y=[1.00291.00231.00000.99900.99830.99790.99780.99810.99870.9996];>>p5=polyfit(x,y,5)输出:p5=0.0000-0.00000.0000-0.00010.00071.0015N=6时>>x=[5101520253035404550];y=[1.00291.00231.00000.99900.99830.99790.99780.99810.99870.99966、];>>p6=polyfit(x,y,6)输出:Warning:Polynomialisbadlyconditioned.RemoverepeateddatapointsortrycenteringandscalingasdescribedinHELPPOLYFIT.>Inpolyfitat79p6=-0.00000.0000-0.00000.0000-0.00040.00260.9966一、结果和讨论:用此函数编译时,由于精度不够的问题导致出现-0.0000等问题,所以不能完全把曲线拟合出来。试验2:数值积分的数值试验题一、问题:写出一个如下的计算∫f(x)dx的子程序:先将区间[a7、,b]细分成n个相等的子区间,然后使用经过修改的适用于n个不同子区间的三点高斯Gauss公式,并用下面的题目测试你所编的程序。∫10x5dxn=1,2,10二、引言:何使用三点Gauss公式求解数值积分的问题三、数学模型以01x^5dx为例,将(0,1)区间分成n份(n=1,2,10),分别对每个区间使用三点Gauss公式,再将结果相加,算法如下:(1)输入n值,将区间分为n份(2)做变量替换,将区间转化为(-1,1)(3)在每份中使用Gaus
2、9987250.9983500.9996拟合多项式Pn(x)=a0+a1x+a2x2+……+anxn分别对n=2,3,4,5,6进行数值计算,且根据各自的偏差平方和进行分析拟合效果。二、数学模型:polyfit()是Matlab提供的最小二乘多项式数据拟合函数,其调用格式为P=polyfit(X,Y,n)其中参数X和Y均为向量,分别由数据点(xi,yi)的横坐标、纵坐标构成,n为多项式的次数,返回值p为多项式的系数,顺序由高次向低次。拟合多项式在x处的值y可按如下调用格式计算Y=polyval(p,x)给出数据点x=[x1,x2,x3,…,xm]Y=[y1,y2,y3,…ym]拟合多项
3、式pn(x)=anxn+an-1xn-1+…+a1x+a0(n>x=[5101520253035404550];y=[1.00291.00231.00000.99900.99830.99790.99780.99810.99870.9996]
4、;>>p2=polyfit(x,y,2)输出:p2=0.0000-0.00041.0054N=3时>>x=[5101520253035404550];y=[1.00291.00231.00000.99900.99830.99790.99780.99810.99870.9996];p3=polyfit(x,y,3)输出:p3=0.00000.0000-0.00041.0050N=4时>>x=[5101520253035404550];y=[1.00291.00231.00000.99900.99830.99790.99780.99810.99870.9996];>>p4=polyfit(
5、x,y,4)输出:p4=-0.00000.0000-0.0000-0.00011.0039N=5时>>x=[5101520253035404550];y=[1.00291.00231.00000.99900.99830.99790.99780.99810.99870.9996];>>p5=polyfit(x,y,5)输出:p5=0.0000-0.00000.0000-0.00010.00071.0015N=6时>>x=[5101520253035404550];y=[1.00291.00231.00000.99900.99830.99790.99780.99810.99870.9996
6、];>>p6=polyfit(x,y,6)输出:Warning:Polynomialisbadlyconditioned.RemoverepeateddatapointsortrycenteringandscalingasdescribedinHELPPOLYFIT.>Inpolyfitat79p6=-0.00000.0000-0.00000.0000-0.00040.00260.9966一、结果和讨论:用此函数编译时,由于精度不够的问题导致出现-0.0000等问题,所以不能完全把曲线拟合出来。试验2:数值积分的数值试验题一、问题:写出一个如下的计算∫f(x)dx的子程序:先将区间[a
7、,b]细分成n个相等的子区间,然后使用经过修改的适用于n个不同子区间的三点高斯Gauss公式,并用下面的题目测试你所编的程序。∫10x5dxn=1,2,10二、引言:何使用三点Gauss公式求解数值积分的问题三、数学模型以01x^5dx为例,将(0,1)区间分成n份(n=1,2,10),分别对每个区间使用三点Gauss公式,再将结果相加,算法如下:(1)输入n值,将区间分为n份(2)做变量替换,将区间转化为(-1,1)(3)在每份中使用Gaus
此文档下载收益归作者所有