《测控系统原理与设计实验报告--测试数据的拟合与插值.docx》由会员分享,可在线阅读,更多相关《测控系统原理与设计实验报告--测试数据的拟合与插值.docx(5页珍藏版)》请在第壹文秘上搜索。
1、实验报告(理工类)学生姓名学号成绩学生所在学院年级/专业/班12级/自动化/西华理T课程名称测控系统原理与设计课程代码实验项目名称测试数据的拟合与插值项目代码指导教师项目学分开课学院及实验室:实验时间:年月日一实验目的学习利用MATLAB编程实现拟合法以及求误差。二实验内容1拟合法:(l)polyfit函数TLAB的polyfit函数用于多项式拟合,其语法为:P=polyfit(xzPk);其中,X,y分别是横纵坐标向量,它们不仅元素个数相同,而且同为行向量或同为列向量。k为非负整数,是待拟合的多项式的最高次数。P是输出项,为待拟合的多项式的系数向量(由高次到低次排列)。在MATLAB中输入以
2、下代码:X=(10,11,12,13);y=8.0000,7.8431,7.6923,7.5471;P=polyfit(,y,1);运行结果:P=-0.15099.5065所以拟合得的函数就是:y=-0.1509X+9.5065.在进行多项式拟合时,必须注意的是,拟合的精度是有限的,一般而言,需要满足以下条件:记m为不重复的横坐标的数目,则拟合次数kv=m1,在此前提下尽量使用低次多项式进行拟合。(2)polyval函数polyval,顾名思义就是“多项式的值”,该函数的功能是将已知数据代入拟合得的多项式求值。语法格式:y=polyval(p,x);其中,P是已经拟合的多项式(比如说()中的P
3、),X是自变量组成的向量,y是所求值组成的向量。输入以下代码:X=10,11,12;y=8.OOOOr7.8431,7.6923;P=polyfit(x,yr1)t=lz2,3,4,5;s=polyval(p,t)运行结果:P=-0.15389.5375s=9.38369.22989.07598.92218.7682(3)计算多项式拟合的方差已知原始数据X和y,拟合得到多项式p,判断拟合效果好坏的一个重要指标是方差,方差的计算方法是e=sum(y-polyval(pzx),2).PolyVaI(P,X)得到拟合值向量,y是真实值向量,两者相减得到真实值和拟合值的差值向量,“八2”表示对矩阵中的
4、每一个元素进行平方运算,于是得到差值向量中每一个元素的平方,SUm是求和函数,显然就是求差值向量元素的平方和,而这就是方差。输入以下代码:XH10,Ilz12;y=(8.OOOOr7.8431,7.6923);P=polyfit(x,y,1)e=sum(y-polyval(pzx).2)运行结果:P=-0.15389.5375e三6.2017e-006可见,方差20,表明拟合效果很好。2插值法:根据教材P149之表451的数据,取前十个数据可得。输入以下代码:t=10:1:19;p=8.0007.84317.69237.54717.40747.27277.14287.01746.89656.7
5、796;x=10:19;y1=interp1(t,p,x);%默认为lineary2=interp1(t,p,x,nearest);y3=interp1(t,p,x,spline);y4=interp1(t,p,x,pchip,);y5=interp1(t,p,x,cubic);subplot(2,3,1);pot(x,y1,t,p,ro);title(,linear);subplot(2,3,2);pot(x,y2,t,p,ro);title(nearest);subplot(2,3,3);pot(x,y3,t,p,ro);title(spline,);subplot(2,3,4);pot(x,y4,t,p,ro);title(pchip,);subplot(2,3,5);pot(x,y5,t,p,ro);title(,cubic,);运行结果:三实验总结