国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

CASIOfx—5800P公路坐標(biāo)計(jì)算程序的設(shè)計(jì)與實(shí)踐

2018-12-22 10:55:48向繼平
電腦知識(shí)與技術(shù) 2018年33期
關(guān)鍵詞:程序矩陣

向繼平

摘要:CASIO fx-5800P是測(cè)繪與土木工程領(lǐng)域廣泛使用的計(jì)算器,特別適合現(xiàn)場(chǎng)計(jì)算。本文通過(guò)比較分析,選取基于線元的Gauss-Legendre數(shù)學(xué)模型,結(jié)合CASIO fx-5800P計(jì)算器的特點(diǎn),通過(guò)設(shè)計(jì)實(shí)用的公路坐標(biāo)計(jì)算程序,提高現(xiàn)場(chǎng)計(jì)算的工作效率和精度。

關(guān)鍵詞:Gauss-Legendre;線元;程序;矩陣;坐標(biāo)計(jì)算

中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)33-0241-03

在公路測(cè)量工作中,要經(jīng)常對(duì)線路的中樁、邊樁、結(jié)構(gòu)物位置進(jìn)行實(shí)地放樣,這就需要在現(xiàn)場(chǎng)實(shí)時(shí)快速地獲取放樣點(diǎn)的坐標(biāo)。我國(guó)現(xiàn)行《公路路線設(shè)計(jì)規(guī)范》規(guī)定,公路平面線形由直線、圓曲線和緩和曲線(回旋線)三種要素組成。在現(xiàn)代高速公路上,有時(shí)緩和曲線所占的比例超過(guò)了直線和圓曲線,成為平面線形的主要組成部分。緩和曲線的計(jì)算復(fù)雜,尤其是非完整緩和曲線,計(jì)算器編程計(jì)算是解決公路坐標(biāo)現(xiàn)場(chǎng)計(jì)算的有效手段。

1 數(shù)學(xué)模型的選擇

公路坐標(biāo)計(jì)算的關(guān)鍵是數(shù)學(xué)模型的選擇。傳統(tǒng)的計(jì)算采用交點(diǎn)法,它針對(duì)組成公路平面線形的直線、圓曲線和緩和曲線采用不同的數(shù)學(xué)模型進(jìn)行計(jì)算,計(jì)算時(shí)要先建立各個(gè)計(jì)算單元(直線、圓曲線、緩和曲線)的相對(duì)坐標(biāo)系,再根據(jù)點(diǎn)的樁號(hào)確定其所在的計(jì)算單元,采用對(duì)應(yīng)的計(jì)算公式求出該點(diǎn)在相對(duì)坐標(biāo)系中的坐標(biāo),然后轉(zhuǎn)換為公路統(tǒng)一坐標(biāo)系的坐標(biāo),計(jì)算過(guò)程復(fù)雜。

線元法將組成公路平面線形的直線、圓曲線和緩和曲線均看作獨(dú)立的單元——線元。直線可以看作是曲率半徑為∞的曲線,圓曲線為曲率半徑為定值的曲線,緩和曲線為曲率半徑漸變的曲線,因此,公路中線可以看成是由曲線構(gòu)成的。曲線元上任一點(diǎn)的曲率都隨弧長(zhǎng)作線性變化,基于這一共性推導(dǎo)出的任意點(diǎn)坐標(biāo)計(jì)算積分通式——Gauss-Legendre公式可作為公路坐標(biāo)計(jì)算的通用數(shù)學(xué)模型,該公式與點(diǎn)所在的位置無(wú)關(guān)。5節(jié)點(diǎn)Gauss-Legendre公式用于各種情況的緩和曲線坐標(biāo)計(jì)算時(shí),能滿足計(jì)算誤差小于1mm的精度要求,且其公式符合循環(huán)結(jié)構(gòu)程序的特征。因此,設(shè)計(jì)公路坐標(biāo)計(jì)算程序時(shí),應(yīng)基于線元法建立數(shù)學(xué)模型,并采用5節(jié)點(diǎn)Gauss-Legendre公式進(jìn)行計(jì)算。

2 坐標(biāo)計(jì)算的通用公式

如圖1所示,P是線元SE上的任意中樁。線元起點(diǎn)S的樁號(hào)為ZS、曲率半徑為RS、坐標(biāo)為(xS, yS)、切線方位角為αS;線元終點(diǎn)E的樁號(hào)為ZE、曲率半徑為RE;中樁P的樁號(hào)ZP。當(dāng)曲線左偏時(shí),RS和RE取負(fù)(-);當(dāng)曲線右偏時(shí),RS和RE取正(+)。

3 數(shù)據(jù)存儲(chǔ)設(shè)計(jì)

數(shù)據(jù)存儲(chǔ)設(shè)計(jì)是程序設(shè)計(jì)的核心工作之一。在公路坐標(biāo)計(jì)算中,5節(jié)點(diǎn)Gauss-Legendre通用公式的10個(gè)計(jì)算參數(shù)(A1~A5、V1~V5)和7個(gè)線元參數(shù)(包括線元起點(diǎn)的樁號(hào)、曲率半徑、坐標(biāo)x、y和切線方位角;線元終點(diǎn)的樁號(hào)和曲率半徑)的使用頻次高,其精度直接影響到計(jì)算結(jié)果的精度,因此必須存儲(chǔ)在一個(gè)固定、可靠的位置。

