鄭岳澤

摘要:在測量數據過程中,由于計算量大、測量次數比較多、處理過程比較復雜等,使得處理的時候沒有很高的可靠性。本文首先簡要介紹了MATLAB軟件的主要功能、系統內容、運行環境及其特點等基礎知識。然后從MATLAB的數據處理能力出發,從簡單數值運算、數據誤差處理等多個方面詳細闡述了MATLAB軟件在處理測量數據時的應用。
關鍵詞:MATLAB 數據處理 誤差處理
在工程測量數據處理的過程中,如果處理過程復雜、計算量大、誤差大等,會導致結果沒有很高的可靠性,從而經過不斷的發展和進步,不少測量人員逐漸開始應用計算機編程的方式來處理誤差問題,其中最有代表性的實際上就是Matlab語言編程側測量數據處理軟件,是數據處理過程中首選的分析和研究工具。
一、MATLAB簡介
Matlab能夠很好的結合數學計算和生產的一種包括功能各異和主包工具箱共同形成編程方式,最基本的形式結構就是矩陣。表達式類似于數學計算中的形式,對于用戶使用和學習具有很大幫助[1]。系統主要包括Matlab語言、Matlab圖形處理系統、Matlab工作環境、Matlab應用程序口、Matlab數學函數庫五大部分。主要功能包括:符合計算功能、數值計算功能、處理文字功能、分析數據和可視化數據、SMUKNK動態仿真等。此外Matlab還是開放的,在Matlab中除了內部函數外基本上所有的工具、文件等都可以進行更改和讀取源文件。用戶在使用的時候可以把其當做參考,還可以適當更改,確保能夠符合實際需要,也可以在工具中適當加入自己編寫的文件從而形成新工具包。
二、MATLAB語言特點
Matlab在測量數據的過程中存在四個基本特點,第一,Matlab具備可視化展示數據的功能特點;第二,Matlab中國具備很多種函數形式,是一種具有強大符號運算和數值運算的方式;第三,具有開放的兼容性,可以兼容Windows系統;第四,豐富多彩的工具箱。依據上述優勢和特點,Matlab軟件已經逐漸被大量運用到數據處理、計算機輔助設計、開發應用中[2]。
三、MATLAB中的簡單數值運算
處理測量數據主要包括分析數據、統計數理、可視化數據等[3]。在測量和統計數據平差的時候,一般使用的都是最小二乘平差,存在有法方程的求解,也就是說能夠求解線性方程組NX=b其中,N是n階方程。
在求解上述線性方程組的過程中,如果是使用全主元分解法,一般可以把其分為兩部分進行計算求解,首先可以利用Q、P排列矩陣,表示全主元三角分解:
PNQT=DU,其中U是上三角陣,D是下三角陣,可以利用全主元消去的方式來得到分解結果,從而形成正交排列矩陣,通過上述三角矩陣分解方程式可以得到:
NX=b (QX)(PNQT)=Pb (QX)DU=Pb假設QX=Z、y=UZ,可以發現Pb=DY,因此求解NX=b的基本過程實際上就是:Y=D-1(Pb) Z=U-1Y X=QTZ
利用回代方式來求解Z和Y,在測量處理數據過程中建立兩個函數文件,一個是求解方程組,一個是主元三角分解,建立的兩個文件函數是:dupqjsv.m和dupqj.m。
以下面矩陣為實際例子,通過上述方式進行求解: X=
解得:XT=[-3,0,-2]
Matlab在處理數據的過程中,自身存在很多函數庫,以便于給用戶提供使用,方便用戶在使用的時候可以隨意調用,從而編寫出符合情況的自己的軟件。
四、MATLAB對數據誤差的處理
(一)處理數據誤差的原則
第一,當隨機誤差遠遠小于系統誤差的時候,基本上可以忽略隨機誤差,處理誤差的時候依據系統誤差進行。
第二,當系統誤差非常小或者已經得到修正以后,測量數據誤差的時候依據隨機誤差進行。
第三,系統誤差和隨機誤差沒有很大差別的時候,兩種誤差都不可以忽略,在處理數據誤差的時候,需要依據隨機誤差和系統誤差進行,最后依據綜合測量結果來處理誤差[4]。
(二)處理數據誤差的過程
在具有等精度的基礎上,處理數據結果的基本過程是:
第一,依據先后順序進行測量數據源,記錄測量值;第二,利用公式求出算數平均值;第三,通過公式合理計算出測量值的每一次殘余誤差;第四,核對殘余誤差和算數平均值;第五,依據萊特準則來合理分析和判斷粗大誤差,也就是剔除壞值;第六,計算測量單次標準差估算值;第七,計算算數平均值的相關標準差估算值;第八,計算算數平均值的相關極限誤差;第九,對系統誤差進行判斷,適當修正;第十,在計算算數平均值的時候,用公式計算不確定度;第十一,測量結果排列[5]。
依據上述過程在處理數據誤差的時候,利用Matlab軟件來處理數據實際結果的過程中,程序算法基本流程如下:依據下圖的程序流程來用Matlab軟件編制符合情況的部分軟件程序。
圖一 程序流程圖
結語:
總而言之,在處理數據的過程中,往往會存在數據分析、數據處理、最優控制、線性代數、求解超定方程組的問題,最好的處理方式就是 Matlab軟件,不僅可以方便的進行編輯菜單功能和圖形編輯功能,還可以示范簡單的處理數據應用,隨著不斷開發和研究Matlab工具,使得其在工程測量過程中,越來越重要。
參考文獻:
[1] 林成.工程測量數據誤差及其Matlab處理[J].吉林水利,2013(10):32-34.
[2] 孫義友,杭宇,程玉瑤等.談基于Matlab的工程測量實習軟件研制問題[J].成功(教育版),2010(6):187.endprint