本發(fā)明涉及裂變反應堆模型快速可視化的技術領域,具體涉及一種基于自動歸并層級結構樹的多尺度裂變堆芯可視化系統(tǒng)。
背景技術:
蒙特卡羅計算的關鍵部分是對幾何的處理上,幾何處理的關鍵是確保計算模型的幾何正確性,為此需要在蒙卡幾何建模過程中以及蒙卡計算前確認過程中以及完成建模的蒙卡計算模型的正確性。模型可視化是最直觀,同時也是效率最高的一種檢查方式。特別的,為了保證建模效率,在建模過程中的檢查需求交互式的實時觀察。
隨著蒙特卡羅計算在裂變堆芯設計中使用愈加廣泛,用戶對模型的精細程度的要求越來越高。但由于程序計算機內(nèi)存使用等限制,現(xiàn)有的蒙特卡羅可視化軟件系統(tǒng)都無法一次性渲染規(guī)模過大的精細裂變堆模型,或者即使能夠完成大規(guī)模精細裂變堆模型的渲染,也需要成本非常高的專業(yè)圖形工作站的支持,并且得到完整模型的速度也非常緩慢,從而使得建模過程中蒙卡幾何模型無法可視化或成本太高,或顯示交互速度過慢難以滿足實際應用。
本發(fā)明針對于此需求,提出了一種新的分段式可視化方法,并開發(fā)出一種能用于裂變堆核設計的大規(guī)模裂變堆芯可視化軟件系統(tǒng)。本系統(tǒng)能夠?qū)⒋笠?guī)模裂變堆芯模型智能分解成不同的段來進行管理,并通過用戶的交互操作,判斷出需要進行處理的分段和繼續(xù)隱藏的分段。從而極大地提高操作的交互流暢性,達到大規(guī)模堆芯的實時可視化效果,讓用戶在核設計的過程中基于最普通的個人電腦即可以進行實時三維幾何觀察,極大提升了用戶建模效率,縮短整體設計的周期,為新型反應堆的設計節(jié)省大量人力成本和硬件成本。
技術實現(xiàn)要素:
本發(fā)明要解決技術問題為:克服現(xiàn)有技術不足,提供一種更快速高效的針對于大規(guī)模裂變反應堆模型的可視化方法,此發(fā)明能流暢的對高達幾千萬實體模型的裂變反應堆進行快速的可視化,讓用戶在設計過程中進行實時幾何檢查。
本發(fā)明解決上述技術問題采用的技術方案為:一種基于自動歸并層級結構樹的多尺度裂變堆芯可視化方法,該方法可根據(jù)裂變堆芯模型特點和其裝配關系構建一種帶有自動歸并功能的層級結構樹,簡稱優(yōu)化層級結構樹,基于此,能夠生成對應的渲染單元樹,從而使得每次操作只需要處理局部渲染單元,提高系統(tǒng)可視化效率,其主要包含輸入解析步驟,層級結構樹自動歸并步驟和渲染單元樹構建步驟;
輸入解析步驟用于解析用戶輸入,并構建初始層級結構樹,導入到層級結構樹自動歸并步驟,層級結構樹自動歸并步驟負責自動歸并初始層級結構樹,得到優(yōu)化層級結構樹,渲染單元樹構建步驟是基于優(yōu)化層級結構樹構建的渲染單元樹形結構,程序可以通過參數(shù)啟動和繞開相應的渲染單元,從而形成多尺度的可視化過程。
其中層級結構樹優(yōu)化步驟具體實現(xiàn)過程為:
步驟(1)、得到初始層級結構樹,如果初始層級結構樹中的幾何表達通過用戶參數(shù)輸入獲得,那么無需要經(jīng)過幾何歸并直接到步驟(5),否則如果是從物理計算模型中和三維CAD模型中解析獲取則會包含大量半空間面,進行步驟(2);
步驟(2)、從初始層級結構每個葉子節(jié)點開始一直到達根節(jié)點構建多條幾何歸并路徑,并自動識別路徑重疊部分和相同部分,從而得到最終歸并路徑;
步驟(3)、遍歷所有最終歸并路徑,得到下層的節(jié)點中包含的幾何,并去上層節(jié)點中尋找與下層節(jié)點中包含的幾何平行、垂直、成一定夾角的幾何;
步驟(4)、按照半空間方向進行判斷,如果半空間方向指向空間位置重合則組合在一起,如果無法找到則繼續(xù)向更上層查找,直到完成一個完整體模型構建,并保存;
步驟(5)、完成所有節(jié)點的幾何歸并后,開始簡化樹結構中節(jié)點的關系,簡化關系的原則為,按照陣列填充的關系進行分層,對部件內(nèi)部的填充關系進行簡化;
步驟(6)、完成所有關系簡化后將得到優(yōu)化層級結構樹,基于此樹以生成渲染單元樹結構。
其中渲染單元樹構建步驟具體實現(xiàn)過程為:
步驟(1)、基于優(yōu)化層級結構樹的層數(shù)為渲染根節(jié)點構建相應分支;分支數(shù)等于層數(shù);
步驟(2)、在每個分支中構建獨立的渲染單元,基于優(yōu)化層級結構樹,為相應部件在本層和下層中構建對應的渲染單元;
步驟(3)、在渲染單元樹中分支內(nèi)部,為葉子節(jié)點構建渲染面片,基于優(yōu)化層級結構樹的陣列填充關系,上層節(jié)點則引用葉子節(jié)點的面片并組合成上層節(jié)點的渲染單元,直到完成所有分支和各部件的渲染單元的構建。
本發(fā)明與現(xiàn)有技術相比的優(yōu)點在于:
(1)、避免了一次渲染過多的面片,尤其是在處理大規(guī)模裂變堆模型的過程中,能夠顯然得到更流暢的交互速度;
(2)、實現(xiàn)了不同部件的單獨提取操作,更加方便的支持了三維可視化交互式迭代設計過程。
附圖說明
圖1為系統(tǒng)主流程圖;
圖2為初始層級結構樹示意圖;
圖3為優(yōu)化層級結構樹示意圖;
圖4為多尺度渲染示意圖;
圖5為堆芯級模型可視化效果;
圖6為組件級模型可視化;
圖7為元件級模型可視化。
具體實施方式
本發(fā)明能夠快速可視化大規(guī)模的裂變堆模型,在用戶將三維CAD模型或者蒙特卡羅計算模型導入后,將模型進行智能分組,并按用戶的需求調(diào)取部分模型進行可視化,同時能選擇不同的可視化精細程序,其實施的具體方式如下:
第一步,通過軟件界面導入每個部件的CAD的模型或者蒙特卡羅計算模型;
第二步,構建層級結構樹,如果導入的是蒙特卡羅物理計算模型,可以直接從其中解析得到模型直接的裝配關系和填充關系,并且能夠得到半空間面的參數(shù)和列表,如果是MCNP程序的計算模型,相同部件的模型指定了相同的universe號,如圖1的流程圖所示,通過多蒙卡語義適配器,本系統(tǒng)能夠識別目前主流蒙卡程序,包含MCNP,F(xiàn)LUKA,Geant4和SuperMC;
第三步,如果導入是CAD模型,則需要通過GUI界面指定每個部件之間的裝配關系,再通過成熟的BREP到CSG模型的轉(zhuǎn)換算法,將所有的CAD模型轉(zhuǎn)換成半空間面并結合裝配關系構建初始的層級結構樹;
第四步,在得到初始層級結構樹后如圖2所示,可以得到5條歸并路徑,子區(qū)域劃分的幾何為顯示的劃分,不需要進行幾何歸并,于是路徑分別為:
1)元件部件1-元件類型1-元件排布區(qū)域1-組件類型1-堆芯中心燃料區(qū)域-反應堆堆芯;
2)元件部件2-元件類型1-元件排布區(qū)域1-組件類型1-堆芯中心燃料區(qū)域-反應堆堆芯;
3)元件部件3-元件類型1-元件排布區(qū)域1-組件類型1-堆芯中心燃料區(qū)域-反應堆堆芯;
4)元件類型2-元件排布區(qū)域-組件類型2-堆芯中心燃料區(qū)域-反應堆堆芯;
5)元件類型3-元件排布區(qū)域-組件類型3-堆芯中心燃料區(qū)域-反應堆堆芯;
第五步,從圖2可以看出,5條歸并路徑中,存在大量的重復區(qū)域,合并重復區(qū)域后就會得到最終的歸并路徑;
第六步,簡化初始的層級結構樹,只保留有陣列填充關系,消除部件內(nèi)部填充和部件之間其余裝配關系從而得到優(yōu)化層級結構樹如圖3所示;
第七步,按照最優(yōu)層級結構樹中的層級為渲染單元樹劃分分支,在本例中有4個分支,分別對應優(yōu)化層級結構樹的每層;
第八步,為每個部件在各個分支中構建渲染單元,每個上層的部件都需要在下層中構建相應的渲染單元,例如燃料組件在第二層中,首先在第二層中構建其渲染單元節(jié)點,將其僅在第二層中的實體幾何轉(zhuǎn)換成面片,并保存其中,除此之外還需要在所有下級層次中為其構建渲染單元節(jié)點,但是不放入渲染面片,例如在第三層中,而是引用其子部件節(jié)點的面片,并組合程其渲染面片,而渲染面片通過面片化在優(yōu)化層級結構樹中保存的實體模型得到;
第九步,通過得到的渲染單元樹,用戶可以選擇不同層次或者不同的部件進行渲染,避免了一次性處理所有面片帶來的效率過低的問題;
第十步,通過圖4可以看到,整個堆芯已經(jīng)進行多層的劃分,可以滿足不同尺度的渲染,在渲染的過程中程序可以非??焖俚慕o出第一層分支中的模型可視化結果,如果用戶需要觀察某個組件,則繼續(xù)給出單個組件第二層分支中的可視化結果,如果用戶需要觀察燃料棒的結構,則繼續(xù)細化單個組件內(nèi)部的燃料棒,給出第三層分支中的結果,這樣保證每次操作程序需要處理的面片都是非常有限的,并且在用戶在觀察的過程中,更精細的底層渲染單元也同步構建,并且其渲染面片可以通過陣列填充的擺放關系進行重復使用,節(jié)省大量的時間。如果用戶需要觀察非常精細的局部細節(jié),則程序可以自動關閉除指定部件之外其余部件的渲染分段或者僅可視化其高層級的不存在太多面片的渲染分段;
第十一步,實現(xiàn)裂變堆模型的多尺度可視化操作,圖5為第一層的裂變堆堆芯級模型三維可視化視圖,可以看出其中的幾何部件都進行了大量的均勻化處理,圖6為第二層的裂變堆組件級模型三維可視化視圖,可以看出裂變堆內(nèi)部的組件結構已經(jīng)進行了構建,圖7為第三層的裂變堆元件級模型二維可視化視圖(因為如果采用三維線框圖內(nèi)部細節(jié)太多,無法觀察),可以看出其中對組件進行了進一步的細化,可視化出了更多的細節(jié)。