計(jì)算參數(shù)的使用具有一定的規(guī)律性,如計(jì)算時(shí)A1對(duì)應(yīng)V1、A2對(duì)應(yīng)V2、……、A5對(duì)應(yīng)V5,因此宜采用額外變量來(lái)存儲(chǔ)這些參數(shù)。程序設(shè)計(jì)時(shí),可采用10個(gè)額外變量Z[1]~Z[10]分別存儲(chǔ)這10個(gè)計(jì)算參數(shù),具體分配方案見(jiàn)圖2。

線元參數(shù)的存儲(chǔ)可采用三種形式:額外變量、統(tǒng)計(jì)串列、矩陣。存儲(chǔ)一個(gè)線元的參數(shù)至少需要7個(gè)額外變量,n個(gè)線元組成的路線需要7n個(gè)額外變量。CASIO fx-5800P計(jì)算器的統(tǒng)計(jì)串列每行只能存儲(chǔ)3個(gè)數(shù),存儲(chǔ)一個(gè)線元的參數(shù)至少需占用3行。無(wú)論是采用額外變量,還是采用統(tǒng)計(jì)串列,線元參數(shù)之間的對(duì)應(yīng)關(guān)系不直觀,用戶查看時(shí)容易造成困擾。CASIO fx-5800P計(jì)算器的矩陣每行可以存儲(chǔ)10個(gè)數(shù)據(jù),一行即可存放一個(gè)線元的全部參數(shù),線元之間、線元參數(shù)之間的對(duì)應(yīng)關(guān)系簡(jiǎn)單明了。若程序計(jì)算時(shí)指定將線元參數(shù)存放在矩陣Mat A中,程序運(yùn)行結(jié)束后,可在COMP模式下,通過(guò)賦值命令將Mat A賦值給其他矩陣(如賦值給Mat F可執(zhí)行命令Mat A→Mat F)。賦值完成后,在進(jìn)行公路坐標(biāo)計(jì)算前,只需將其對(duì)應(yīng)的線元參數(shù)矩陣賦值給Mat A即可直接進(jìn)行計(jì)算,無(wú)須重新輸入線元參數(shù),可有效地提高計(jì)算效率。CASIO fx-5800P計(jì)算器有多個(gè)矩陣,因此一個(gè)計(jì)算器中可以存放多個(gè)路線的數(shù)據(jù)。由上述分析可知,公路坐標(biāo)計(jì)算程序宜采用矩陣存儲(chǔ)線元參數(shù),n個(gè)線元時(shí)的存儲(chǔ)分配方案見(jiàn)圖3。

4 線元參數(shù)輸入設(shè)計(jì)

4.1 輸入方式的選擇

線元參數(shù)輸入可采用三種方式:①直接創(chuàng)建,即在程序運(yùn)行前,使用矩陣編輯器直接將線元參數(shù)輸入到矩陣中;②基于數(shù)據(jù)庫(kù)子程序,即先按規(guī)定的語(yǔ)句格式(語(yǔ)句中包含線元參數(shù))建立數(shù)據(jù)庫(kù)子程序,通過(guò)調(diào)用子程序,自動(dòng)建立線元參數(shù)矩陣;③基于線元參數(shù)子程序,即先編寫(xiě)一個(gè)線元參數(shù)輸入子程序,通過(guò)調(diào)用子程序,直接從鍵盤輸入線元參數(shù),程序自動(dòng)建立線元參數(shù)矩陣。第一種方式用戶不但要熟悉矩陣編輯器,而且要事先獲得各個(gè)參數(shù)。第二種方式要根據(jù)設(shè)計(jì)數(shù)據(jù)修改數(shù)據(jù)庫(kù)子程序的相關(guān)語(yǔ)句,用戶需要具備一定的程序設(shè)計(jì)能力。第三種方式對(duì)用戶的要求最低,只需要根據(jù)提示信息輸入相應(yīng)參數(shù)即可。為了提高程序的易用性,程序設(shè)計(jì)時(shí)應(yīng)采用第三種方式。

4.2 輸入項(xiàng)的選取

程序應(yīng)通過(guò)控制輸入數(shù)據(jù)的數(shù)量來(lái)減少輸入錯(cuò)誤,提高效率。設(shè)計(jì)程序時(shí),要確定好線元參數(shù)輸入的最小子集,凡能通過(guò)計(jì)算得到的參數(shù),應(yīng)采用程序自動(dòng)計(jì)算的方式獲得,以減少參數(shù)輸入,降低出錯(cuò)概率。

公路是由若干首尾相連的線元組合而成,其線形連續(xù)是保證車輛安全行駛的基本要求。線形連續(xù)是指線元實(shí)體的起終點(diǎn)位置和切線方位角是連續(xù)的,即上一線元的終點(diǎn)是下一線元的起點(diǎn),上一線元終點(diǎn)的切線方位角是下一線元起點(diǎn)的切線方位角。利用這一特性,在選取輸入項(xiàng)時(shí),只需將計(jì)算路段第1個(gè)線元起點(diǎn)的坐標(biāo)和切線方位角、全部線元起點(diǎn)和終點(diǎn)的樁號(hào)及曲率半徑作為線元參數(shù)輸入的最小子集。

