d=
那麽,這兩點之間的平均速度可以是:v=d/0.25=4*d(km/h)。
求解:
三次樣條插值法
對於具有n+1個給定點的數據集{xi},我們可以用n個三次多項式來構造數據點之間的三次樣條。如果
表示插值函數f的樣條函數,則需要:
插值特性,S(xi)=f(xi)
樣條是互連的,si-1 (xi) = si (xi),i = 1,...,n-1。
兩次連續可導,S'i-1(xi) = S'i(xi)和s 'i-1 (xi) = s 'i (xi),i = 1,...,n-1。
由於每個三次多項式需要四個條件來確定曲線形狀,所以對於組成S的n個三次多項式,這意味著需要4n個條件來確定這些多項式。但是插值特性只給出n+1條件,內部數據點給出n+1?2 = n?1個條件,總共是4n?兩個條件。我們還需要另外兩個條件,可以根據不同的因素使用不同的條件。其中壹個選擇條件可以得到給定u和v的夾緊三次樣條,
此外,我們可以設置
。
這樣就得到自然三次樣條。自然三次樣條幾乎相當於樣條生成設備的曲線。在所有這些二次連續可導函數中,箝位和自然三次樣條可以得到相對於待插值函數F的最小振蕩。如果選擇了其他條件,
可以獲得周期性的三次樣條。如果妳選擇,
可以獲得完整三次樣條。樣條插值得到的曲線能夠很好地連接已知數據點,不僅有效地避免了插值中的龍格現象,而且連續平滑地描述了已知數據點的變化規律。應該說能更好的預測、分析、評估數據點。在matlab中,樣條插值命令是y=spline(x1,y1,t)。
曲線擬合方法
在科學實驗的數據處理中,往往需要根據壹組給定的實驗數據,找出自變量X與因變量Y之間的函數關系,這是壹個待定參數。因為觀測數據中總是存在誤差,且待定參數ai的個數小於給定數據點的個數(即n < m),所以不同於插值問題。這類問題不要求通過點,只要求給定點的誤差平方和最小。當,也就是說,
(1)
這裏是壹族線性無關的函數,假設給定壹組數據和相應的壹組權重,這裏是要求最小化的權重系數,其中
(2)
這是最小二乘近似,擬合曲線是y=s(x)。這種方法稱為曲線擬合的最小二乘法。
(2)其實是關於多元函數的,求I的最小值就是求多元函數I的極值,可以從極值的必要條件得到。
(3)
根據內積的定義(見第三章),引入相應的加權內積符號。
(4)
那麽(3)可以改寫為
這是壹個關於參數的線性方程組,用矩陣表示為
(5)
(5)稱為正規方程。當線性無關且點集最多有n個不同的零點時,稱X上滿足Haar條件,且(5)的解是唯壹的。註意,( 5)的解是
從而獲得最小二乘擬合曲線。
(6)
可以證明,是的,有
因此,(6)是最小二乘解。其平方誤差為
(7)
均方差為
在最小二乘近似中,如果取,則表示為
(8)
此時關於系數的正規方程(5)是壹個病態方程,通常在n≥3時不直接作為依據。
在這個實驗中,即使是用近似法得到的速度v,也不是精確時間點的速度的精確值,所以用光滑曲線近似v-t變化規律時最好不要讓曲線通過來得到數據點,所以這裏用曲線擬合法來畫v-t曲線。
程序源代碼和運行結果如下:
清晰;clcclf
x =[0.2 4.96 6.55 9.71 13.17 16.23 18.36 20.53 23.15 26.49 28.23 29.1 30.65 30.92 31.67 33.03
y =[6.66 5.28 4.68 5.19 2.34 6.94 5.55 9.86 5.28 3.87 3.04 2.88 3.68 2.38 2.06 2.58 2.16 1.45 6];
支線劇情(1,2,1)
plot(x,y,' k . ',' markersize ',15)
軸([0 40 0 45]);
網格;繼續
t = 0.2:0.01:37.5;
u=spline(x,y,t);
s1=trapz(t,u);
p=sqrt(diff(t))。^2+diff(u).^2);
l 1 = sum(p);
v =[];
因為i=1:18
v(i)=4*sqrt((x(i+1)-x(i))^2+(y(i+1)-y(i))^2);
如果v(I)& gt;30
a = find(t & lt;x(I));
t(a)= NaN;
a = find(t & gt;x(I+1));
t(a)= NaN;
plot(t,u,' r-')
埃爾塞夫五世(壹)& lt12
a = find(t & lt;x(I));
t(a)= NaN;
a = find(t & gt;x(I+1));
t(a)= NaN;
plot(t,u,' k-')
其他
a = find(t & lt;x(I));
t(a)= NaN;
a = find(t & gt;x(I+1));
t(a)= NaN;
plot(t,u,' b-')
結束
t = 0.2:0.01:37.5;
結束
x 1 =[0.2 1.8 4.90 6.51 9.73 13.18 16.20 18.92 20.50 23.23 25.56 28.31 29.45 30.00 30.92 365438+
y 1 =[6.66 19.89 24.52 34.82 40.54 37.67 41.38 30.00 19.68 14.56 18.86 18.55 22.66 18.28 65438
繼續
繪圖(x1,y1,' k . ',' markersize ',15)
u=spline(x1,y1,t);
s2=trapz(t,u);
p=sqrt(diff(t))。^2+diff(u).^2);
l2 =總和(p);
因為i=19:37
v(i)=4*sqrt((x1(39-i)-x1(38-i))^2+(y1(39-i)-y1(38-i))^2);
如果v(I)& gt;30
a = find(t & lt;x 1(38-I));
t(a)= NaN;
a = find(t & gt;x 1(39-I));
t(a)= NaN;
plot(t,u,' r-')
埃爾塞夫五世(壹)& lt12
a = find(t & lt;x 1(38-I));
t(a)= NaN;
a = find(t & gt;x 1(39-I));
t(a)= NaN;
plot(t,u,' k-')
其他
a = find(t & lt;x 1(38-I));
t(a)= NaN;
a = find(t & gt;x 1(39-I));
t(a)= NaN;
plot(t,u,' b-')
結束
t = 0.2:0.01:37.5;
結束
s = S2-s 1;
l = l 1+L2;
fprintf('s=%.4f,l=%.4f\n ',s,l)
t = 0.125:0.25:9.125;
支線劇情(1,2,2)
繼續
坐標軸([0 9.5 0 45])
格子
情節(t,v,' k . ',' markersize ',25)
p=polyfit(t,v,3);
a = 0:0.01:9;
s=polyval(p,a);
繼續
繪圖(a,s,' k-','線寬',2)
車道長度:l = 175.9035;
封閉區域的面積:S = 733.883。
圖1:模擬賽道的曲線(彩色地圖見附錄)。
圖1
圖2:模擬球員速度的v-t曲線
圖2
三、對玩家的建議:
賽前熟悉路況,大致了解車道內的路段(無論是平坦的沙路、坑窪的石子路還是松軟的泥濘路)。不同的路況有不同的限速,以保證選手的人身安全。在平坦的沙質路面上可以保持30km/h以上的速度,在坑窪不平的石子路面上可以保持12-30km/h,在松軟泥濘的路面上可以保持12km/h以下的速度,以最快的速度完成比賽,不發生任何安全事故。