袁會等
【摘 要】在煤礦生產(chǎn)中,常常需要測量立井井筒中心坐標。介紹了用MATLAB最小二乘曲線擬合的方法測量井筒中心坐標,編寫了擬合程序,并在李糧店煤礦副井井筒井口中心偏移測量中進行了應用,取得了較好的效果。
【關鍵詞】MATLAB;最小二乘法;超定方程組;曲線擬合;井筒中心測量
0 前言
MATLAB是由美國MathWorks公司開發(fā)的一套以矩陣計算為基礎的工程計算軟件。它集成數(shù)值計算、可視化和編程功能且便于使用,擁有強大的繪圖功能和為解決各種特殊的科學和工程計算問題的工具箱。它具有計算功能強、編程效率高、使用簡便、易于擴充等特點。MATLAB已成為計算機輔助設計、數(shù)據(jù)處理分析、算法研究與應用開發(fā)的首選工具[1]。
在煤礦建井初期井筒中心位置是根據(jù)近井點用極坐標法標定的[2]。井筒位置用大木樁固定,并在木樁上釘小釘作為井筒中心標志,標定后按地面一級導線的精度對井筒中心坐標進行實測[3],作為最后的測量成果。在煤礦生產(chǎn)中,由于提升系統(tǒng)改造、立井延深等原因,需要使用井筒中心坐標,常常由于建井期間井筒中心坐標丟失或現(xiàn)有井筒發(fā)生變形,需要重新測量井筒中心坐標。較常用的方法是在井筒上測量任意三點,用解析法解算井筒中心坐標[4],這種方法只適用于井筒形狀較規(guī)則的豎井;采用最小二乘曲線擬合確定井筒中心坐標[5]適用范圍廣、理論依據(jù)充分、精度高。
1 最小二乘曲線擬合的基本原理及MATLAB實現(xiàn)[6-9]
所謂曲線擬合是指設法找出某條光滑的曲線能最佳地擬合數(shù)據(jù)。在曲線擬合時,并不要求擬合曲線一定經(jīng)過每一個數(shù)據(jù)點。其主要思想是使擬合后的曲線能反映這些離散數(shù)據(jù)的變化趨勢,使數(shù)據(jù)點的誤差平方和最小。也就是已知一組測定的數(shù)據(jù)(例如N個點(xi,yi))去求得自變量x和因變量y的一個近似解析表達式y(tǒng)=f(x)。若記誤差δi=f(xi)-yi,i=1,2,…,N,則要使誤差的平方和最小,即要求(1)式中d最小,這就是常用的最小二乘法原理。
用最小二乘法求擬合曲線時,首先要確定f(x)的形式。當人們對研究對象的內(nèi)在特性和各因素間的關系有比較充分的認識時,一般用機理分析的方法建立描述y=f(x)的數(shù)學模型,再用曲線擬合的方法確定模型中的參數(shù)。但如果由于客觀事物內(nèi)部規(guī)律的復雜性及人們認識程度的限制,無法建立合乎機理規(guī)律的數(shù)學模型時,只有對觀測數(shù)據(jù)(xi,yi)進行分析,繪制散點圖,先猜測y=f(x)的形式,并通過上機實驗和誤差分析,不斷對比和計算,然后選出擬合數(shù)據(jù)較好的函數(shù)類型。最小二乘曲線擬合分為線性和非線性最小二乘擬合。
2.1 線性最小二乘擬合
利用最小二乘法進行曲線擬合時,要用求偏導數(shù)的方法確定擬合系數(shù),人工計算時計算量大且精度不高,利用MATLAB進行線性擬合可用以下方法:
(1)多項式擬合用polyfit(x,y,n)命令,其使用格式為A=polyfit(x,y,n),其中x,y為已知的擬合數(shù)據(jù),n為多項式次數(shù)。
(2)在最小二乘意義下,解超定方程組,利用A=R\y命令,直接求得待求參數(shù)。
2.2 非線性最小二乘擬合
擬合函數(shù)y=f(x)的待定系數(shù)不能全部以線性形式出現(xiàn)即為非線性最小二乘曲線擬合。在大多數(shù)情況下,一般將非線性擬合函數(shù)(如指數(shù)、雙曲線函數(shù)等)轉(zhuǎn)化為線性擬合函數(shù)求解。不能轉(zhuǎn)化的,MATLAB常用以下命令實現(xiàn)。
(1)lsqcurvefit()命令,其使用格式為x=lsqcurvefit(fun,x0,xdata,ydata),其中fun是要擬合的非線性函數(shù),x0是初始參數(shù),xdata,ydata是擬合點的數(shù)據(jù),該函數(shù)最終返回系數(shù)矩陣。
(2)nlinfit()命令,其應用格式為beta=nlinfit(x,y,fun,beta0),其中x和y是擬合點數(shù)據(jù),fun是回歸(擬合)的函數(shù),beta0是初始函數(shù)。
(3)lsqnonlin()命令,其應用格式為x=lsqnonlin(fun,x0),其中fun為擬合函數(shù),x0為初始參數(shù),將輸出的系數(shù)結(jié)果放在變量x中。
2 基于MATLAB井筒中心測量的思路及程序[10-12]
2.1 井筒中心測量的思路
顯然,井筒從理論上應該是一個圓形,它的數(shù)學模型可以用圓方程來表示,圓的一般方程為:
3 應用實例
2013年11月李糧店煤礦副井井筒潰沙,造成地表下沉及井筒偏斜,需要測量井口中心偏移量。我們對上井口井壁測量了23組點坐標(見表1)。
然后利用擬合程序進行圓擬合,求得井筒上口中心坐標x0=298.869、y0=655.061及半徑r=3.286,繪制了擬合圖形(圖1)。并與建井標定坐標相比較,求出了偏移值。
4 結(jié)束語
(1)曲線擬合求取井筒中心坐標,是比較科學合理的方法,利用MATLAB強大矩陣運算功能,通過求解超定方程組進行圓曲線擬合,簡化了程序編制,提高了運行效率。
(2)最小二乘法曲線擬合求取井筒中心坐標,是建立在所有測量值基礎上的,測量的數(shù)據(jù)量越大,取得的井筒中心坐標越接近真值。
(3)各數(shù)據(jù)點的采集盡量在井筒水平斷面上均勻選取,并進行高精度測量,以便提高井筒中心坐標的求取精度。
【參考文獻】
[1]王正林,劉明,陳連貴,等編.精通MATLAB[M].3版.北京:電子工業(yè)出版社,2013.
[2]張國良,朱家鈺,顧和和,等編.礦山測量學[M].徐州:中國礦業(yè)大學出版社,2001.
[3]中華人民共和國能源部.煤礦測量規(guī)程[M].北京:煤炭工業(yè)出版社,1989.
[4]柏運輝.確定井筒中心的一種方法.礦山測量[J].1987(03):31-32.
[5]張全武.用最小二乘擬合方法確定井筒中心坐標[J].礦山測量,1997(03):37-38.
[6]張韻華,陳效群,奚梅成,編.數(shù)值計算方法與算法[M].2版.科學出版社,2006.
[7]陳光,任志良,孫海柱.最小二乘曲線擬合及MATLAB實現(xiàn)[J].兵工自動化,2005,24(3):107-108.
[8]何正風,張德豐,丁偉雄,等編.MATLAB在數(shù)學方面的應用[M].北京:清華大學出版社,2012.
[9]宣明,王新成,阮婧,等編.數(shù)學建模與數(shù)學實驗[M].杭州:浙江大學出版社,2010.
[10]陳懷琛,高淑萍,楊威,編.工程線性代數(shù)(MATLAB版)[M].北京:電子工業(yè)出版社,2007.
[11]同濟大學數(shù)學系,編.工程數(shù)學線性代數(shù)[M].5版.北京:高等教育出版社,2007.
[12]周本虎,瞿勇,李薇,等編.MATLAB與數(shù)學實驗[M].北京:中國林業(yè)出版社,2005.
[責任編輯:劉展]