付江缺,高萬(wàn)柱,裴良臣
(中南電力設(shè)計(jì)院,湖北 武漢 430071)
目前結(jié)合生產(chǎn)的水準(zhǔn)網(wǎng)程序?qū)崿F(xiàn)不多,主要在于不同行業(yè)的數(shù)據(jù)輸入輸出格式都不盡相同。專業(yè)的軟件生產(chǎn)商只能形成通用的版本。本文結(jié)合電力行業(yè)作業(yè)模式,以Matlab語(yǔ)言為基礎(chǔ)來(lái)對(duì)觀測(cè)數(shù)據(jù)進(jìn)行一鍵式處理[1],進(jìn)而實(shí)現(xiàn)生產(chǎn)的信息化和自動(dòng)化。
鑒于水準(zhǔn)網(wǎng)的線性化,采用間接平差最容易程序化實(shí)現(xiàn)。模型為[2]
將式(2)代入式(1),得
令l=L-(BX0+d),得誤差方程為
由最小二乘原理BTPV=0得=(BTPB)-1BTPl,再代入式(2)、式(4)反求V,及。最后進(jìn)行精度評(píng)定。但對(duì)于水準(zhǔn)網(wǎng)觀測(cè)值總能用所選參數(shù)線性表示,文獻(xiàn)[3]指出在平差前可以不給出參數(shù)的近似值,簡(jiǎn)化后的模型為
將式(6)代入式(5),得
令l=L-d,得誤差方程為
由最小二乘原理BTPV=0,得
簡(jiǎn)化后的模型不需要求解參數(shù)的近似值,這種簡(jiǎn)化更易編程,平差結(jié)果直接為參數(shù)的估值。再代入式(6)、式(8)反求及V。
合理的數(shù)據(jù)結(jié)構(gòu)有助于程序編寫效率的提高[4]??梢宰⒁獾綄?duì)于任何網(wǎng)形,一條水準(zhǔn)路線必然包括4個(gè)數(shù)據(jù):起始點(diǎn)、高差、距離、終點(diǎn),且H起+h高差=H終,因此在進(jìn)行數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)中,必須體現(xiàn)出終點(diǎn)、起點(diǎn),從而判斷其與高差關(guān)系。定義已知點(diǎn)數(shù)據(jù)(見圖1)字段為:序號(hào)、點(diǎn)號(hào)、高程。觀測(cè)數(shù)據(jù)(見圖2)文件字段為:測(cè)段序號(hào)、測(cè)段后視點(diǎn)名、測(cè)段前視點(diǎn)名、測(cè)段高差、測(cè)段距離??紤]到數(shù)據(jù)的可視化及編輯的人性化,數(shù)據(jù)的存儲(chǔ)平臺(tái)采用常規(guī)的.csv文件。
圖1 已知點(diǎn)數(shù)據(jù)
圖2 觀測(cè)數(shù)據(jù)
對(duì)于水準(zhǔn)路線的追蹤事實(shí)上就是對(duì)觀測(cè)數(shù)據(jù)中“點(diǎn)名”的追蹤;而間接平差模型中一個(gè)觀測(cè)數(shù)據(jù)就對(duì)應(yīng)一個(gè)方程,通過本文對(duì)數(shù)據(jù)結(jié)構(gòu)的定義,我們從系數(shù)矩陣B就可以反映出任意網(wǎng)形。系數(shù)矩陣B及常數(shù)項(xiàng)自動(dòng)形成的思想程序如圖3所示。
圖3 流程圖
for i=1:cc2 %cc2-觀測(cè)值個(gè)數(shù)
for j=1:cc4 %cc4-未知點(diǎn)個(gè)數(shù)
移栽時(shí)注意不要碰散土坨,以防根系受傷。在地膜中間單行栽植,株距70厘米,每畝1100株左右,移栽完后及時(shí)澆透水,然后覆蓋小拱棚,保證幼苗不受凍害。
if strcmp(name(j),nameB(i))==1
B(i,j)=-1;
end
if strcmp(name(j),nameF(i))==1
B(i,j)=1;
end
for j=1:cc0%cc0-已知點(diǎn)個(gè)數(shù)
if strcmp(name0(j),nameB(i))==1
B0(i)=-str2num(H0{j});
end
if strcmp(name0(j),nameF(i))==1
B0(i)=str2num(H0{j});
end
end
Y0(i)=str2num(YY{i});
s(i)=str2num(ss{i});
end
電力行業(yè),廠區(qū)范圍一般不會(huì)很大。小的不到1km2,大的也不過2~3km2,而重點(diǎn)關(guān)注區(qū)域則更小,對(duì)水準(zhǔn)控制要求的范圍有限。結(jié)合工程實(shí)際,在滿足規(guī)范要求的同時(shí),也要考慮成本,力求經(jīng)濟(jì)適用。所以網(wǎng)形不會(huì)很復(fù)雜,路線也不會(huì)太長(zhǎng)。實(shí)際操作中,只要依照規(guī)范進(jìn)行,原始觀測(cè)數(shù)據(jù)自然準(zhǔn)確可靠[5],后續(xù)的數(shù)據(jù)平差也就不需要考慮諸多不確定性的異常情況[6]。
已知數(shù)據(jù)文件見圖1及圖2,實(shí)例結(jié)果見表1及表2。
表1 高差平差值較差
表2 高程平差值較差
對(duì)比分析:較差結(jié)果在亞毫米位,對(duì)于工程來(lái)講是可以忽略的??赡軙?huì)存在這樣的疑問,高精度的變形監(jiān)測(cè)允許的誤差可能本身就要在亞毫米級(jí),那么此處的較差就會(huì)被掩蓋。這一點(diǎn),需要作出解釋,即:不同的程序?qū)崿F(xiàn)方式從理論上也會(huì)出現(xiàn)這些細(xì)微的差別。在工程應(yīng)用上,高精度的變形監(jiān)測(cè)體現(xiàn)的是相對(duì)性,所用的平差程序自然是保持唯一性,不可能以多種軟件混用所得到的結(jié)果來(lái)進(jìn)行比較分析。那么在同一程序下運(yùn)行時(shí),亞毫米級(jí)的變化自然能得到體現(xiàn),不會(huì)被掩蓋。
間接平差理論是無(wú)可爭(zhēng)議的成熟理論,本文在此基礎(chǔ)上的程序?qū)崿F(xiàn),可以應(yīng)用于任何等級(jí)的水準(zhǔn)網(wǎng)平差。而在工程應(yīng)用上,出現(xiàn)復(fù)雜網(wǎng)形及海量數(shù)據(jù)的情況基本可以排除,相應(yīng)因素引起的不確定性當(dāng)不用考慮。針對(duì)不同行業(yè)的作業(yè)模式,以此思維方式來(lái)進(jìn)行數(shù)據(jù)的自動(dòng)處理,經(jīng)濟(jì)適用,同時(shí)VC++和MATLAB進(jìn)行混合編程的方法已經(jīng)實(shí)現(xiàn),可以大大地減少源程序代碼,縮短軟件的開發(fā)周期[7-8],值得推廣。
[1]周建興.Matlab從入門到精通[M].北京:人民郵電出版社,2008.
[2]武漢大學(xué)測(cè)繪學(xué)院測(cè)量平差學(xué)科組.誤差理論與測(cè)量平差基礎(chǔ)[M].武漢:武漢大學(xué)出版社,2003.
[3]姚連璧,周小平.基于MATLAB的控制網(wǎng)平差程序設(shè)計(jì)[M].上海:同濟(jì)大學(xué)出版社,2006.
[4]王磊,譚志祥,張鮮妮,等.基于MATLA的水準(zhǔn)網(wǎng)經(jīng)典平差系統(tǒng)的開發(fā)和應(yīng)用[J].測(cè)繪科學(xué),2010,35(5):223-225.
[5]岑新遠(yuǎn),范東明.粗差分類探測(cè)的選權(quán)迭代抗差估計(jì)方法[J].測(cè)繪,2012(2):51-53.
[6]李德仁,袁修孝.誤差處理與可靠性理論[M].武漢:武漢大學(xué)出版社,2002.
[7]柏晟.VC++與MATLAB 6.5的混合編程方法研究與實(shí)現(xiàn)[J].電腦開發(fā)與應(yīng)用,2005(4):24-27.
[8]陳東嬌,劉慶繁,陳家焱,等.MATLAB 6.5與VC接口方法的研究[J].機(jī)械與電子,2006(5):9-11.