曲线拟合实验报告
- 格式:doc
- 大小:388.50 KB
- 文档页数:9
曲线拟合实验报告[优秀范文5篇]第一篇:曲线拟合实验报告数值分析课程设计报告学生姓名学生学号所在班级指导教师一、课程设计名称函数逼近与曲线拟合二、课程设计目的及要求实验目的: ⑴学会用最小二乘法求拟合数据的多项式,并应用算法于实际问题。
⑵学会基本的矩阵运算,注意点乘与叉乘的区别。
实验要求: ⑴编写程序用最小二乘法求拟合数据的多项式,并求平方误差,做出离散函数与拟合函数的图形;⑵用MATLAB 的内部函数polyfit 求解上面最小二乘法曲线拟合多项式的系数及平方误差,并用MATLAB的内部函数plot作出其图形,并与(1)结果进行比较。
三、课程设计中的算法描述用最小二乘法多项式曲线拟合,根据给定的数据点,并不要求这条曲线精确的经过这些点,而就是拟合曲线无限逼近离散点所形成的数据曲线。
思路分析 : 从整体上考虑近似函数)(x p 同所给数据点)(i iy x , 误差i i iy x p r -=)(的大小,常用的方法有三种:一就是误差i i iy x p r -=)(绝对值的最大值im ir≤≤ 0max ,即误差向量的无穷范数;二就是误差绝对值的与∑=miir0,即误差向量的 1成绩评定范数;三就是误差平方与∑=miir02的算术平方根,即类似于误差向量的 2 范数。
前两种方法简单、自然,但不便于微分运算,后一种方法相当于考虑 2 范数的平方,此次采用第三种误差分析方案。
算法的具体推导过程: 1、设拟合多项式为:2、给点到这条曲线的距离之与,即偏差平方与:3、为了求得到符合条件的 a 的值,对等式右边求偏导数,因而我们得到了:4、将等式左边进行一次简化,然后应该可以得到下面的等式5、把这些等式表示成矩阵的形式,就可以得到下面的矩阵:⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡∑∑∑∑∑∑∑∑∑∑∑=====+==+====niininiiknikinikinikinikiniiniinikiniiyyyaax x xx x xx x11i11012111111211 1an MMΛM O M MΛΛ 6.将这个范德蒙得矩阵化简后得到⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡n kkn nkkyyyaaax xx xx x M MΛM O M MΛΛ21102 21 1111 7、因为 Y A X = * ,那么 X Y A / = ,计算得到系数矩阵,同时就得到了拟合曲线。
计算方法C(2014-2015-2)【不同拟合曲线的比较】实验报告学号:******* 姓名:*****8课程教师:戴克俭教学班级:无实验三 不同拟合曲线的比较实验目的:掌握曲线拟合和最小二乘法的思想,比较不同拟合曲线的精度。
实验题目:下表给出了我国1949~1984年间的一些人口数据,分别按下述方案求最小二乘拟合函数及其偏差平方和Q ,求1969年人口并预测方案I 拟合函数取如下形式的三次多项式3322101)(x a x a x a a x F +++=方案II 用离散正交多项式求三次拟合多项式)(2x F 方案III 用离散正交多项式求四次拟合多项式)(3x F 方案IV 拟合函数为如下形式的函数10sin)(4xb a x F π+=算法流程图如下:i、方案1 ii、方案2iii、方案3iv、方案4源程序清单如下:i、方案1图1:求3次多项式图2:求偏差ii、方案2图3:求3次多项式iii、方案3图4:求4次多项式图5:求sin(π*X/10)图6:nafit函数M文件图7:命令行输入运算结果如下:⑴、方案1P(X)=745181.85611415-1135.160413656X+0.576328328X^2-0.000097520X^3 P(1969)= 11.4973750142380600 亿P(2000)=14.3408021503128110亿图8 拟合曲线:蓝色线表示拟合曲线P(X),红色线表示真实数据误差很大⑵、方案2P(X)=732370.3125-1115.615844727X+0.566389024X^2-0.000095836X^3P(1969)= 4.1277828774182126亿P(2000)= 6.7190460005076602亿图9 拟合曲线:蓝色线表示拟合曲线P(X),红色线表示真实数据误差很大⑶、方案3P(X)=30212.5+320.9404296875X-0.5357236862X^2+0.0002799341X^3-0.000000048X^4P(1969)= 627.7665998683078200 亿P(2000)= 671.4145749998278900 亿图10 拟合曲线:蓝色线表示拟合曲线P(X),红色线表示真实数据蓝色线的数值全是上百亿与实际严重不符误差巨大⑷、方案4P(X)=0.2414+7.7753sin(π*X/10)P(1969)= 2.6441006951177228 亿P(2000)= 0.2413990828363674 亿图11 拟合曲线:蓝色线表示拟合曲线P(X),整体看该曲线具有和sin近似的周期性质,与实际数据不是很符合。
《数值分析》课程设计实验报告实验二函数逼近与曲线拟合一、问题提出从随机的数据中找出其规律性,给出其近似表达式的问题,在生产实践和科学实验中大量存在,通常利用数据的最小二乘法求得拟合曲线。
在某冶炼过程中,根据统计数据的含碳量与时间关系,试求含碳量与时间t 的拟合曲线。
二、实验步骤先写出线性最小二乘法的M文件function c=lspoly(x,y,m)% x是数据点的横坐标组成的向量,y是纵坐标组成的向量% m是要构成的多项式的次数,c是多项式由高到低次的系数所组成的向量n=length(x);b=zeros(1:m+1);f=zeros(n,m+1);for k=1:m+1f(:,k)=x.^(k-1);enda=f'*f;b=f'*y';c=a\b;c=flipud(c);方法一:近似解析表达式为:y(t)=a1t+a2t2+a3t3第二步在命令窗口输入:lspoly([0,5,10,15,20,25,30,35,40,45,50,55],[0,1.27,2.16,2.86,3.44 ,3.87,4.15,4.37,4.51,4.58,4.02,4.64],2)回车得到:ans =0.0000-0.00520.26340.0178即所求的拟合曲线为y=-0.0052t2+0.2634t+0.0178在编辑窗口输入如下命令:>>x=[0,5,10,15,20,25,30,35,40,45,50,55];y=[0,1.27,2.16,2.86,3.44, 3.87,4.15,4.37,4.51,4.58,4.02,4.64];>> t=0:0.1:55;>> z=-0.0052*t.^2+0.2634*t+0.0178;>> plot(x,y,'ro',t,z);grid命令执行得到如下图(图2-1)0102030405060拟合多项式与数据点的关系方法二:假设近似表达式为:y(t)=c0+c1t+c2t2第一步在命令窗口输入:>>lspoly([0,5,10,15,20,25,30,35,40,45,50,55],[0,1.27,2.16,2.86,3. 44,3.87,4.15,4.37,4.51,4.58,4.02,4.64],2)回车得到:ans =-0.00240.20370.2305即所求的拟合曲线为y=-0.0024t2+0.2037t+0.2305在编辑窗口输入如下命令:>>x=[0,5,10,15,20,25,30,35,40,45,50,55];y=[0,1.27,2.16,2.86,3.44,3.87,4.15,4.37,4.51,4.58,4.02,4.64];>> t=0:0.1:55;>> z=-0.0024*t.^2+0.2037*t+0.2305;>> plot(x,y,'ro',t,z);grid命令执行得到如下图(图2-2)拟合多项式与数据点的关系三、实验结论在利用数据的最小二乘法求拟合曲线时,选取合适的近似表达式很重要,应通过不断的试验找出较为合适的近似表达式,这样才能尽可能的提高拟合精度。
实验报告一·实验指导书解读本次实验是通过两个变量的多组记录数据利用最小二乘法寻求两个变量之间的函数关系!两个变量之间的函数关系要紧有两种:一是线性关系(一次函数);二是非线性关系(非一次的其它一元函数)。
因此本实验做两件事:一是线性拟合(练习1);二是非线性拟合(练习2、3、4)。
练习2是用多项式函数拟合,练习3是用指数函数、对数函数、双曲函数、三角函数、分式有理多项式函数等初等函数拟合,练习4是用分段函数(非初等函数)拟合。
二、实验打算1.用线性函数拟合程序线性拟合曲线ft1可由如下mathematica程序求出:lianxi1biao= { {100,45} , {110,51} , { 120,54} , {130,61} , {140,66} , {150,70} , {160,74} , {170,78} , {180,85} , {190,89} }ft1=Fit[lianxi1biao,{1,x},x]gp = Plot [ ft1 , {x,100,190} , PlotStyle -> { RGBColor[1,0,0]} ]fp = ListPlot [ lianxi1biao,PlotStyle->{PointSize[],RGBColor[0,0,1]} ]Show[fp,gp]a= ;b= ;f[x_]=a*x+b;dareta=Sum[(lianxi1biao[[i,2]]-f[lianxi1biao[[i,1]]])^2,{i,1,10}]修改、补充程序:要说明拟合成效,要紧从形(大多数散点是不是在拟合曲线上或周围)与量(残差是不是小)!计算残差的程序:假设对两个变量的多组记录数据已有程序biao={{x1,y1},{x2,y2},…,{xn,yn}}而且通过Fit取得线性拟合函数y=ax+b咱们能够先概念函数(程序)f[x_]:=a*x+b再给出计算残差的程序dareta=Sum[(biao[[i ,2]]-f[biao[[i ,1]]])^2,{i ,1, n}]程序说明:biao[[i]]是提取表biao的第i行,即{xi,yi}biao[[i ,1]] 是提取表biao的第i行的第一个数, 即xibiao[[i ,2]] 是提取表biao的第i行的第一个数, 即yibiao[[i ,2]]-f[biao[[i ,1]]] 即yi-(a*xi+b)实验思路1、先对练习1的十组数据线性拟合,并从形与量看拟合成效;2、对练习1的十组数据中的九组数据线性拟合,并从形与量看拟合成效;3、对练习1的十组数据中的八组数据线性拟合,并从形与量看拟合成效;4、对练习1的十组数据中的七组数据线性拟合,并从形与量看拟合成效;5、对练习1的十组数据中的六组数据线性拟合,并从形与量看拟合成效。
vegan曲线拟合首先,我们需要明确什么是vegan曲线。
Vegan曲线是一种用于描述物种多样性与环境梯度之间关系的曲线。
它是基于生态学中的物种多样性指数和环境因子之间的关联关系而建立的。
通过拟合vegan曲线,我们可以了解物种多样性如何随着环境变化而变化。
在进行vegan曲线拟合时,我们通常会采用统计学方法,比如广义线性模型(Generalized Linear Models, GLMs)或广义可加模型(Generalized Additive Models, GAMs)。
这些模型可以帮助我们分析物种多样性与环境因子之间的非线性关系,并进行曲线拟合。
在进行拟合时,我们需要收集相关的数据,包括物种多样性指数和环境因子的测量数据。
然后,我们可以使用适当的统计软件(如R语言中的vegan包)来拟合vegan曲线。
拟合vegan曲线的过程中,我们需要考虑一些因素。
首先是选择合适的物种多样性指数,例如Shannon多样性指数、Simpson多样性指数或Pielou均匀度指数。
其次是选择合适的环境因子,这可能涉及到地理位置、土壤性质、气候因素等。
还需要注意数据的质量和样本数量,以及是否存在其他可能影响物种多样性的因素。
此外,在拟合vegan曲线时,我们还可以考虑使用非参数方法,如核密度估计或局部回归方法。
这些方法可以更好地捕捉到非线性关系,并提供更准确的拟合结果。
总结起来,vegan曲线拟合是一种用于研究物种多样性与环境梯度之间关系的方法。
它涉及到统计学方法和数据分析技巧,需要收集相关数据并选择合适的模型来进行拟合。
通过拟合vegan曲线,我们可以更好地理解物种多样性的分布和变化规律。
数值计算方法实验报告5―温度分布的曲线拟合本报告是关于温度分布的曲线拟合的,望对大家有所帮助!!!数值计算方法实验报告标题:温度分布的曲线拟合1.实验描述:在科学技术工程和实验中,经常需要从大量的实验数据中寻找拟合曲线,最简单的是一维情形(一元函数),此时数据的形式为x和y坐标的有序对,如:(x1,y1),...,(xN,yN),这里的横坐标{x}是明确的。
数值计算方法的目的之一是求解一个将自变量与因变量联系起来的拟合函数。
求解拟合函数的方法有多种,常见的方法有:线性最小二乘拟合、多项式拟合(最小二乘抛物线拟合)、样条插值拟合(三次样条拟合)、三角多项式拟合、贝塞尔曲线拟合这五种方法。
本次实验分别利用上述五种方法对一组温度数据进行拟合,通过拟合的结果比较这五种方法的优缺点(主要考虑误差)。
2.实验内容:已知某地区一天的温度数据如下:时间,p.m***-**********午夜***-********-********-*****温度时间,a.m***-**********正午***-********-********-*****温度分别利用:线性最小二乘拟合、多项式拟合(最小二乘抛物线拟合)、样条插值拟合(三次样条拟合)、三角多项式拟合、贝塞尔曲线拟合这五种方法对这组温度数据进行拟合,通过拟合的结果比较这五种方法的优缺点。
3.实验原理及分析:本报告是关于温度分布的曲线拟合的,望对大家有所帮助!!!①线性最小二乘拟合法:设{(x,y)}有N个点,其中横坐标{x}是确定的。
最小二乘拟合曲线为:kkk=1kk=1y=Ax+B,其系数满足如下正规方程:(∑x)A+(∑xk)B=∑xkyk 2kNNNNNk=1k=1(∑xk)A+NB=∑yk k=1k=1N解得:A=N∑xk=1Nk=1Nkyk Nxy2k∑xkNxN2=∑(xNNkx)(yk y),B=y Axk∑(xk=1kx)2其中:x=∑xk=1N,y=∑yk=1N线性最小二乘法的本质是:多元函数(均方根误差函数)求极值问题。
硫酸标准曲线绘制实验报告
以下是一份硫酸标准曲线绘制实验报告的模板:
硫酸标准曲线绘制实验报告
一、实验目的
通过绘制硫酸标准曲线,确定硫酸浓度与吸光度之间的关系。
二、实验原理
硫酸与特定指示剂反应后,会产生颜色变化。
通过测定吸光度,可以建立硫酸浓度与吸光度之间的标准曲线。
三、实验仪器和试剂
1. 分光光度计
2. 硫酸标准溶液
3. 指示剂
4. 蒸馏水
四、实验步骤
1. 准备一系列已知浓度的硫酸标准溶液。
2. 分别向每个硫酸标准溶液中加入指示剂,并充分混合。
3. 使用分光光度计测量每个溶液的吸光度。
4. 以硫酸浓度为横坐标,吸光度为纵坐标,绘制标准曲线。
五、实验结果
1. 记录每个硫酸标准溶液的浓度和对应的吸光度。
2. 根据实验数据绘制硫酸标准曲线。
六、结论
根据绘制的硫酸标准曲线,可以确定在一定范围内硫酸浓度与吸光度之间的关系。
这对于定量分析硫酸溶液的浓度提供了参考依据。
《数学实验》实验报告1x=Table[10.0+5.0*i,{i,0,4}];y={27.0,26.8,26.5,26.3,26.1};xy=Table[{x[[i]],y[[i]]},{i,1,5}];q[a_,b_,c_] :=Sum[(a+b*x[[i]]+c*x[[i]]^2-y[[i]])^2,{i,1,5}]NSolve[{D[q[a,b,c],a]==0, D[q[a,b,c],b]==0,D[q[a,b,c],c]==0},{a,b,c}]t1=ListPlot[xy,PlotStyle->PointSize[0.02]];f[x_] :=27.56+ -0.0574286*x+0.000285714*x^2;t2=Plot[f[x],{x,5,35},AxesOrigin->{5,25}];Show[t1,t2]首先得到a,b,c三个值: {{a->27.56,b->-0.0574286,c->0.000285714}}然后得到同一坐标系下的数据点散点图及拟合函数的图形:试验过程(含详细试验步骤、程序清单及异常情况记录等)输入以下mathematica语句求解参数a,b,c:运行后可得解:2为求得数据点的散点图及拟合函数的图形,输入以下语句,并将两个图画在同一坐标下:运行得:3在最开始时,我输入的程序是这样的:x=Table[10.0+5.0*i,{i,0,4}];y={27.0,26.8,26.5,26.3,26.1};xy=Table[{x[[i]],y[[i]]},{i,1,5}];q[a_,b_,c_] :=Sum[(a+b*x[[i]]+c*x[[i]]^2-y[[i]])^2,{i,1,5}]NSolve[{D[q[a,b,c],a]==0, D[q[a,b,c],b]==0,D[q[a,b,c],c]==0},{a,b,c}]t1=ListPlot[xy,PlotStyle->PointSize[0.02],DisplayFunction->Identity];f[x_] :=27.56+ -0.0574286*x+0.000285714*x^2;t2=Plot[f[x],{x,5,35},AxesOrigin->{5,25},DisplayFunction->Identity];Show[t1,t2, DisplayFunction->$ DisplayFunction]然而得到的结果没有图形(如下):我比照了老师的讲义,改动了“DisplayFunction->Identity”,可是,结果还是一样,没有图形。
实验报告
实验项目名称拟合实验所属课程名称数学建模实验类型综合性实验实验日期
班级
学号
姓名
成绩
【实验目的】
1、直观了解拟合基本内容。
2、掌握用数学软件求解拟合问题。
【实验原理】
1. 曲线拟合问题最常用的解法——线性最小二乘法的基本思路 第一步:先选定一组函数 r 1(x), r 2(x), …,r m (x), m<n, 令
f(x)=a 1r 1(x)+a 2r 2(x)+ …+a m r m (x) (1) 其中 a 1,a 2, …,a m 为待定系数.
第二步: 确定a 1,a 2, …,a m 的准则(最小二乘准则): 使n 个点(x i ,y i ) 与曲线 y=f(x) 的距离
i 的平方和最小 .
22
1211
2
1
1
(,,
)[()][()](2)
n
n
m i i i i i n
m
k k i i i k J a a a f x y a r x y δ======-=-∑∑∑∑
MATLAB 函数: p=polyfit(x,y,n) [p,s]= polyfit(x,y,n)
多项式曲线求值函数:polyval( ) 调用格式: y=polyval(p,x)
p 为幂次从高到低的多项式系数向量p 。
s 用于生成预测值的误差估计。