陳 杰,吳曉迪,楊 星,邵 慧
?
基于蒙特卡洛改進(jìn)算法的空間熱流計(jì)算
陳 杰1,吳曉迪2,3,4,楊 星2,3,4,邵 慧1
(1. 安徽建筑大學(xué)電子與信息工程學(xué)院,安徽 合肥 230601;2. 紅外與低溫等離子體安徽省重點(diǎn)實(shí)驗(yàn)室,安徽 合肥 230037; 3. 脈沖功率激光技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,安徽 合肥 230037;4. 電子工程學(xué)院,安徽 合肥 230037)
空間熱流計(jì)算是空間目標(biāo)熱特性及紅外特性分析的基礎(chǔ),針對(duì)傳統(tǒng)蒙特卡洛法在計(jì)算空間目標(biāo)熱流時(shí)存在耗時(shí)較多的不足,提出了基于圖形加速的改進(jìn)的蒙特卡洛熱流計(jì)算方法,并分別采用傳統(tǒng)算法和改進(jìn)算法計(jì)算了衛(wèi)星的太陽熱流,數(shù)值分析表明改進(jìn)算法在保證同等計(jì)算精度的前提下,顯著提高了衛(wèi)星太陽熱流的計(jì)算速度。
太陽熱流;蒙特卡洛法;熱特性;紅外特性
傳統(tǒng)蒙特卡洛法對(duì)復(fù)雜幾何形狀、復(fù)雜幾何位置關(guān)系、相互之間存在遮擋具有非常強(qiáng)的適應(yīng)能力,并且當(dāng)模擬光束數(shù)量達(dá)到一定程度時(shí),具有較高的精度,在空間航天器的軌道熱流計(jì)算方面得到了較為廣泛的應(yīng)用[1-6]。傳統(tǒng)算法隨著模擬光束數(shù)量的增加,其計(jì)算精度也相應(yīng)增加,但所耗費(fèi)的時(shí)間也急劇增加,針對(duì)傳統(tǒng)算法耗時(shí)較多的不足,本文提出了基于圖形加速的蒙特卡洛改進(jìn)算法,新算法在保證同等計(jì)算精度的前提下,顯著提高了空間熱流的計(jì)算速度。
圖1 三軸穩(wěn)定衛(wèi)星的三維模型
在利用傳統(tǒng)蒙特卡洛法計(jì)算衛(wèi)星接收的太陽熱流時(shí),首先要建立光束的發(fā)射坐標(biāo)系m1和發(fā)射平面,然后隨機(jī)發(fā)射光束并記錄光束與衛(wèi)星劃分面元的相交情況,最后統(tǒng)計(jì)各面元的交點(diǎn)數(shù)計(jì)算各面元的太陽熱流,具體步驟如下:
式中:1為發(fā)射區(qū)域的面積;2為衛(wèi)星面元的面積;S為大氣層上邊界處垂直于太陽光線的表面上的太陽輻射熱流密度。
改進(jìn)的蒙特卡洛算法將傳統(tǒng)蒙特卡洛法中的目標(biāo)三維空間光束求交運(yùn)算等效于計(jì)算機(jī)圖形卡的目標(biāo)三維模型繪制過程,這里主要用到計(jì)算機(jī)圖形OpenGL繪制中的兩個(gè)坐標(biāo)系,一個(gè)為模型坐標(biāo)系mmmm(m),一個(gè)為視覺坐標(biāo)系VVVV(V),OpenGL首先在模型坐標(biāo)系中建立目標(biāo)的三維幾何模型,然后通過指定的坐標(biāo)轉(zhuǎn)換將模型坐標(biāo)系中的幾何模型轉(zhuǎn)換到視覺坐標(biāo)系中,最后通過投影轉(zhuǎn)換和視口轉(zhuǎn)換將三維圖形映射成計(jì)算機(jī)屏幕上顯示的二維圖像[7],如圖2所示。
圖2 圖形加速蒙特卡洛法的三維模型繪制過程
基于圖形加速蒙特卡洛算法的具體過程如下:
1)首先利用OpenGL圖形庫(kù)在模型坐標(biāo)系建立衛(wèi)星幾何模型,保證建模時(shí)衛(wèi)星表面面元的劃分與溫度場(chǎng)計(jì)算時(shí)的網(wǎng)格劃分相對(duì)應(yīng),同時(shí)依次指定表面面元的顏色,即利用面元顏色對(duì)面元進(jìn)行編號(hào)。本文選擇顏色顯示為RGB模式,以無符號(hào)整型數(shù)據(jù)類型分別指定面元的R、G、B分量,此時(shí)各分量取值范圍為0至255,所以一共可以對(duì)256×256×256個(gè)面元編號(hào),實(shí)際繪制時(shí),背景RGB顏色指定為(0,0,0),所以從RGB顏色(0,0,1)開始依次對(duì)衛(wèi)星本體和太陽翼的表面劃分面元編號(hào)。
3)如圖2,在經(jīng)過可視空間裁剪后,在視覺坐標(biāo)系VVV平面的可視范圍內(nèi)(v∈[-,],v∈[-,])隨機(jī)產(chǎn)生發(fā)射點(diǎn),將發(fā)射點(diǎn)坐標(biāo)如下變換為窗口坐標(biāo)系www(w)中的像素坐標(biāo)。
式中:round()表示取整;num1和num2分別為窗口沿w軸和w軸方向的像素?cái)?shù)。
4)根據(jù)發(fā)射點(diǎn)的像素坐標(biāo)累計(jì)窗口區(qū)域?qū)?yīng)位置像素的發(fā)射點(diǎn)數(shù),將相同顏色像素的發(fā)射點(diǎn)數(shù)相加,根據(jù)顏色與衛(wèi)星面元的索引關(guān)系,即可得到各個(gè)面元所接收的發(fā)射點(diǎn)數(shù),所以各面元接收的太陽熱流密度為
式中:¢為每個(gè)面元所接收的發(fā)射點(diǎn)數(shù);sum¢為總的發(fā)射點(diǎn)數(shù);¢為視覺坐標(biāo)系中的面元面積。
對(duì)比表1和表2,可以看出,基于圖形加速蒙特卡洛改進(jìn)算法和普通算法在計(jì)算太陽熱流密度時(shí)具有相同的精度,但圖形加速算法的計(jì)算速度得到大幅度提高,并且隨著光束數(shù)目的增加這種優(yōu)勢(shì)越來越明顯,這主要是因?yàn)槠胀ㄋ惴ㄓ?jì)算時(shí)每發(fā)射一根光束,就要進(jìn)行坐標(biāo)變換和交點(diǎn)的求解,而圖形加速算法將多次坐標(biāo)變換等效于一次從模型坐標(biāo)系到視覺坐標(biāo)系的變換,同時(shí)利用了圖形卡進(jìn)行遮擋判斷和消隱處理的高效性,在得到二維圖形后,只需隨機(jī)產(chǎn)生發(fā)射點(diǎn)并統(tǒng)計(jì)最終的發(fā)射點(diǎn)數(shù),而不用進(jìn)行交點(diǎn)求解,所以計(jì)算速度具有較大的優(yōu)勢(shì)。
表1 傳統(tǒng)蒙特卡洛法計(jì)算太陽熱流密度時(shí)側(cè)太陽翼電池面的誤差
表2 圖形加速蒙特卡洛改進(jìn)算法計(jì)算太陽熱流密度時(shí)側(cè)太陽翼電池面的誤差
通過將傳統(tǒng)蒙特卡洛法和基于圖形加速的蒙特卡洛改進(jìn)算法應(yīng)用于衛(wèi)星太陽熱流的計(jì)算,對(duì)比分析兩種算法的計(jì)算結(jié)果,可以看出本文提出的蒙特卡洛改進(jìn)算法將傳統(tǒng)蒙特卡洛法中耗時(shí)的目標(biāo)三維空間光束求交運(yùn)算等效于計(jì)算機(jī)圖形卡的目標(biāo)三維模型繪制過程,新算法在保證同等計(jì)算精度的前提下,顯著提高了空間熱流的計(jì)算速度。
[1] 潘晴, 王平陽, 包軼穎, 等. 基于反向蒙特卡羅法的飛行器在軌外熱流計(jì)算[J].上海交通大學(xué)學(xué)報(bào), 2012, 46(5): 750-755
PAN Qing, WANG Ping-yang, BAO Yi-ying, et al. On-Orbit External Heat Flux Calculation of Spacecraft Based on Reverse Monte Carlo Method[J]., 2012, 46(5): 750-755
[2] 安敏杰, 程惠爾, 李鵬. 空間對(duì)接機(jī)構(gòu)太陽外熱流的計(jì)算與分析[J]. 上海航天, 2006, 42(1):156-161.
AN Min-jie, CHENG Hui-er, LI Peng. Computation and Analysis of Solar External Heat Flux in the Docking Mechanism[J]., 2006, 42(1):156-161
[3] 邱義芬, 陳擁華, 袁修干, 等. 艙外航天服的軌道空間外熱流計(jì)算方法[J]. 航空學(xué)報(bào), 2004, 25(3): 221-224.
QIU Yi-fen, CHEN Yong-hua, YUAN Xiu-gan, et al. A Method of Calculating External Heat Flux on Spacesuit Used for EVA[J]., 2004, 25(3): 221-224
[4] 翁建華, 閔桂榮, 潘增富. 紅外地平儀外熱流計(jì)算[J]. 同濟(jì)大學(xué)學(xué)報(bào). 1998, 26(3): 311-314.
Weng Jian-hua, Min Gui-rong, Pan Zeng-fu. Calculation of Orbital Heat Flux of Infrared Earth Sensors[J]., 1998, 26(3): 311-314
[5] 趙立新. 軌道空間外熱流計(jì)算的一種新方法[J]. 光學(xué)精密工程, 1995, 3(6): 80-85.
Zhao Li-xin. A New Method to Calculate The Heat Flux in Spacecraft Orbits[J]., 1995, 3(6): 80-85.
[6] 翁建華, 潘增富, 閔桂榮. 空間任意形狀凸面的軌道空間外熱流計(jì)算方法[J]. 中國(guó)空間科學(xué)技術(shù), 1994(1): 11-18.
Weng Jian-hua, Pan Zeng-fu, Min Gui-rong. A Method of Calculating External Heat Fluxes On Arbitrary Shaped Convex Surface of SpaceCraft[J]., 1994(1): 11-18
[7] Dave Shreiner, Mason Woo, Jackie Neider et al. OpenGL編程指南[M]. 北京: 人民郵電出版社, 2005.
Dave Shreiner, Mason Woo, Jackie Neider et al.[M]. Beijing: Posts & telecom press, 2005.
Calculation of Spatial Heat Flux Based on Improved Monte Carlo Algorithm
CHEN Jie1,WU Xiaodi2,3,4,YANG Xing2,3,4,SHAO Hui1
(1.,,230601,;2.,230037,;3.,230037,; 4.,230037,)
Calculation of spatial heat flux is the base of analysis of spatial targets’ thermal character and infrared feature. In view of time-consuming problems in calculating the spatial heat flux which exist in the traditional Monte Carlo algorithm, the improved Monte Carlo algorithm based on graphics acceleration is put forward. The satellite solar heat flux is calculated respectively by traditional algorithm and improved algorithm. And numerical analysis shows that under the premise of the same calculation accuracy guaranteed, improved algorithm significantly improves the calculation speed of satellite solar heat flux.
solar heat flux,Monte Carlo algorithm,thermal character,infrared feature
TK121
A
1001-8891(2017)01-0091-04
2016-03-28 ;
2016-10-09.
陳杰(1968-),男,教授,主要研究方向?yàn)橹悄芸刂婆c機(jī)器視覺。E-mail:jdly1123@163.com。
安徽高等學(xué)校自然科學(xué)研究項(xiàng)目(KJ2015ZD14,KJ2016A149),國(guó)家自然科學(xué)基金(61503394),安徽省自然科學(xué)基金(1408085QF131, 1508085QF121)。