實驗5 資料擬合
5.1試驗目的
初步熟悉Matlab的資料處理基本功能。
掌握資料擬合的原理與工程使用方法。
5.2實驗內容
5.2.1 資料分析
氣體在容器中被吸引的比率Y與氣體的溫度X1和吸收液體的蒸汽壓力X2有關,其數學模型為Y=A+B1X1+B2X2,測得試驗資料為:
表1 氣體被吸引比率資料
求Y關於X1、X2的二元線性迴歸方程.
5.2.2 彈丸穿靶速度資料分析
根據初步研究認為穿透速度與彈丸直徑、靶板厚度之間有如下關係: ,其中a和n為待求擬合引數。
表2 鎢球侵徹靶板彈道極限資料
彈丸直徑d/mm 6.10 8.12 6.1 8.12 6.1 8.12 7.56 7.56
靶板厚度h/mm 6.75 6.75 8.45 8.45 10.4 10.4 13.3 8.45
穿透速度v/ms-1 723 520 973 635 1307 798 1212 730
利用建立的關係式對錶中最後兩欄的彈靶情況對穿透速度進行預測。
5.4實驗提示
插值假定資料集是正確的,然後試圖找出資料集相鄰兩點之間的其它點,可以對物理問題進行有限的預測。
擬合是根據試驗或者統計資料,設法找出一條光滑曲線,能最佳的擬合數據,但沒必要經過任何資料點。
5.4.1擬合
p=polyfit(x,y,n) 多項式曲線擬合,x,y是長度為N的座標向量,n是用來擬合的多項式的次數。p是求出的多項式的係數。
xi=linspace(0,1);
yi=polyval(p,xi) 多項式求值。在給定多項式係數後,根據xi向量求出對應的yi向量。
例4. 曲線擬合與插值
如果有兩個向量x和y表示的x-y平面上的一組資料點,那麼,可以對它們進行插值點或者擬合一條曲線。
令x=[1 1.5 3 4 5 6 6.5 7 8];y=[1.2 1 1.7 2.5 2 2.3 2.5 3 3.1];
p1=polyfit(x,y,1);
linc=polyval(p1,x);
plot(x,linc,x,y,’x’)
p7=polyfit(x,y,7);
xx=1:0.25:8;
polc=polyval(p7,xx);
plot(xx,polc,x,y,’x’)
線性擬合
七次擬合
圖1 擬合結果對比
有一組資料
X=0:0.1:1;
Y=[-0.447,1.978,3.28,6.16,7.08,7.34,7.66,9.56,9.48,9.30,11.2];
試作出原圖、線性擬合圖、二次、三次、九次、十次擬合圖。