歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOCX文檔下載  

差值擬合算法的應(yīng)用及matlab實(shí)現(xiàn)計(jì)算機(jī)科學(xué)和技術(shù)專業(yè)

  • 資源ID:46981910       資源大?。?span id="gad5b0b" class="font-tahoma">469.31KB        全文頁數(shù):60頁
  • 資源格式: DOCX        下載積分:30積分
快捷下載 游客一鍵下載
會(huì)員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺(tái)登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要30積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號(hào),方便查詢和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號(hào):
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請(qǐng)使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請(qǐng)知曉。

差值擬合算法的應(yīng)用及matlab實(shí)現(xiàn)計(jì)算機(jī)科學(xué)和技術(shù)專業(yè)

差值擬合算法的應(yīng)用及matlab實(shí)現(xiàn)摘 要插值和擬合都是函數(shù)逼近或者數(shù)值逼近的重要組成部分他們的共同點(diǎn)都是通過已知一些離散點(diǎn)集M上的約束,求取一個(gè)定義在連續(xù)集合S(M包含于S)的未知連續(xù)函數(shù),從而達(dá)到獲取整體規(guī)律的目的,即通過"窺幾斑"來達(dá)到"知全豹"。簡(jiǎn)單的講,所謂擬合是指已知某函數(shù)的若干離散函數(shù)值f1,f2,fn,通過調(diào)整該函數(shù)中若干待定系數(shù)f(1, 2,3), 使得該函數(shù)與已知點(diǎn)集的差別(最小二乘意義)最小。如果待定函數(shù)是線性,就叫線性擬合或者線性回歸(主要在統(tǒng)計(jì)中),否則叫作非線性擬合或者非線性回歸。表達(dá)式也可以是分段函數(shù),這種情況下叫作樣條擬合。而插值是指已知某函數(shù)的在若干離散點(diǎn)上的函數(shù)值或者導(dǎo)數(shù)信息,通過求解該函數(shù)中待定形式的插值函數(shù)以及待定系數(shù),使得該函數(shù)在給定離散點(diǎn)上滿足約束。插值函數(shù)又叫作基函數(shù),如果該基函數(shù)定義在整個(gè)定義域上,叫作全域基,否則叫作分域基。如果約束條件中只有函數(shù)值的約束,叫作Lagrange插值,否則叫作Hermite插值。從幾何意義上將,擬合是給定了空間中的一些點(diǎn),找到一個(gè)已知形式未知參數(shù)的連續(xù)曲面來最大限度地逼近這些點(diǎn);而插值是找到一個(gè)(或幾個(gè)分片光滑的)連續(xù)曲面來穿過這些點(diǎn)。在測(cè)繪學(xué)中,無論是圖形處理,還是地形圖處理等,大多離不開插值與擬合的應(yīng)用,根據(jù)插值與擬合原理,構(gòu)造出插值和擬合函數(shù),理解其原理,并在matlab平臺(tái)下,實(shí)現(xiàn)一維插值,二維插值運(yùn)算,實(shí)現(xiàn)多項(xiàng)式擬合,非線性擬合等,并在此基礎(chǔ)上,聯(lián)系自己所學(xué)專業(yè),分析其生活中特殊例子,提出問題,建立模型,編寫程序,以至于深刻理解插值與擬合的作用。關(guān)鍵詞:差值擬合算法;應(yīng)用;matlab;實(shí)現(xiàn)目錄畢業(yè)論文(設(shè)計(jì))1差值擬合算法的應(yīng)用及matlab實(shí)現(xiàn)1摘 要2目錄31序言42曲線擬合與最小二乘法基礎(chǔ)理論概述62.1曲線擬合簡(jiǎn)介62.2最小二乘法簡(jiǎn)介102.3曲線擬合的最小二乘法原理112.4基于MATLAB的最小二乘曲線擬合162.5最小二乘曲線擬合案例分析與解算202.6擬合函數(shù)的精度檢測(cè)252.7擬合函數(shù)在實(shí)際運(yùn)用中的優(yōu)勢(shì)262.8拉格朗日插值原理和插值多項(xiàng)式構(gòu)造272.9拉格朗日插值事例分析272.10擬合的方原理和方法293插值與擬合實(shí)際建模與分析314MATLAB在擬合與插值中的應(yīng)用324.1曲線擬合334.2一維插值354.3二維插值374.4小結(jié)435結(jié) 論44致 謝45參考文獻(xiàn)461 序言隨著人類認(rèn)識(shí)能力的不斷進(jìn)步以及計(jì)算技術(shù)的快速發(fā)展,對(duì)于變量之間的未知關(guān)系,應(yīng)用曲線擬合的方法對(duì)揭示其內(nèi)在規(guī)律具有重要的理論與現(xiàn)實(shí)意義。在科學(xué)實(shí)驗(yàn)數(shù)據(jù)的處理、分析時(shí),實(shí)驗(yàn)數(shù)據(jù)擬合是經(jīng)常采用的一種方法。本文將采用最小二乘法對(duì)給定的實(shí)驗(yàn)數(shù)據(jù)進(jìn)行擬合并得到擬合曲線,加深大家對(duì)最小二乘曲線擬合原理的理解。同時(shí)將根據(jù)最小二乘擬合理論,并利用MATLAB數(shù)值分析軟件進(jìn)行編程,解決最小二乘曲線擬合在塔機(jī)起重量監(jiān)測(cè)系統(tǒng)中的應(yīng)用問題,實(shí)現(xiàn)相應(yīng)案例數(shù)據(jù)的曲線擬合,獲得了曲線模型對(duì)相應(yīng)數(shù)據(jù)的擬合曲線,很好地解決了該工程案例的曲線擬合問題。MATLAB有可以用于曲線擬合的內(nèi)建函數(shù)。 MathWorks公式也提供了很多工具箱可以用于曲線擬合。這些方法可以用來做線性或者非線性曲線擬合。 MATLAB也有一個(gè)開放的工具箱 曲線擬合工具箱(Curve Fitting Toolbox),她可以用于參數(shù)擬合,也可以用于非參數(shù)擬合。本節(jié)將介紹曲線擬合工具箱與其他工具箱、以及各種 MATLAB可以用于曲線擬合的內(nèi)建函數(shù)的詳細(xì)特征。cdate 與它自身很好的相關(guān),同樣的 Output也與它自身很好相關(guān)。反對(duì)角線上元素是cdate與 Output之間的相關(guān)性。這個(gè)值非常接近于 1,因此實(shí)際數(shù)據(jù)與擬合結(jié)果能否較好的吻合。因此,這個(gè)擬合是“好”的擬合。(應(yīng)該是這樣判斷的么?我怎么覺得應(yīng)該通過 pop與 Output的相關(guān)性來判斷擬合的好壞的呢?)MATLAB即有內(nèi)建的解決很多通常遇到的曲線擬合問題的能力,又具有附加這方面的產(chǎn)品。本技術(shù)手冊(cè)描述了幾種擬合給定數(shù)據(jù)集的曲線的方法,另外,本手冊(cè)還解釋了加權(quán)曲線擬合、針對(duì)復(fù)數(shù)集的曲線擬合以及其他一些相關(guān)問題的擬合技巧。在介紹各種曲線擬合方法中,采用了典型例子的結(jié)合介紹。在現(xiàn)代科學(xué)研究中,物理量之間的相互關(guān)系通常是用函數(shù)來描述的。有些函數(shù)關(guān)系是由經(jīng)典理論分析推導(dǎo)得出的,這些函數(shù)關(guān)系為我們進(jìn)一步的分析研究工作提供了理論基礎(chǔ)。在現(xiàn)實(shí)的科學(xué)研究過程中,有一些問題很難由經(jīng)典理論推導(dǎo)出物理量的函數(shù)表達(dá)式,或者此推導(dǎo)出的表達(dá)式也十分復(fù)雜,不利于進(jìn)一步的分析,但又很希望能得到這些量之間的函數(shù)關(guān)系,這時(shí)就可以利用曲線擬合的方法,用實(shí)驗(yàn)數(shù)據(jù)結(jié)合數(shù)學(xué)方法得到物理量之間的近似函數(shù)表達(dá)式。Matlab是Math Works公司推出的一種科學(xué)計(jì)算軟件,是集數(shù)值計(jì)算、符號(hào)運(yùn)算及出色的圖形處理、程序語言設(shè)計(jì)等強(qiáng)大功能于一體的科學(xué)計(jì)算語言。應(yīng)用Matlab處理既克服了最小二乘法計(jì)算量大等缺點(diǎn),又使繁瑣、枯燥的數(shù)值計(jì)算變成種簡(jiǎn)單、直觀的可視化操作過程,且能較準(zhǔn)確地標(biāo)記實(shí)驗(yàn)數(shù)據(jù)點(diǎn)和繪出擬合曲線。在科學(xué)實(shí)驗(yàn)的統(tǒng)計(jì)方法研究中,往往要從一組數(shù)據(jù)中,尋找自變量x與因變量y之間的函數(shù)關(guān)系。由于觀測(cè)數(shù)據(jù)往往不準(zhǔn)確,因此不要求經(jīng)過所有帶點(diǎn),而只要求在給定點(diǎn)上的誤差按某種標(biāo)準(zhǔn)最小。若記,就是要求向量的范數(shù)最小。如果用最大范數(shù),計(jì)算上困難較大,通常采用歐式范數(shù)作為誤差度量的標(biāo)準(zhǔn)。的函數(shù)類型往往與實(shí)驗(yàn)的物理背景以及數(shù)據(jù)的實(shí)際分布有關(guān),它一般含有某些待定參數(shù)。如果是所有待定參數(shù)的線性函數(shù),那么相應(yīng)的問題稱為線性最小二乘問題,否則稱為非線性最小二乘問題。最小二乘法還是實(shí)驗(yàn)數(shù)據(jù)參數(shù)估計(jì)的重要工具。這是因?yàn)檫@種方法比其他方法更容易理解,即使在其他方法失效的情況下,用最小二乘法還能提供解答,而且從統(tǒng)計(jì)學(xué)的觀點(diǎn)分析,用該方法求得各項(xiàng)估計(jì)具有最優(yōu)統(tǒng)計(jì)特征,因此這一方法也是系統(tǒng)識(shí)別的重要基礎(chǔ)。用最小二乘法求擬合曲線時(shí),首先要確定的形式,然后利用最小二乘曲線擬合去構(gòu)造一個(gè)近似解析式。利用該方法“擬合”出的函數(shù)曲線雖然不能保證通過所有的樣本點(diǎn),但是很好地“逼近”了它們,充分反映了已知數(shù)據(jù)間內(nèi)在的數(shù)量關(guān)系。因此,這種方法在生產(chǎn)實(shí)踐和科學(xué)實(shí)驗(yàn)中具有廣泛的應(yīng)用前景。本文針對(duì)最小二乘曲線擬合的有關(guān)理論和應(yīng)用問題以及相應(yīng)的MATLAB實(shí)現(xiàn)進(jìn)行探討。曲線擬合又稱函數(shù)逼近,是指對(duì)一個(gè)復(fù)雜函數(shù),求出一個(gè)簡(jiǎn)單的便于計(jì)算的函數(shù),要求使與的誤差在某種度量意義下最小。我們把近似值和測(cè)得值的差值稱為殘余誤差。即顯然,殘差的大小是衡量擬合好壞的重要標(biāo)志。經(jīng)常采用的三種衡量的準(zhǔn)則為:(1)使殘差的最大絕對(duì)值最?。?;(2)使殘差的絕對(duì)值之和最?。?;(3)使殘差的平方和最?。?。 分析上面的三種準(zhǔn)則,準(zhǔn)則(1)、(2)的提法都比較自然,但是由于含有絕對(duì)值,所以不利于實(shí)際計(jì)算,而按照準(zhǔn)則(3)來確定參數(shù),得到擬合曲線的方法稱作曲線擬合的最小二乘法,它的計(jì)算比較簡(jiǎn)單,是工程實(shí)際當(dāng)中常用的一種函數(shù)逼近的方法。通常在生產(chǎn)實(shí)際及科學(xué)研究中,我們經(jīng)常要研究變量之間的函數(shù)關(guān)系y=f(x),若f(x)的表達(dá)式很復(fù)雜,或f(x)只是一張數(shù)據(jù)來表示,這都給研究帶來困難,因此我們希望用一個(gè)函數(shù)P(x)來代替它,把研究f(x)的問題轉(zhuǎn)化成研究,由于近似含義不同,就有插值和擬合兩種情況。Matlab是一款功能強(qiáng)大的科學(xué)數(shù)學(xué)計(jì)數(shù)器,利用matlab可以成功的完成插值與擬合等任務(wù),在編寫插值與擬合程序前,本人從以下步驟分析和實(shí)現(xiàn)插值與擬合。Matlab軟件是集數(shù)值計(jì)算、符號(hào)運(yùn)算及出色的圖形處理、程序語言設(shè)計(jì)等強(qiáng)大功能于一體的科學(xué)計(jì)算語言。用Matlab處理實(shí)驗(yàn)數(shù)據(jù)僅需編寫十幾行幾乎像通常筆算式的簡(jiǎn)練程序,運(yùn)行后就可得到所需的結(jié)果。這樣既克服了最小二乘法計(jì)算量大等缺點(diǎn),又使繁瑣、枯燥的數(shù)值計(jì)算變成一種簡(jiǎn)單、直觀的可視化操作過程,且能較準(zhǔn)確地標(biāo)記實(shí)驗(yàn)數(shù)據(jù)點(diǎn)和繪出擬合曲線。2 曲線擬合與最小二乘法基礎(chǔ)理論概述2.1 曲線擬合簡(jiǎn)介實(shí)際工作中,變量間未必都有線性關(guān)系,如服藥后血藥濃度與時(shí)間的關(guān)系;疾病療效與療程長(zhǎng)短的關(guān)系;毒物劑量與致死率的關(guān)系等常呈曲線關(guān)系。曲線擬合是指選擇適當(dāng)?shù)那€類型來擬合觀測(cè)數(shù)據(jù),并用擬合的曲線方程分析兩變量間的關(guān)系。曲線擬合是用連續(xù)曲線近似地刻畫或比擬平面上離散點(diǎn)組所表示的坐標(biāo)之間的函數(shù)關(guān)系的一種數(shù)據(jù)處理方法。用解析表達(dá)式逼近離散數(shù)據(jù)的一種方法。在科學(xué)實(shí)驗(yàn)或社會(huì)活動(dòng)中,通過實(shí)驗(yàn)或觀測(cè)得到量x與y的一組數(shù)據(jù)對(duì)(i1,2,m),其中各是彼此不同的 。人們希望用一類與數(shù)據(jù)的背景材料規(guī)律相適應(yīng)的解析表達(dá)式,來反映量x與y之間的依賴關(guān)系,即在一定意義下“最佳”地逼近或擬合已知數(shù)據(jù)。常稱作擬合模型 ,在式中是一些待定參數(shù)。當(dāng)c在中線性出現(xiàn)時(shí),稱為線性模型,否則稱為非線性模型。有許多衡量擬合優(yōu)度的標(biāo)準(zhǔn),最常用的一種做法是選擇參數(shù)c使得擬合模型與實(shí)際觀測(cè)值在各點(diǎn)的殘差(或離差) 的加權(quán)平方和達(dá)到最小,此時(shí)所求曲線稱作在加權(quán)最小二乘意義下對(duì)數(shù)據(jù)的擬合曲線。有許多求解擬合曲線的成功方法,對(duì)于線性模型一般通過建立和求解方程組來確定參數(shù),從而求得擬合曲線。至于非線性模型,則要借助求解非線性方程組或用最優(yōu)化方法求得所需參數(shù)才能得到擬合曲線,有時(shí)稱之為非線性最小二乘擬合。運(yùn)用插值法擬合函數(shù),這是每個(gè)數(shù)值分析中的必修課,而matlab又是數(shù)值分析必備的工具。除卻基本差值(拉格朗日,牛頓插值)需編寫實(shí)現(xiàn)外,在理解了插值法的基本原理后,如何用matlab自帶的多種功能進(jìn)行常用插值(樣條插值,hermite插值,三次差值)呢?在完成一些習(xí)題后,我的總結(jié)如下:1.如何實(shí)現(xiàn)三次樣條插值(spline插值)特點(diǎn):連續(xù)三次曲線逼近,最高次數(shù)為三次法1:spline題:清華大學(xué)出版社的數(shù)值分析(第5版)P49,20題。x=0,1,2,3,4,5,6,7,8,9,10y=0,0.79,1.53,2.19,2.71,3.03,3.27,2.89,3.06,3.19,3.29; 進(jìn)行三次樣條插值xx=0:0.25:10; 取好繪圖取值點(diǎn)yy=spline(x,y,xx);plot(x,y,o,xx,yy); 繪制圖像那么如何獲得插值函數(shù)?且如果三次樣條插值有邊界條件時(shí),應(yīng)如何擬合插值函數(shù)?此時(shí)應(yīng)采取法2法2:csapepp=csape(x,y,complete,0,0.0);disp(pp.coefs);complete表示給定邊界條件為一階導(dǎo)數(shù),0,0便是兩端點(diǎn)一階導(dǎo)數(shù)為0.常用的參數(shù)還有:second,給定邊界二階導(dǎo)數(shù).variational,自然樣條(邊界二階導(dǎo)數(shù)為0)運(yùn)行結(jié)果:COEFS的含義是在Xi-Xi+1區(qū)間上的多項(xiàng)式是,例如COEFS數(shù)組第一行的意思是在X=0到X=1的區(qū)間上時(shí)表達(dá)式是-6.2652*(X-0)3+0.9697*(X-0)1+0.5;同理,可以得到在不同區(qū)間上的擬合函數(shù) -6.2652 0.0000 0.9697 0.5000 1.8813 -0.9398 0.9227 0.5477 -0.4600 -0.4318 0.7992 0.6245 2.1442 -0.5146 0.7424 0.6708繪制圖像:xi=1:0.25:10;yi=ppval(pp,xi);plot(x,y,o,xi,yi);2.如何實(shí)現(xiàn)heimite、三次差值特點(diǎn): Hermite插值不僅保證了插值函數(shù)與原函數(shù)在給定數(shù)據(jù)點(diǎn)處得擬合,同時(shí)保證了在相應(yīng)點(diǎn)處導(dǎo)數(shù)的相同,從而在很大程度上保證了曲線的光滑性。因此,通過Matlab實(shí)現(xiàn)Hermite插值具有很普遍的意義Hermite插值調(diào)用到matlab的插值函數(shù)interp1.,格式為yi=interp1(x,y,xi,method)x為插值點(diǎn),y為插值。Xi為被插值點(diǎn),可為實(shí)數(shù)可為向量。Method取值決定插值方法:Pchip為hermite插值,cubic為三次插值,spline為樣條插值例子:x=y=xi=0:.01:10yi=interp1(x,y,xi,pchip)plot(x,y,o,xi,yi)即得到圖像如果xi取實(shí)數(shù),那么yi即為插值函數(shù)在xi點(diǎn)的值,總結(jié)一下,matlab通用的插值函數(shù)為interp1,通過改變interp1的method參數(shù),可以實(shí)現(xiàn)不同的插值方式。但spline函數(shù)與interp1函數(shù)在實(shí)現(xiàn)樣條插值時(shí),均無法在規(guī)定邊界條件的情況下進(jìn)行插值,此時(shí)要用到csape,csape的complete,second參數(shù)即可滿足常用邊界條件需求。如果需要擬合出具體的函數(shù),則用yi.coefs的形式,yi為插值點(diǎn)的擬合值。最后,使用plot函數(shù)繪制擬合函數(shù)圖像。2.2 最小二乘法簡(jiǎn)介最小二乘法是法國(guó)大數(shù)學(xué)家A.M.Legendre 最先于1805年發(fā)表的,其動(dòng)機(jī)是為處理一類從天文學(xué)和測(cè)地學(xué)中提出的數(shù)據(jù)分析問題。它通過最小化誤差的平方和尋找數(shù)據(jù)的最佳函數(shù)匹配。利用最小二乘法可以簡(jiǎn)便地求得未知的數(shù)據(jù),并使得這些求得的數(shù)據(jù)與實(shí)際數(shù)據(jù)之間誤差的平方和為最小。最小二乘法還可用于曲線擬合,工程施工中,我們會(huì)經(jīng)常取得一些相關(guān)的數(shù)據(jù),這些數(shù)據(jù)往往來自與施工密切相關(guān)的測(cè)量或?qū)嶒?yàn)中,我們可以通過作圖或多段插值取得變量之間的聯(lián)系,但作圖和插值查圖往往誤差較大。這時(shí)可采用最小二乘法先擬合出一個(gè)多項(xiàng)式,再根據(jù)此多項(xiàng)式求解任一自變量所對(duì)應(yīng)的因變量較精確的結(jié)果,據(jù)此繪圖可得到較精確、較合理的曲線。1801年,意大利天文學(xué)家朱賽普皮亞齊發(fā)現(xiàn)了第一顆小行星谷神星2,經(jīng)過40天的跟蹤觀測(cè)后,由于谷神星運(yùn)行至太陽背后,使得皮亞齊失去了谷神星的位置。隨后全世界的科學(xué)家利用皮亞齊的觀測(cè)數(shù)據(jù)開始尋找谷神星,但是根據(jù)大多數(shù)人計(jì)算的結(jié)果來尋找谷神星都沒有結(jié)果。時(shí)年24歲的高斯也計(jì)算了谷神星的軌道。奧地利天文學(xué)家海因里希奧爾伯斯根據(jù)高斯計(jì)算出來的軌道重新發(fā)現(xiàn)了谷神星。高斯使用的最小二乘法的方法發(fā)表于1809年他的著作天體運(yùn)動(dòng)論中。 法國(guó)科學(xué)家勒讓德于1806年獨(dú)立發(fā)現(xiàn)“最小二乘法”,但因不為世人所知而默默無聞。 勒讓德曾與高斯為誰最早創(chuàng)立最小二乘法原理發(fā)生爭(zhēng)執(zhí)。 1829年,高斯提供了最小二乘法的優(yōu)化效果強(qiáng)于其他方法的證明,因此被稱為高斯-莫卡夫定理。最小二乘法(又稱最小平方法)是一種數(shù)學(xué)優(yōu)化技術(shù)。它通過最小化誤差的平方和尋找數(shù)據(jù)的最佳函數(shù)匹配。利用最小二乘法可以簡(jiǎn)便地求得未知的數(shù)據(jù),并使得這些求得的數(shù)據(jù)與實(shí)際數(shù)據(jù)之間誤差的平方和為最小。2.3 曲線擬合的最小二乘法原理給定數(shù)據(jù),設(shè)擬合函數(shù)形式為 2.11其中為已知的線性無關(guān)函數(shù)(如果存在不全為零的常熟,使得,則稱函數(shù)線性相關(guān),否則稱為線性無關(guān))。求系數(shù),使得 2.12最小,若 2.13則稱相應(yīng)的為最小二乘擬合曲線。特別的,若則稱為次最小二乘擬合多項(xiàng)式。下面用求多元函數(shù)極值的方法來求最小點(diǎn)。將(2.12)式兩邊對(duì)求偏導(dǎo)。并令 化簡(jiǎn)得 2.14為了進(jìn)一步化簡(jiǎn),可以引入內(nèi)積符號(hào)。在線性代數(shù)中,中兩個(gè)向量及的內(nèi)積定義為,將它加以推廣,得到下面結(jié)論:設(shè)與是兩個(gè)已知函數(shù),記,令利用內(nèi)積的定義,式(2.14)可以寫為 2.15其中, , 2.16方程組(2.15)稱為正規(guī)方程組或法方程組,其中系數(shù)矩陣是對(duì)稱的??梢宰C明,當(dāng)函數(shù)線性無關(guān)時(shí),方程組(2.15)是對(duì)稱正定的,因此有唯一解。求出方程組(2.15)的解后,代入式(2.11)即可得最小二乘擬合函數(shù)。另外,對(duì)帶權(quán)的最小二乘擬合函數(shù)有如如下的定義:設(shè),給定在個(gè)節(jié)點(diǎn)上的函數(shù)值及一組權(quán)系數(shù),若有函數(shù),滿足則稱為在個(gè)節(jié)點(diǎn)上關(guān)于權(quán)系數(shù)的最小二乘擬合函數(shù)。Intel公司董事長(zhǎng)Moore在上個(gè)世紀(jì)的60年代就觀察到一個(gè)很有趣的現(xiàn)象:集成電路上可容納的單晶體數(shù)量每隔一年半左右并會(huì)增長(zhǎng)一倍,從而使集成電路的性能也能提高一倍。據(jù)此他提出了轟動(dòng)世界的Moore定律,預(yù)測(cè)這種增長(zhǎng)趨勢(shì)會(huì)一直延續(xù)下去。下面給出Moore數(shù)據(jù),如表 1所示:(年)19591962196319641965(增長(zhǎng)倍數(shù))13456表 1 Moore數(shù)據(jù)畫出相應(yīng)的散點(diǎn)圖如圖 1所示: 圖 1 Moore數(shù)據(jù)散點(diǎn)圖表 1中第二行數(shù)據(jù)為芯片上晶體數(shù)目在不同年代與1959年時(shí)的數(shù)目比較的倍數(shù),通過觀察k與t中間大致呈線性關(guān)系,如圖 1所示。據(jù)此導(dǎo)出了著名的Moore定律。通過以上的分析,可設(shè) 2.21將表 1中的數(shù)據(jù)代入式(2.21)的超定方程組,其中,t表示時(shí)間,k表示增長(zhǎng)倍數(shù),a,b為待定系數(shù)。若將表 1中的數(shù)據(jù)代入式(2.21),得線性方程組 2.22方程組(2.22)是一個(gè)朝頂方程組,在這五個(gè)線性方程中,任意兩個(gè)聯(lián)立求解可得到十組不同的解。即是說該方程組不存在通常意義上的解?,F(xiàn)將線性方程組(2.22)寫出矩陣形式,其中,此超定方程組五常義解,即是說不存在使得,但是該超定方程組存在最小二乘解,也就是說存在,使得達(dá)到最小,并且是線性方程組 2.23的解。我們稱式(2.23)為法方程組,在本例中它是一個(gè)二階線性方程組,即解這個(gè)方程組得.由此得到Moore公式.需要說明的是,對(duì)于,顯然,但是根據(jù)曲線擬合的最小二乘原理,從整體趨勢(shì)上使偏差達(dá)到最小,此處的偏差,這個(gè)值已經(jīng)很小了、滿足要求。下面我們就以上摩爾(Moore)預(yù)測(cè)公式實(shí)例總結(jié)利用最小二乘曲線擬合原理求解實(shí)際問題的步驟:(1)分析數(shù)據(jù),根據(jù)散點(diǎn)圖設(shè)定擬合函數(shù)(2)代入數(shù)據(jù)得到超定方程組,該超定方程組的矩陣形式為,其中,.(3)如表 2所示,建立法方程組.195911959383768119623588638494441963478523853369196459820385729619656117903861225表 2 據(jù)表 2中計(jì)算結(jié)果得, 其中m為實(shí)測(cè)數(shù)據(jù)組數(shù)。(4)解法方程組得擬合參數(shù)向量并據(jù)此得到擬合曲線函數(shù)(5)通過將所得的擬合函數(shù)曲線與原始數(shù)據(jù)散點(diǎn)圖進(jìn)行同坐標(biāo)對(duì)比或計(jì)算總體趨勢(shì)上的偏差值檢驗(yàn)擬合函數(shù)的精度。2.4 基于MATLAB的最小二乘曲線擬合MATLAB是matrix和laboratory兩個(gè)詞的組合,意為矩陣工廠(矩陣實(shí)驗(yàn)室)。是由美國(guó)mathworks公司發(fā)布的主要面對(duì)科學(xué)計(jì)算、可視化以及交互式程序設(shè)計(jì)的高科技計(jì)算環(huán)境。它將數(shù)值分析、矩陣計(jì)算、科學(xué)數(shù)據(jù)可視化以及非線性動(dòng)態(tài)系統(tǒng)的建模和仿真等諸多強(qiáng)大功能集成在一個(gè)易于使用的視窗環(huán)境中,為科學(xué)研究、工程設(shè)計(jì)以及必須進(jìn)行有效數(shù)值計(jì)算的眾多科學(xué)領(lǐng)域提供了一種全面的解決方案,并在很大程度上擺脫了傳統(tǒng)非交互式程序設(shè)計(jì)語言(如C、Fortran)的編輯模式,代表了當(dāng)今國(guó)際科學(xué)計(jì)算軟件的先進(jìn)水平。MATLAB和Mathematica、Maple并稱為三大數(shù)學(xué)軟件。它在數(shù)學(xué)類科技應(yīng)用軟件中在數(shù)值計(jì)算方面首屈一指。MATLAB可以進(jìn)行矩陣運(yùn)算、繪制函數(shù)和數(shù)據(jù)、實(shí)現(xiàn)算法、創(chuàng)建用戶界面、連接其他編程語言的程序等,主要應(yīng)用于工程計(jì)算、控制設(shè)計(jì)、信號(hào)處理與通訊、圖像處理、信號(hào)檢測(cè)、金融建模設(shè)計(jì)與分析等領(lǐng)域。MATLAB的基本數(shù)據(jù)單位是矩陣,它的指令表達(dá)式與數(shù)學(xué)、工程中常用的形式十分相似,故用MATLAB來解算問題要比用C,F(xiàn)ORTRAN等語言完成相同的事情簡(jiǎn)捷得多,并且MATLAB也吸收了像Maple等軟件的優(yōu)點(diǎn),使MATLAB成為一個(gè)強(qiáng)大的數(shù)學(xué)軟件。在新的版本中也加入了對(duì)C,F(xiàn)ORTRAN,C+,JAVA的支持??梢灾苯诱{(diào)用,用戶也可以將自己編寫的實(shí)用程序?qū)氲組ATLAB函數(shù)庫中方便自己以后調(diào)用,此外許多的MATLAB愛好者都編寫了一些經(jīng)典的程序,用戶可以直接進(jìn)行下載就可以用。假設(shè)有一組數(shù)據(jù),且已知這組數(shù)據(jù)滿足某一函數(shù)原型,其中為待定系數(shù)向量,則最小二乘曲線擬合的目標(biāo)就是求出這一組待定系數(shù)值,使得目標(biāo)函數(shù)最小。MATLAB的統(tǒng)計(jì)工具箱提供了Isqcurvefit函數(shù),可以解決最小二乘曲線擬合問題。 該函數(shù)的調(diào)用格式如下:其中,F(xiàn)un為原始函數(shù)的MATLAB表示,可以是M-函數(shù)或inline函數(shù);為最優(yōu)化的初值;x,y為原始輸入輸出向量。調(diào)用該函數(shù),將返回待定系數(shù)向量,以及在此系數(shù)下的目標(biāo)函數(shù)的值Jm.。此處我們就結(jié)合上面的Moore實(shí)例進(jìn)行分析,通過對(duì)散點(diǎn)圖的分析我們已經(jīng)假設(shè)出了初始函數(shù).其實(shí)現(xiàn)的MATLAB程序如下:t=1959 1962 1963 1964 1965;k=1 3 4 5 6;令,這樣,原函數(shù)就可以寫出,可以用MATLAB程序代碼寫出:function k = K( a,t )k=a(1)+a(2)*t; end %定義原型函數(shù)kformat long%小數(shù)精度定義為小數(shù)點(diǎn)后15位a,JM=lsqcurvefit(K,1;1,t,k); %調(diào)用Isqcurvefit函數(shù)求系數(shù)和偏差值第 21 頁 共 60 頁結(jié)果如下:aa = 1.0e+03 * -1.625528269401662 0.000830188662693JMJM = 0.188679245282990由結(jié)果可知a=a(1)=-1625.528269,b=a(2)=0.830189,即由MATLAB解算出來的擬合函數(shù)為這與上面手工解算的結(jié)果基本一致。另外,我們可以將原始數(shù)據(jù)的散點(diǎn)圖和得到的擬合曲線畫在一個(gè)坐標(biāo)畫面上以檢測(cè)擬合函數(shù)的精度,編寫程序如下:ti=1959 1962 1963 1964 1965;ki=-1625.528296+0.830189*ti;plot(t,k,o,ti,ki)結(jié)果如圖 2所示,最小二乘法曲線擬合的結(jié)果是找到符合經(jīng)驗(yàn)公式的最優(yōu)曲線,但這一經(jīng)驗(yàn)公式是否有效還需要事后檢驗(yàn),一般就是從圖像上做出判斷。定量的方法也是有的,一般是計(jì)算殘差平方和,再進(jìn)行統(tǒng)計(jì)檢驗(yàn),對(duì)此就不做多余的講解了。通過對(duì)圖 2的分析可知擬合曲線與原始數(shù)據(jù)是比較穩(wěn)合的,滿足要求。圖 2 擬合函數(shù)對(duì)原始數(shù)據(jù)的逼近2.5 最小二乘曲線擬合案例分析與解算起重量限制器是用來保護(hù)塔機(jī)的重要裝置之一,是用于防止因超重而引起起升電機(jī)、傳動(dòng)機(jī)構(gòu)、鋼絲繩的損壞。但是它只能在極限的狀態(tài)下保護(hù)塔機(jī)起升機(jī)構(gòu)不會(huì)受到損壞,不能夠顯示起重量值,因此,司機(jī)在操作過程中不了解塔機(jī)每次起吊重量的具體狀況。為了進(jìn)一步提高塔機(jī)的安全性能和工作效率,增加塔機(jī)起重量在線監(jiān)測(cè)裝置非常重要,實(shí)時(shí)準(zhǔn)確地測(cè)量出起重量是在線監(jiān)測(cè)的關(guān)鍵。在實(shí)時(shí)臨測(cè)系統(tǒng)中,在原有起重量限制器的基礎(chǔ)上加裝了拉力傳感器,傳感器所測(cè)量的拉桿拉力Q與鋼絲繩的張力F之間存在著一定的函數(shù)關(guān)系,起重量增加,拉桿拉力也相應(yīng)增加,因此可通過間接測(cè)量拉桿拉力的方法先測(cè)出鋼絲繩的張力,然后根據(jù)吊鉤處的鋼絲繩倍率關(guān)系計(jì)算出實(shí)際起重量,從而在拉桿拉力與塔機(jī)起重量之間建立起函數(shù)關(guān)系。由于塔機(jī)起重量G與鋼絲繩張力F之間有確定的函數(shù)關(guān)系,在實(shí)際應(yīng)用中,以塔機(jī)起重量G代替鋼絲繩張力F作為輸出樣本,以拉桿拉力Q作為輸入樣本。塔機(jī)QTZ63最大額定起重量為,分別以,為起重量,測(cè)量相應(yīng)的拉力傳感器拉力Q,以獲取樣本表 3所示。樣本拉桿拉力Q/kN起重量G/kg10020.4560030.94120041.44180052.10240062.61300073.36360084.27420095.164800106.055400117.336000表 3實(shí)測(cè)樣本、估算值及相對(duì)誤差 利用MATLAB畫出其散點(diǎn)圖,分析其函數(shù)模型,程序代碼如下:G=0 600 1200 1800 2400 3000 3600 4200 4800 5400 6000;Q=0 0.45 0.94 1.44 2.10 2.61 3.36 4.27 5.16 6.05 7.33;plot(Q,G,o)結(jié)果如圖 3所示,根據(jù)散點(diǎn)圖的走勢(shì)我們可以設(shè)原函數(shù)為三次多項(xiàng)式函數(shù)模型: 圖 3樣本數(shù)據(jù)散點(diǎn)圖由于該案例的運(yùn)算量不是太大,所以在這里我們?cè)诓捎肕ATLAB解算的同時(shí)也進(jìn)行了一次手工解算,同時(shí)也可以就兩種方法的對(duì)比體現(xiàn)出MATLAB解算的高效、簡(jiǎn)單與快捷的特點(diǎn),但是在這個(gè)大數(shù)據(jù)時(shí)代,我們碰到的更多是手工解算所不能完成的大數(shù)據(jù),到時(shí)候就只能利用MATLAB實(shí)現(xiàn)了。(1)由原始數(shù)據(jù)散點(diǎn)圖得出函數(shù)模型如下(2)將表 3中的原始數(shù)據(jù)代入上式得超定方程組 該超定方程組的矩陣形式為,其中(3)建立法方程組(4)解法方程組,得所以所得的擬合函數(shù)為通過對(duì)散點(diǎn)圖的分析我們已經(jīng)假設(shè)出了函數(shù)原型.求解過程實(shí)現(xiàn)的MATLAB程序如下:G=0 600 1200 1800 2400 3000 3600 4200 4800 5400 6000;Q=0 0.45 0.94 1.44 2.10 2.61 3.36 4.27 5.16 6.05 7.33;令,這樣,原函數(shù)就可以寫出,用MATLAB程序代碼寫出:function G = F( a,Q )G=a(1)*Q.3+a(2)*Q.2+a(3)*Q; end%定義原型函數(shù)Gformat long%小數(shù)精度定義為小數(shù)點(diǎn)后15位a,JM=lsqcurvefit(F,1;1;1,Q,G); %調(diào)用Isqcurvefit函數(shù)求系數(shù)和偏差值第 60 頁 共 60 頁結(jié)果如下:a = 1.0e+03 * 0.004601860834153 -0.110534167186377 1.383597884382993 JM = 1.523115957936404e+04由結(jié)果可知a=a(1)=4.6019,b=a(2)=-110.5342,c=a(3)=1383.5979。即由MATLAB解算出來的擬合函數(shù)為擬合函數(shù)與上面手工解算的結(jié)果是一致的。通過傳統(tǒng)手工解算與MATLAB解算過程的對(duì)比,能夠明顯的看出MATLAB解算比手工解算要簡(jiǎn)單方便的多,這種對(duì)比在數(shù)據(jù)量更大的案例中會(huì)更加的顯著,而且在那種大數(shù)據(jù)處理中手工解算是很容易出錯(cuò)的,MATLAB解算可以避免這種錯(cuò)誤。2.6 擬合函數(shù)的精度檢測(cè)由于手工解算和MATLAB解算的擬合結(jié)果是一樣的,我們采用畫圖法檢測(cè)精度是只需要畫一幅圖如圖 4所示:圖 4擬合函數(shù)對(duì)原始數(shù)據(jù)的逼近觀察散點(diǎn)圖可知擬合函數(shù)曲線與原始數(shù)據(jù)的吻合度是非常高的,定性分析的整體精度是滿足要求的。不同之處在于這里MATLAB解算的偏差值從表面上看起來是很大的,這主要是因?yàn)樵摪咐捎玫臄?shù)據(jù)原本就大,我們可以求其相對(duì)誤差,從另一方面定量來看一下其擬合精度,相對(duì)誤差表如下表 4所示:樣本拉桿拉力Q/kN起重量G/kg擬合函數(shù)所求起重量G/kg相對(duì)誤差/%1000020.45600600.660.1530.9412001206.740.5741.4418001776.921.3052.1024002460.722.4762.6130002940.042.0473.3636003575.570.6984.2742004250.881.2095.1648004828.570.59106.0554005344.011.05117.3360006015.270.25表 4 擬合曲線所求起重量相對(duì)理論值的相對(duì)誤差表觀察該表其單個(gè)樣本的相對(duì)誤差最大也就為2.47%,從事件發(fā)生的概率來講這個(gè)概率的事件屬于小概率事件,另外 GB5l4494規(guī)定:起重機(jī)應(yīng)安裝起重量限制器,對(duì)最大起重量大于6t的起重機(jī)如設(shè)有提示裝置,則其數(shù)值誤差不得大于指示值的5,因此定量分析結(jié)果的精度是滿足要求的。2.7 擬合函數(shù)在實(shí)際運(yùn)用中的優(yōu)勢(shì)塔機(jī)起重量監(jiān)測(cè)中存在的非線性問題中,采用數(shù)據(jù)擬合理淪,建立了起重量 G和拉桿拉力Q之間的函數(shù)關(guān)系式,使塔機(jī)起重量監(jiān)測(cè)在PLC中得以實(shí)現(xiàn)。在實(shí)際運(yùn)用中,該方法具有如下優(yōu)點(diǎn):(1)計(jì)算結(jié)果惟一,計(jì)算量小,便于在PLC、單片機(jī)等硬件設(shè)備上實(shí)現(xiàn);(2)可精確、方便地實(shí)現(xiàn)起重量的實(shí)時(shí)監(jiān)測(cè);(3)當(dāng)鋼絲繩倍率改變時(shí),只需調(diào)整對(duì)應(yīng)多項(xiàng)式的系數(shù),不必改動(dòng)其它硬件設(shè)施;(4)保留了原有起重量限制器中的超重預(yù)警開關(guān)和超重報(bào)警開關(guān),能夠?qū)崿F(xiàn)起重量預(yù)警和報(bào)警的雙重保護(hù)。2.8 拉格朗日插值原理和插值多項(xiàng)式構(gòu)造一般地,已知函數(shù)y=f(x)在互異的n+1個(gè)點(diǎn)x0 , x1 ,.xn處的函數(shù)值y0,y1,y2.yn就是構(gòu)造一個(gè)多項(xiàng)式Ln(x)。如果一個(gè)n次多項(xiàng)式在n+1個(gè)互異的節(jié)點(diǎn)x0 , x1 ,.xn滿足則稱為節(jié)點(diǎn)上的n次插值基函數(shù),那么我們可以求出插值基函數(shù)為:于是滿足條件,則稱n次插值多項(xiàng)式Ln(x)為則Ln(x)為拉格朗日插值多項(xiàng)式。記插值余項(xiàng)為以下:則于是:上面公式為完整的拉格朗日插值公式。2.9 拉格朗日插值事例分析Matlab在計(jì)算一維插值函數(shù)時(shí)使用函數(shù)interp1,該函數(shù)提供了四種插值函數(shù)方法選著,分別是:線性插值,三次樣條插值,三次插值和最近點(diǎn)插值(linear,spline,cubic,nearest),其基本格式是:Intrer1(x,y,cx,method)其中x,y分別表示為數(shù)據(jù)點(diǎn)的橫縱坐標(biāo),x必須單調(diào),cx為需要的插值的坐標(biāo),不能超過x的范圍,例:在12個(gè)小時(shí)內(nèi),東海某一特殊區(qū)域每相隔一小時(shí)水溫大致分布如下:5,7,9,16,24,28,31,29,22,25,27,24.現(xiàn)在利用此數(shù)據(jù)分析東海該區(qū)域在第3.5小時(shí),6.3小時(shí).7.2小時(shí)的水溫。解:在matlab程序中輸入以下程序hours=1:12;temps=5,7,9,16,24,28,31,29,22,25,27,24;t=interp1(hours,temps,3.5,6.3,7.2);t = 12.5000 28.9000 30.6000在我們海洋測(cè)繪專業(yè)中,二維插值無處不在,在畫海圖的時(shí)候計(jì)算其水深分布,危險(xiǎn)物分布,水溫分布等,在山區(qū)測(cè)繪工作中用的十分廣泛,例如畫山區(qū)山形圖,山形圖像處理(如平滑,銳化)等,讓其圖像更清晰等,而matlab二維插值有以下:nearest 最鄰近插值;linear 雙線性插值; cubic 雙三次插值;缺省時(shí) 雙線性插值其格式為:z=interp2(x0,y0,z0,x,y,method) 方法和一維一樣的現(xiàn)在以書上的例題為例(p308):輸入以下命令:x=1:5;y=1:3;temps=82 81 80 82 84;79 63 61 65 81;84 84 82 85 86;mesh(x,y,temps)圖2:原水溫分布圖xi=1:0.2:5;yi=1:0.2:3;zi=interp2(x,y,temps,xi,yi,cubic);mesh(xi,yi,zi) 圖3 平滑后的水溫分布2.10 擬合的方原理和方法所謂擬合是指已知某函數(shù)的若干離散函數(shù)值f1,f2,fn,通過調(diào)整該函數(shù)中若干待定系數(shù)f(1, 2,n),使得該函數(shù)與已知點(diǎn)集的差別最小。如果待定函數(shù)是線性,就叫線性擬合或者線性回歸(主要在統(tǒng)計(jì)中),否則叫作非線性擬合或者非線性回歸。表達(dá)式也可以是分段函數(shù),這種情況下叫作樣條擬合。1:多項(xiàng)式擬合假設(shè)給定數(shù)據(jù)點(diǎn) (i=0,1,m),為所有次數(shù)不超過的多項(xiàng)式構(gòu)成的函數(shù)類,現(xiàn)求一,使得 (1)當(dāng)擬合函數(shù)為多項(xiàng)式時(shí),稱為多項(xiàng)式擬合,滿足式(1)的稱為最小二乘擬合多項(xiàng)式。 如果利用matlab擬合,則可以簡(jiǎn)化大部分步驟,因?yàn)閙atlb里面提供了函數(shù)polyfit(x,y,m),多項(xiàng)式在x處的y的值可以用一下命令計(jì)算:Y=ployval(A,x)例:對(duì)于以下數(shù)據(jù):利用多項(xiàng)式擬合有: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; A=polyfit(x,y,2) z=polyval(A,x); plot(x,y,k+,x,z,r) 圖4 多項(xiàng)式曲線擬合圖2:非線性最小二乘擬合在最小二乘法中,如果我們尋求函數(shù)f(x)是任意的非線性函數(shù),則稱為非線性最小二乘擬合,matlab中提供函數(shù)lsqcurvefit。已知數(shù)據(jù)點(diǎn): xdata=(xdata1,xdata2,xdatan),ydata=(ydata1,ydata2,ydatan) lsqcurvefit用以求含參量x(向量)的向量值函數(shù)F(x,xdata)=(F(x,xdata1),F(x,xdatan)T 中的參變量x(向量),使得輸入格式為: (1) x = lsqcurvefit (fun,x0,xdata,ydata); (2) x =lsqcurvefit(fun,x0,xdata,ydata,options); (3)x=lsqcurvefit(fun,x0,xdata,ydata,options,grad); (4) x,options=lsqcurvefit(fun,x0,xdata,ydata,); (5) x,options,funval=lsqcurvefit(fun,x0,xdata,ydata,);(6)x,options,funval,Jacob=lsqcurvefit(fun,x0,xdata, ydata,);例對(duì)下面一組數(shù)據(jù)擬合為編寫m文件function f=curvefun1(x,tdata)f=x(1)+x(2)*exp(-0.02*x(3)*tdata) %其中 x(1)=a; x(2)=b;x(3)=k;tdata=100:100:1000cdata=1e-03*4.54,4.99,5.35,5.65,5.90,6.10,6.26,6.39,6.50,6.59;x0=0.2,0.05,0.05;x=lsqcurvefit (curvefun1,x0,tdata,cdata)f= curvefun1(x,tdata) f =0.0043 0.0051 0.0056 0.0059 0.0061 0.0062 0.0062 0.0063 0.0063 0.0063x = 0.0063 -0.0034 0.2542 3 插值與擬合實(shí)際建模與分析基于前面所述插值與擬合的基礎(chǔ)上,分析插值與擬合在本專業(yè)中應(yīng)用1:?jiǎn)栴}的提出在測(cè)繪專業(yè)中時(shí)常會(huì)提到曲線放樣,我國(guó)的公路的平面曲線設(shè)計(jì)中,主要是以直導(dǎo)線與圓曲線的組合以及直導(dǎo)線與復(fù)曲線的組合為主,在解決曲線的順應(yīng)性(光滑性)方面,也只用了緩和曲線來進(jìn)行直線,曲線的過度,在這種設(shè)計(jì)模式下,在地形和其他條件受到限制條件下必然使設(shè)計(jì)標(biāo)準(zhǔn)降低,設(shè)計(jì)效果不能很好的滿足規(guī)范要求,所以在一些先進(jìn)的國(guó)家中試圖突破以往設(shè)計(jì)模式。在我國(guó)吉林輝南縣到靖宇縣,地處長(zhǎng)白山腳小,為山區(qū),地形復(fù)雜,冬季多雪,經(jīng)測(cè)的數(shù)據(jù)如下(為了計(jì)算方便,設(shè)曲線兩端的連線方向?yàn)樽鴺?biāo)為x軸方向,以連線法線為y坐標(biāo)):X:50 100 150 200 250y:23 43.2 50.1 43 23.25且知道二級(jí)公路曲線半徑為60米,現(xiàn)在試尋找一種方法,設(shè)計(jì)一條平面曲線,是之能夠通過限定恨死的地形點(diǎn),而能通過滿足規(guī)范規(guī)定的曲線要素要求,并通過計(jì)算加密施工控制點(diǎn)進(jìn)行敷衍設(shè)平面曲線。2:?jiǎn)栴}分析和模型建立從公路設(shè)計(jì)的平面應(yīng)滿足行車安全,經(jīng)濟(jì)等,以及在一定條件下美觀來考慮,公路平面曲線必須光滑并使其有連續(xù)的二階導(dǎo)數(shù),這樣才能保證行車轉(zhuǎn)角變化連續(xù),即使汽車行駛軌跡曲率變化連續(xù),從而保證行車舒服安全??紤]已知的實(shí)際問題:在已知五點(diǎn)坐標(biāo)條件下設(shè)計(jì)應(yīng)該滿足以上要求的具有連續(xù)的二階導(dǎo)數(shù)是的平面曲線,顯然我們可以采用插值與擬合,得到一個(gè)含有xn的一項(xiàng)函數(shù)s(x)滿足:1:S(Xi) = yi (j = 0,1,.n)2:函數(shù)s(x)上如何地方連續(xù)二階導(dǎo)數(shù)存在3:已知兩端點(diǎn)的直線相連使得:s(x0)” = s(xn)”滿足上面條件有含有x3的函數(shù),可以利用插值與擬合的到,其中三次樣條插值最為精確,主要是最后一個(gè)條件確定的。3:matlab編程實(shí)現(xiàn)x=50:50:250;y=23,43.2,50.1 ,43,23.25;h=50:2.5:250;t=interp1(x,y,h,spline); plot(x,y,+,h,t,x,y,r:)xlabel(x),ylabel(y)title(公路曲線三次樣條插值圖)圖像對(duì)比如下(綠色為三次樣條圖)圖5: 原圖和插值圖對(duì)比當(dāng)然也可使用曲線擬合,但是未必能滿足最后一個(gè)約定條件,其代碼如下:x=50:50:250;y=23,43.2,50.1,43,23.25;h=50:25:250;a=polyfit(x,y,3)z=polyval(a,h);plot(x,y);hold on;plot(h,z,r)a =0.0000 -0.0029 0.8310 -11.4400從上面看出第一項(xiàng)為0,表明不存在x3項(xiàng),所以擬合不精確,因?yàn)樽詈笠粋€(gè)條件約束插值與擬合在測(cè)繪專業(yè)無處不在,利用matlab實(shí)現(xiàn)插值與擬合,方法簡(jiǎn)單,可視化效果好,本論文認(rèn)真分析了拉格朗日插值原理,實(shí)現(xiàn)了一維二維插值以及擬合等,并通過了插值和擬合分析了實(shí)際例子,從實(shí)驗(yàn)結(jié)果表明,插值利于計(jì)算與插值節(jié)點(diǎn)近的點(diǎn),而擬合在整體上使得誤差最小,已知點(diǎn)未必在擬合的圖像上,在實(shí)際生活中因具體使用。4 MATLAB在擬合與插值中的應(yīng)用在大量的應(yīng)用領(lǐng)域中,人們經(jīng)常面臨用一個(gè)解析函數(shù)描述數(shù)據(jù)(通常是測(cè)量值)的任務(wù)。(比如在土木工程中對(duì)實(shí)驗(yàn)梁的應(yīng)力應(yīng)變(-) 曲線的數(shù)據(jù)進(jìn)行擬合,從而得出鋼筋混凝土的彈性模量的計(jì)算式。)在這里討論的方法是曲線擬合與插值。其中包括曲線擬合,一維插值,二維插值以及如何解決插值中求值時(shí)的單調(diào)性問題。4.1 曲線擬合 曲線擬合涉及回答兩個(gè)基本問題:最佳擬合意味著什么?應(yīng)該用什么樣的曲線?可用許多不同的方法定義最佳擬合,并存在無窮數(shù)目的曲線。我們將最佳擬合解釋為在數(shù)據(jù)點(diǎn)的最小誤差平方和,且所用的曲線限定為多項(xiàng)式時(shí),那么曲線擬合是相當(dāng)簡(jiǎn)捷的。先看看圖1圖1 2階曲線擬合 在MATLAB中,函數(shù)polyfit求解最小二乘曲線擬合問題。簡(jiǎn)單闡述這個(gè)函數(shù)的用法,讓我們以上面圖11.1中的數(shù)據(jù)開始。 x=0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .11; y=-0.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2; 為了用polyfit,我們必須給函數(shù)賦予上面的數(shù)據(jù)和我們希望最佳擬合數(shù)據(jù)的多項(xiàng)式的階次或度。如果我們選擇n=1作為階次,得到最簡(jiǎn)單的線性近似。通常稱為線性回歸。如果我們選擇n=2作為階次,得到一個(gè)2階多項(xiàng)式。 n=2; % polynomial order p=polyfit(x, y, n)p = -9.8108 20.1293 -0.0317 polyfit 的輸出是一個(gè)多項(xiàng)式系數(shù)的行向量。其解是y = 9.8108x2 20.1293x0.0317。為了將曲線擬合解與數(shù)據(jù)點(diǎn)比較,把二者都繪成圖。 xi=linspace(0, 1, 100); % x-axis data for plotting z=polyval(p, xi); 為了計(jì)算在xi數(shù)據(jù)點(diǎn)的多項(xiàng)式值,調(diào)用MATLAB的函數(shù)polyval。 plot(x, y, o , x, y, xi, z, : ) 畫出了原始數(shù)據(jù)x和y,用o標(biāo)出該數(shù)據(jù)點(diǎn),在數(shù)據(jù)點(diǎn)之間,再用直線重畫原始數(shù)據(jù),并用點(diǎn) : 線,畫出多項(xiàng)式數(shù)據(jù)xi和z。 xlabel( x ), ylabel( y=f(x) ), title( Second Order Curve Fitting ) 將圖作標(biāo)志。這些步驟的結(jié)果表示于前面的圖1中。 多項(xiàng)式階次的選擇是有點(diǎn)任意的。兩點(diǎn)決定一直線或一階多項(xiàng)式。三點(diǎn)決定一個(gè)平方或2階多項(xiàng)式。按此進(jìn)行,n+1數(shù)據(jù)點(diǎn)唯一地確定n階多項(xiàng)式。于是,在上面的情況下,有11個(gè)數(shù)據(jù)點(diǎn),我們可選一個(gè)高達(dá)10階的多項(xiàng)式。然而,高階多項(xiàng)式給出很差的數(shù)值特性,我們不應(yīng)選擇比所需的階次高的多項(xiàng)式。此外,隨著多項(xiàng)式階次的提高,近似變得不夠光滑,因?yàn)檩^高階次多項(xiàng)式在變零前,可多次求導(dǎo)。不妨選一個(gè)10階多項(xiàng)式 pp=polyfit(x, y, 10) ; format short e pp. 則ans = -4.6436e+005 2.2965e+006 -4.8773e+006 5.8233e+006 -4.2948e+006 2.0211e+006 -6.0322e+005 1.0896e+005 -1.0626e+004 4.3599e+002 -4.4700e-001要注意在現(xiàn)在情況下,多項(xiàng)式系數(shù)的規(guī)模與前面的2階擬合的比較。還要注意在最小(-4.4700e-001)和最大(5.8233e+006)系數(shù)之間有7個(gè)數(shù)量級(jí)的幅度差。將這個(gè)解作圖,并把此圖與原始數(shù)據(jù)及2階曲線擬合相比較。 zz=polyval(pp, xi); plot(x, y, o , xi, z, : , xi, zz) xlabel( x ), ylabel( y=f(x) ), title( 2nd and 10th Order curve Fitting ) 在下面的圖11.2中,原始數(shù)據(jù)標(biāo)以o,2階曲線擬合是虛線,10階擬合是實(shí)線。注意,在10階擬合中,在左邊和右邊的極值處,數(shù)據(jù)點(diǎn)之間出現(xiàn)大的紋波。當(dāng)企圖進(jìn)行高階曲線擬合時(shí),這種紋波現(xiàn)象經(jīng)常發(fā)生。根據(jù)圖2,顯然, 越多就越好 在這里不適用。圖2 2階和10階曲線擬合4.2 一維插值 正如曲線擬合所描述的那樣,插值定義為對(duì)數(shù)據(jù)點(diǎn)之間函數(shù)的估值方法,這些數(shù)據(jù)點(diǎn)是由某些集合給定。當(dāng)我們不能很快地求出所需中間點(diǎn)的函數(shù)值時(shí),插值是一個(gè)有價(jià)值的工具。例如,當(dāng)數(shù)據(jù)點(diǎn)是某些實(shí)驗(yàn)測(cè)量的結(jié)果或是過長(zhǎng)的計(jì)算過程時(shí),就有這種情況。 舉例一維插值,考慮下列問題,(由于手頭沒有我們專業(yè)相關(guān)的實(shí)驗(yàn)數(shù)據(jù),故采用老師經(jīng)常提到的測(cè)溫的例子,只是數(shù)據(jù)名稱不一樣)12小時(shí)內(nèi),一小時(shí)測(cè)量一次室外溫度。數(shù)據(jù)存儲(chǔ)在兩個(gè)MATLAB變量中。 hours=1:12; % index for hour data was recorded temps=5 8 9 15 25 29 31 30 22 25 27 24; % recorded temperatures plot(hours, temps, hours, temps, + ) % view temperatures title( Temperature ) xlabel( Hour ), ylabel( Degrees Celsius )圖3 在線性插值下室外溫度曲線 正如圖3看到的,MATLAB畫出了數(shù)據(jù)點(diǎn)線性插值的直線。為了計(jì)算在任意給定時(shí)間的溫度,人們可試著對(duì)可視的圖作解釋。另外一種方法,可用函數(shù)interp1。 t=interp1(hours, temps, 9.3) % estimate temperature at hour=9.3t = 22.9000 t=interp1(hours, temps, 4.7) % estimate temperature at hour=4.7t = 22 t=interp1(hours, temps, 3.2 6.5 7.1 11.7) % find temp at many points!t =

注意事項(xiàng)

本文(差值擬合算法的應(yīng)用及matlab實(shí)現(xiàn)計(jì)算機(jī)科學(xué)和技術(shù)專業(yè))為本站會(huì)員(文***)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請(qǐng)重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!