姚琴芬
(江苏广播电视大学,江苏 南京 210036)
Matlab语言在物理实验数据处理中的应用
姚琴芬
(江苏广播电视大学,江苏 南京 210036)
以单摆测量重力加速度实验的数据处理为例,探讨了用Matlab语言对物理实验数据进行最小二乘法的处理。与传统的实验数据处理方法相比,用Matlab处理物理实验数据准确快捷,能有效避免手工处理带来的误差,Matlab的可视化功能也可以更加直观地反映实验结果,适合在实验教学中应用。
Matlab语言;最小二乘法;曲线拟合
在物理实验中,经常需要根据实验数据描绘实验图线,然后根据实验图线寻找物理规律或得出所需结论。我们通常都是用手工描点画图法得到实验图线,即将一系列实验数据按其对应关系在坐标纸上描绘出一条光滑的曲线,其特点是简明直观,可发现某些明显的测量错误,可采用解析式的方式得到与图线对应的函数关系并处理数据求出经验公式。但该方法比较粗略,有效数字位数受图纸限制,在坐标纸上标点时具有较大的人为误差。与手工作图法相比,最小二乘法作为一种数据处理手段,能由一组实验数据找出一条最佳的拟合曲线,使各测量值残余误差的平方和最小。该方法避免了在坐标纸上人工拟合曲线的主观随意性,但计算比较复杂。Matlab语言既克服了最小二乘法计算量大的缺点,又能画出准确的拟合曲线。
用Matlab语言进行物理实验数据的处理,特别是用最小二乘法进行曲线拟合,十分方便。以单摆测量重力加速度实验为例,将学生采集的实验数据通过计算整理后得到6组摆长L和周期T的值见表1。
表1 单摆测重力加速度数据
学生采集数据后在坐标纸上作图,主观随意性较大,用Matlab语言进行数据处理,只需将采集到的数据输入计算机,编写简单的程序,就可方便准确地画出实验点和用最小二乘法拟合的曲线。
根据单摆的周期 随摆长T的L变化关系,建立物理模型:
当单摆摆角小于5°时,可认为单摆做简谐振动,其周期满足近似关系g=4π2L/T2,即周期的平方T2和摆长L之间具有线性关系,T2-L图线应为一条直线,其斜率为k=,因此,重力加速度g=。
根据上述物理模型编写Matlab语言程序如下:
保存之后再运行(%符号后面的内容起注释作用,用来增强程序的可读性,如要删除,也不影响程序的运行结果),可以得到如下结果:
图1 单摆测重力加速度实验与拟合曲线
图中“o”表示实验数据点,实线表示拟合直线。从运行结果可以看出,所测量的实验数据无错误数据,实验数据点较合理地分布在拟合直线近旁,相关系数r约等于1,单摆摆长与周期的平方成正比,用线性回归函数比较合理,从而验证了单摆周期公式,测得的g值完全符合所在地重力加速度的大小。
用Matlab语言不仅可以拟合直线,还可以拟合曲线。例如,在利用霍尔效应测量螺线管内轴线上磁感应强度的分布实验中,磁场随位置的分布图线是一条曲线,要在坐标纸上手工画出这条曲线有一定的困难,图2是采用Matlab语言进行曲线拟合得到的实验曲线图,图中“o”表示实验数据点,“+”表示五次拟合的曲线,实线表示七次拟合的曲线。从图中可以看出,七次拟合的曲线比五次拟合的曲线效果好,但也不是越高次的拟合曲线拟合效果越好,Matlab语言提供了各种多项式拟合方案,可根据具体情况选取拟合效果最好的那条曲线。
图2 霍尔效应测螺线管内轴向磁场分布实验与拟合曲线
在大学物理实验中,用Matlab语言强大的数值计算和图形处理功能对物理实验数据进行最小二乘法的处理,不仅准确性高,而且方便快捷。该方法不仅能拟合一次函数,也能进行高次函数的拟合,学生可根据具体情况选择所需的函数。
[1]张志勇.掌握和精通 MATLAB[M].北京:北京航空航天大学出版社,1997.
[2]钟季康,鲍鸿吉.大学物理习题计算机解法——MATLAB编程应用[M].北京:机械工业出版社,2008.
[3]韩敬,钟方川.Matlab在大学物理实验数据处理中的应用[J].大学物理实验,2008,21(1):88-90.
[4]李凌云,王海军.利用Matlab对物理实验数据进行处理[J].南京晓庄学院学报,2005,21(5):94-97.
[5]刘扬正.利用Matlab语言对物理实验数据进行处理[J].大学物理实验,2001,14(3):69-71.
[6]李飞,吴云峰.基于 Matlab的霍尔效应实验数据处理[J].实验室研究与探索,2011,30(1):58-61.
[7]杨端翠.大学物理实验中最小二乘法的处理[J].广西物理,2005,26(3):43-46.
The Application of Matlab Language in Data Processing of Physical Experiment
YAOQin-fen
(Jiangsu RadiOand Television University,Jiangsu Nanjing 210036)
The paper introduces the least square method tOthe data of Matlab language through taking the examples of gravity acceleration with the single pendulum.In comparison with the traditional methods,the present program can avoid the man-made errors effectively.The experiment result can be reflected intuitively with the visual function of the Matlab.This method is correct and fast and fit for the experiment teaching.
matlab;least square method;curve fitting
O4-39
A
1007-2934(2011)06-0052-03
2011-07-10