4.3 子程序的功能設(shè)計(jì)

在輸入線元參數(shù)時(shí),錯(cuò)誤在所難免,若每次出錯(cuò)后都要將全部參數(shù)重新輸入一遍,會(huì)嚴(yán)重影響用戶的使用體驗(yàn)。為了解決這個(gè)問(wèn)題,可將線元參數(shù)子程序設(shè)計(jì)成新建路線(NEW)、數(shù)據(jù)更新(UPDATE)兩個(gè)子功能,若個(gè)別線元的參數(shù)輸入錯(cuò)誤(或設(shè)計(jì)變更),可先用矩陣編輯器直接修改Mat A中的對(duì)應(yīng)數(shù)據(jù),然后選擇“數(shù)據(jù)更新”功能,讓程序根據(jù)正確數(shù)據(jù)重新計(jì)算線元參數(shù),并自動(dòng)更新Mat A的數(shù)據(jù)。

4.4 子程序的主要代碼

5 公路坐標(biāo)計(jì)算程序設(shè)計(jì)

公路坐標(biāo)計(jì)算包括中樁計(jì)算和邊樁計(jì)算,前者要計(jì)算指定中樁的坐標(biāo)和切線方位角,后者要計(jì)算對(duì)應(yīng)邊樁的坐標(biāo)。

計(jì)算中樁坐標(biāo)時(shí),應(yīng)先根據(jù)樁號(hào)確定其是否在Mat A所對(duì)應(yīng)的路線區(qū)間上。若不在,應(yīng)給出相應(yīng)的提示信息;若在,則確定中樁所在的線元,然后調(diào)用該線元的參數(shù)計(jì)算中樁的坐標(biāo)和切線方位角。中樁計(jì)算子程序(文件名為“ZZJS”)的主要代碼如下:

6 結(jié)語(yǔ)

利用CASIO fx-5800P計(jì)算器以Gauss-Legendre公式為數(shù)學(xué)模型,采用矩陣存儲(chǔ)線元參數(shù),可精確的計(jì)算公路任意樁號(hào)的中樁和邊樁坐標(biāo)。本文的程序充分發(fā)揮了程序的自動(dòng)計(jì)算功能,用戶只需輸入少量的線元參數(shù),大量的參數(shù)由程序自動(dòng)生成,程序可自動(dòng)判斷樁號(hào)的合法性,健壯性好,設(shè)計(jì)的輸入和輸出界面友好,用戶使用非常方便。程序適用于各種類型的平曲線計(jì)算,若路線出現(xiàn)斷鏈,可以斷鏈處為分界點(diǎn),將路線分為多個(gè)路段進(jìn)行處理。

參考文獻(xiàn):

[1] 李全信.Gauss-Legendre公式在線路坐標(biāo)計(jì)算中的應(yīng)用研究[J].勘察科學(xué)技術(shù),2004(2):44-47,52.

[2] 何名燈.CASIO fx-5800P型計(jì)算器在線路測(cè)量中的應(yīng)用[J].城市勘測(cè),2018(1):141-144.

[3] 覃輝,段長(zhǎng)虹.CASIO fx-5800P矩陣編程計(jì)算器原理與實(shí)用程序[M].上海:同濟(jì)大學(xué)出版社,2007.

[4] 王中偉.CASIO fx-5800P計(jì)算器與道路坐標(biāo)放樣計(jì)算[M].廣州:華南理工大學(xué)出版社,2008.

[5] 顧孝烈,程效軍.fx-5800P計(jì)算器土木工程測(cè)量計(jì)算程序開(kāi)發(fā)與應(yīng)用[M].上海:同濟(jì)大學(xué)出版社,2007.

【通聯(lián)編輯:光文玲】

猜你喜歡
程序矩陣
試論我國(guó)未決羈押程序的立法完善
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
關(guān)于矩陣奇異值分解的注記
初等行變換與初等列變換并用求逆矩陣
創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
矩陣
南都周刊(2015年4期)2015-09-10 07:22:44
矩陣
南都周刊(2015年3期)2015-09-10 07:22:44
矩陣
南都周刊(2015年1期)2015-09-10 07:22:44
兰坪| 洛隆县| 清流县| 揭阳市| 和平区| 志丹县| 辽宁省| 蒲江县| 景谷| 苍山县| 吴旗县| 新乐市| 呼伦贝尔市| 宾阳县| 福贡县| 大关县| 泸州市| 龙南县| 梁山县| 资源县| 博兴县| 建湖县| 东乡族自治县| 从江县| 临朐县| 彩票| 曲松县| 卢湾区| 荥经县| 五大连池市| 无极县| 潼南县| 蓝田县| 鄂尔多斯市| 博白县| 凤翔县| 永仁县| 广南县| 含山县| 鲁山县| 临海市|