曹躍龍 賈婉麗 張 琳
(西安理工大學(xué)理學(xué)院 陜西·西安 710048)
學(xué)生完成物理實(shí)驗(yàn)數(shù)據(jù)測量后,課后的實(shí)驗(yàn)數(shù)據(jù)處理是一個(gè)重要環(huán)節(jié),利用傳統(tǒng)的數(shù)據(jù)處理方法處理數(shù)據(jù),學(xué)生往往需要花很長時(shí)間完成,傳統(tǒng)的數(shù)據(jù)處理方法計(jì)算繁瑣、容易出錯(cuò)。如今,運(yùn)用計(jì)算機(jī)應(yīng)用軟件進(jìn)行實(shí)驗(yàn)數(shù)據(jù)處理已經(jīng)成為一種趨勢。Matlab、Mathematica、Maple 等計(jì)算機(jī)數(shù)學(xué)語言具有強(qiáng)大的計(jì)算功能和繪圖功能,在物理實(shí)驗(yàn)中應(yīng)用這些軟件進(jìn)行數(shù)值模擬實(shí)驗(yàn)和復(fù)雜數(shù)據(jù)處理非常方便。但是大學(xué)物理實(shí)驗(yàn)在本科一年級學(xué)生中開設(shè),大部分學(xué)生并不具備編程基礎(chǔ),如何引導(dǎo)學(xué)生使用這些軟件完成數(shù)據(jù)處理就需要我們?nèi)握n老師潛心研究了。Matlab 相比于高級計(jì)算機(jī)C 語言而言,簡單易學(xué),上手快,掌握一些簡單的函數(shù)完全可以進(jìn)行實(shí)驗(yàn)數(shù)據(jù)處理。
大學(xué)物理實(shí)驗(yàn)都是從緒論課開始的,即介紹大學(xué)物理實(shí)驗(yàn)的目的、實(shí)驗(yàn)內(nèi)容、實(shí)驗(yàn)方法,其中一個(gè)重要的內(nèi)容介紹是如何處理實(shí)驗(yàn)數(shù)據(jù),常規(guī)的實(shí)驗(yàn)數(shù)據(jù)處理不外乎:列表法、逐差法、作圖法、最小二乘法。這幾種方法都有各自的優(yōu)點(diǎn),但也都存在缺點(diǎn)。列表法簡單明了,形式緊湊,各數(shù)據(jù)間易于參考比較,但也存在不能直觀地顯示數(shù)據(jù)變化趨勢的缺點(diǎn)。作圖法能將物理量間的對應(yīng)關(guān)系、變化趨勢以及數(shù)據(jù)的極值點(diǎn)、轉(zhuǎn)折點(diǎn)、周期性等以最直觀的方式顯示出來,但也存在主觀隨意性大不可避免地引入一些附加誤差。逐差法的優(yōu)點(diǎn)是計(jì)算簡單,可以最大限度的利用測量數(shù)據(jù),但要求函數(shù)必須滿足一元函數(shù),且自變量必須是等間距變化,函數(shù)間不是線性關(guān)系的需要轉(zhuǎn)換成線性關(guān)系,這樣的處理都引入了誤差的存在。最小二乘法可以精確地?cái)M合出曲線的參數(shù),但存在計(jì)算量過大,學(xué)生手工計(jì)算難度太大,所以借助于計(jì)算機(jī)高級語言完成實(shí)驗(yàn)數(shù)據(jù)處理是很有必要的。
緒論課中可適當(dāng)引入matlab 的簡單計(jì)算函數(shù),鼓勵(lì)學(xué)生主要通過自學(xué)應(yīng)用matlab 處理實(shí)驗(yàn)數(shù)據(jù)中的列表法、畫圖法、逐差法以及最小二乘法的繁復(fù)計(jì)算,使學(xué)生學(xué)以致用。
利用標(biāo)準(zhǔn)偏差表示測量結(jié)果時(shí),對于多次測量的樣本標(biāo)準(zhǔn)偏差用 表示
平均標(biāo)準(zhǔn)偏差用
可用的簡單函數(shù)有:mean()(求平均值)、var()(求樣本方差)、std()(求樣本標(biāo)準(zhǔn)差)
例如:測量某長度所得數(shù)據(jù)如下(單位mm):
n(測量次數(shù)) 1 2 3 4 5 L(mm) 40.3 39.6 39.7 40.4 39.5 n(測量次數(shù)) 6 7 8 9 10 L(mm) 39.8 40.3 39.6 40.5 40.3
試將測量結(jié)果按照規(guī)范式正確表述。
解:matlab 程序如下:
clear all
L=[40.3 39.6 39.7 40.4 39.5 39.8 40.3 39.6 40.5 40.3];
L1=mean(L) %求解平均值
a1=std(L) %求解樣本標(biāo)準(zhǔn)偏差
a2=a1/sqrt(10) %求解平均標(biāo)準(zhǔn)偏差
運(yùn)行結(jié)果:L1=40.0000mm;
a1=0.3916mm;a2=0.1238mm
用逐差法計(jì)算數(shù)據(jù),要求原始數(shù)據(jù)必須是偶數(shù)個(gè),必須使用隔n 項(xiàng)逐差,并求對應(yīng)項(xiàng)的逐差,其算術(shù)平均值為:
算術(shù)平均值絕對誤差為:
相對誤差為:
例如:一豎直輕彈簧的長度L和下端所加負(fù)載質(zhì)量的關(guān)系如下:
M(g) 0.00 2.00 4.00 L(cm) 16.50 18.50 20.6 M(g) 6.00 8.00 10.00 L(cm) 22.90 25.10 27.20
試用逐差法處理數(shù)據(jù),求出伸長量的算術(shù)平均值、絕對誤差和相對誤差以及彈簧的倔強(qiáng)系數(shù) 。
clear all
g=9.8;
m=[0.00 2.00 4.00 6.00 8.00 10.00];
L=[16.50 18.50 20.6 22.90 25.10 27.20];
delL1=(L(6)-L(3))*10e-2;
delL2=(L(5)-L(2))*10e-2;
delL3=(L(4)-L(1))*10e-2;
delL=1/3*(delL1+delL2+delL3); %算術(shù)平均值
delm=(m(6)-m(3))*10e-3;
k=delm*g/(delL) %彈簧的倔強(qiáng)系數(shù)
deldelL=1/3*(delL1-delL+delL2-delL+delL3-delL) %算術(shù)平均值絕對誤差
E=deldelL/dell %相對誤差
運(yùn)行結(jié)果:彈簧倔強(qiáng)系數(shù)k = 0.9000;算術(shù)平均值 6.533;算術(shù)平均值絕對誤差 2.961 -15%;相對誤差=4.5 -15%。
其中a,b 是需估計(jì)的兩個(gè)參數(shù)。現(xiàn)有x 和y 的n 組測量值(,可根據(jù)最小二乘法估計(jì) a,b 的值。
所以得到:
R 為線性相關(guān)系數(shù)。
平均標(biāo)準(zhǔn)偏差為:
其中K 是參數(shù)的數(shù)目。
例如:一物體作勻速直線運(yùn)動,在不同時(shí)刻t,觀察運(yùn)動距離S,結(jié)果如下:
t(s) 1.00 2.00 3.00 4.00 S(cm) 16.8 22.8 29.0 34.9 t(s) 5.00 6.00 7.00 8.00 S(cm) 40.8 46.6 52.1 58.6
試用最小二乘法求出物體運(yùn)動速度。
clear all
t=[1.00 2.00 3.00 4.00 5.00 6.00 7.00 8.00];
S=[16.8 22.8 29.0 34.9 40.8 46.6 52.4 58.6];
a=polyfit(t,S,1)%a(1)為 b,a(2)為 a
t1=1:8;k=2;
S1=a(1)*t1+a(2);
Sn=a(1)*t+a(2);tn=(S-a(2))/a(1);
sigmaSn=sqrt((Sn-S)*(Sn-S)'/(k*(k-1))),%S 平均標(biāo)準(zhǔn)偏差
圖1 物體運(yùn)動距離S 與時(shí)間t 的最小二乘法擬合
sigmatn=sqrt((tn-t)*(tn-t)'/(k*(k-1))),%t 的平均標(biāo)準(zhǔn)偏差
tp=mean(t),Sp=mean(S),%平均值
Ltt=(t-tp)*(t-tp)',
Lss=(S-Sp)*(S-Sp)',
Lts=(t-tp)*(S-Sp)',
r=Lts/sqrt(Ltt*Lss),%線性相關(guān)系數(shù)
運(yùn)行結(jié)果:a=5.9440 10.9893;sigmaSn=0.0025;sigmatn=0.0424;tp=4.5000;Sp=0.3774;r=1.0000
所以速度v=5.944m/s,物體運(yùn)動的距離S 與時(shí)間t 的關(guān)系為:s=5.94t+10.99,時(shí)間 t 的平均值:t=4.50(s),物體運(yùn)動距離的平均值:=0.3774(m),時(shí)間t 的平均標(biāo)準(zhǔn)偏差為: =0.0424,物理運(yùn)動距離的平均標(biāo)準(zhǔn)偏差為: =0.0025,線性相關(guān)系數(shù)為:=1,相關(guān)度非常好。
通過以上幾種數(shù)據(jù)處理常用方法的例子可以看出,Matlab功能強(qiáng)大,在物理實(shí)驗(yàn)數(shù)據(jù)處理中使用非常方便。引入一定的機(jī)制鼓勵(lì)學(xué)生積極自學(xué)并使用Matlab 語言來處理大學(xué)物理實(shí)驗(yàn)數(shù)據(jù),不僅提高了他們自身的素質(zhì),而且能夠提高學(xué)生學(xué)習(xí)興趣。