聶凡智,胡麗琴,汪 冬,王國忠,王電喜,龍鵬程,吳宜燦,FDS團隊
(1.中國科學技術大學,安徽合肥230027;2.中國科學院核能安全技術所,安徽合肥230031)
Geant4是由歐洲核子中心(CERN)和日本高能物理中心(KEK)主導開發的蒙特卡羅輻射輸運計算通用程序包,主要應用在高能物理領域,可方便模擬強相互作用、弱相互作用等高能、超高能物理過程[1]。依靠手工建立復雜的Geant4幾何模型耗時且容易出錯。同時,在工程實踐中已經存在大量的計算機輔助設計(CAD)幾何模型,若直接利用這些模型,不僅可以提高建模效率,而且可以使分析結果更加精確可信,但這需要將CAD幾何模型轉換為Geant4幾何模型。目前國內外已有將CAD模型轉換為Geant4模型的相關研究,但這些研究尚存在不足,例如存在無法處理復雜模型或不支持通用CAD模型等問題[2-6]。
MCAM[7,8](Multi-Physics Coupling Analysis Modeling Program)是FDS團隊自主研發的多物理耦合自動建模軟件平臺,實現了多種工程CAD軟件(如AutoCAD、CATIA、UG等)和輻射輸運計算程序MCNP[9,10]、TRIPOLI[11,12]、SuperMC[1,2]、FLUKA等之間的接口。一方面,MCAM可以直接利用工程CAD模型生成輻射輸運計算程序的輸入文件,包括空腔模型、材料、源和計數信息等;另一方面,MCAM也可以解析輻射輸運計算程序的輸入文件,生成CAD模型并可視化,以供分析和修正。MCAM已經在復雜核裝置的中子學建模中得到了廣泛的應用[15-20]。
研究一種基于MCAM平臺的Geant4自動建模方法,能夠將復雜CAD幾何模型轉換為Geant4支持的幾何描述標記語言(Geometry Description Markup Language,簡稱GDML)格式幾何模型[21],該功能已基于MCAM平臺實現。同時使用包括聚變反應堆模型FDS-Ⅱ[22,23]在內的多個例題對自動建模方法進行測試與校驗,結果驗證了它的正確性和有效性。
CAD幾何模型通常采用邊界表示法(Boundary Representation,BREP)。BREP表示法詳細定義了模型中的所有幾何元素(如體、面、邊、點等)的幾何信息及相互間的拓撲連接信息。這種表示法有利于以面和邊為基礎的各種幾何運算和布爾運算。邊界表示法是CAD系統中最常用的表示法。
Geant4幾何模型同時采用構造實體幾何表示法(Constructive Solid Geometry,CSG)和BREP表示法。CSG表示法是利用基本幾何體素(如球、立方體、圓柱體、圓錐體等),通過一系列布爾運算來構造復雜三維實體的方法?;倔w素形狀比較規則,通過少量參數即可描述其幾何模型,因此其數據結構簡單,容易表達,且需要的存儲空間較小。另外,CSG表示法對物體幾何形狀的描述精確、嚴格,可建立較明確的數學模型[12]。
Geant4支持C++語言和GDML兩種方式來描述幾何模型。其中,GDML更加直觀易懂,已被廣泛采用,本文方法實現了CAD幾何模型到GDML格式幾何模型的自動轉換。
GDML是一種基于XML的語言,用來描述幾何模型。在GDML文件中可以建立對應實體層次結構的幾何樹并描述實體幾何的填充材料。由于GDML描述簡單易讀,因此通過GDML可以方便地進行幾何數據交互。
將CAD幾何模型轉換為GDML幾何模型本質上是將BREP幾何模型轉換為CSG幾何模型。
從CAD幾何模型到GDML幾何模型的轉換過程如下:
(1)將CAD幾何分解成凸實體的集合;
(2)利用拓撲信息得到凸實體的邊界面,并根據邊界面的方向和類型將邊界面半空間轉換為GDML幾何模型;根據邊界面半空間之間的布爾運算關系,得到GDML幾何模型之間的布爾運算關系;將GDML幾何模型和布爾運算關系保存到GDML文件中,得到對應于凸實體的GDML幾何模型;
(3)根據凸實體之間的布爾運算關系,得到對應于凸實體的GDML幾何模型之間的布爾運算關系;將GDML幾何模型和布爾運算關系保存到GDML文件中,得到應于整個CAD模型的GDML幾何模型,從而完成CAD幾何模型到GDML幾何模型的轉換。
在轉換過程中經過分解得到的凸實體,是由曲面的半空間經過布爾運算定義的,而Geant4和GDML不支持半空間,因此在生成GDML模型的過程中需要對曲面半空間進行特殊處理。例如,平面半空間用長方體代替,其中長方體的一個面和平面位置相同;球面內半空間,用半徑與球面半徑相同的球體代替;球面的外半空間,先生成對應于球面內半空間的球體和一個長方體,然后將長方體和球體進行布爾差運算,用得到的布爾實體代替球面的外半空間。圓柱面、圓環面、錐面的半空間都可以用類似的方法處理。
本文基于MCAM平臺實現上述建模方法,程序具有友好的交互界面。用戶在導入CAD系統創建的STEP、SAT或IGES等格式的幾何模型后,可以使用MCAM中的預處理功能對模型進行必要的修復和修改,再使用材料編輯界面創建材料,最后轉換為GDML格式幾何模型。
當前系統支持GDML立方體、球體、圓柱體、椎體和圓環體等體素。復雜的CAD模型可轉換為這些體素及體素的布爾運算結果。
本文轉換方法通過了以單管模型和聚變反應堆模型FDS-Ⅱ為代表的系列例題的測試。測試過程中比較了轉換生成的GDML模型的形狀和原CAD模型的,同時計算了自動轉換生成的GDML模型、手工建立的GDML模型兩個模型中的柵元的體積和中子注量率。原CAD模型的可視化效果從MCAM中得到,GDML模型的可視化效果、柵元的體積和中子通量都從Geant4中得到。
2.2.1 單管模型測試
單管模型是為校驗數據庫而設計的模型,該模型由一個中心圓柱和圓管組成。中心圓柱材料為真空,圓管材料為鋁。中心圓柱描述源分布,源中子能量為14.1MeV。
利用本方法將單管的CAD模型轉換為GDML模型,將GDML模型導入Geant4中可視化,與原模型、手工建立的單管GDML模型進行外觀比較,如圖1所示。

使用Geant4分別計算自動轉換生成模型、手工建立模型兩個模型中的圓管體積,再計算兩個模型中的圓管中子通量,體積和中子通量計算結果見表1。

表1 圓管體積、中子通量計算結果Table 1 Volume and neutron flux of the external tube
測試結果中,圓管體積不存在偏差,中子注量率偏差為-0.002 42%。
2.2.2 聚變反應堆模型FDS-Ⅱ測試
FDS-Ⅱ是FDS團隊自主設計的聚變反應堆。FDSⅡ中子學模型環向22.5°,共包含113個實體和1 067個曲面。FDS-Ⅱ柵元材料主要包括Fe,Pb,H,O,W,Li,Cr,He,V,Si等元素。源為各向同性、均勻圓柱體源,源中子能量為14.06MeV。
利用本方法將FDS-Ⅱ的CAD模型轉化為GDML模型,將GDML模型讀入Geant4中可視化并與原CAD模型進行外觀對比,如圖2所示。

在Geant4中分別計算自動轉換生成的GDML模型、手工建立的GDML模型兩個模型中的柵元體積,如圖3所示,各個柵元體積偏差小于十萬分之一。

圖3 自動建立模型和手動建立模型柵元體積Fig.3 Volume of cells created automatically and manually
最后,分別使用自動轉換生成GDML模型和手工建立GDML模型在Geant4中計算徑向從里向外42個柵元的中子通量。圖4顯示了柵元中子注量率對比結果。各個柵元中子通量最大偏差為0.83%。
2.2.3 討論
在單管模型測試中,轉換生成的GDML模型的形狀和原CAD模型的、手工建立的GDML模型的一致;在FDS-Ⅱ例題測試中,轉換生成的GDML模型的形狀和原CAD模型的一致。同時,在兩個例題測試中,自動轉換生成模型的體積和手工建立模型的吻合良好,且中子注量率計算結果也吻合良好。初步驗證了本文轉換方法的正確性和有效性。

圖4 自動建立模型和手動建立模型中子注量率分布Fig.4 Neutron flux distribution of cells created automatically and manually
本文研究Geant4自動建模方法,實現CAD模型到GDML模型的轉換程序,并利用包括單管模型、聚變反應堆模型FDS-Ⅱ在內的例題對程序進行測試。測試例題驗證了本文方法的正確性和有效性。該方法可以有效提高Geant4的建模效率。
利用幾何更加復雜的例題,如國際熱核聚變實驗反應堆ITER基準模型,對本文程序進行健壯性校驗等工作正在開展之中。
[1] Geant4官方網站[OL].http://www.geant4.org/geant4/.
[2] Constantin M,Constantin D E,Keall P J,et al.Linking computer-aided design(CAD)to Geant4-based Monte Carlo simulations for precise implementation of complex treatment head geometries[J].Physics in Medicine and Biology,2010,55(8):211-220.
[3] Ma Y,Xu P J,Xiao G..Development of Auto-Modeling Tool for Neutron Transport Simulation[C].Audio Language and Image Processing(ICALIP),2010:623-627.
[4] Xu G.Methods of integrating computer aided design for Monte Carlo simulations[C].Monte Carlo 2005Topical Meeting,2005:175-184.
[5] Beutier T,Delage E,Wout M,Serres O,Peyrard PF.Fastrad new Tool for Radiation Prediction[C].Radiation and its Effects on Components and Systems,Proceeding of the 7th European Conference,2003.
[6] Geant4User's Guide for Application Developers[OL].[2012-11-30].Geant4官網.
[7] Wu Y and FDS team.CAD-based interface programs for fusion neutron transport simulation[J].Fusion Engineering and Design,2009,84(7-11):1987-1992.
[8] 吳宜燦,李瑩,盧磊,等.蒙特卡羅粒子輸運計算自動建模程序系統的研究與發展[J].核科學與工程,2006,26(01):20-27.
[9] Briesmeister J F.MCNP-A general Monte Carlo NParticle transport code,version 4C[R].USA:Los Alamos National Laboratory,2000.
[10] 李瑩,曾勤,盧磊,等.利用ITER基準模型對MCAM4.2進行檢驗(Ⅰ)[J].核科學與工程,2008,28(1):47-50.
[11] Diop C M,Dumonteil E,Hugot F X,et al.An overview on the Monte Carlo particle transport code TRIPOLI-4[J].Trans.Am.Nucl.Soc.,2007,97:694-695.
[12] 張俊軍,曾勤,王國忠,等.蒙特卡羅程序TRIPOLI自動建模方法研究[J].核科學與工程,2010,20(3):84-88.
[13] WU Y,SONG J,ZHENG H Q,et al.CAD-based Monte Carlo program for integrated simulation of nuclear system SuperMC[J].Annals of Nuclear Energy,2014.08.058.
[14] SONG Ji,SUN G,CHEN Z,et al.Benchmarking of CAD-based superMC with ITER benchmark model[J].Fusion Engineering and Design,2014,89(11):2499-2503.
[15] 盧磊,李瑩,丁愛平,等.MCAM在ITER窗口限制器蒙特卡羅計算建模過程中的應用[J].核科學與工程,2007,27(3):277-281.
[16] 曾勤,盧磊,李瑩,等.蒙特卡羅粒子輸運計算自動建模程序MCAM在ITER核分析建模中的應用[J].原子核物理評論,2006,23(2):138-141.
[17] 吳宜燦,李靜驚,李瑩,等.大型集成多功能中子學計算與分析系統Visual BUS的研究與發展[J].核科學與工程,2007,27(5):72-85.
[18] 吳宜燦,胡麗琴,龍鵬程,等.先進核能系統設計分析軟件與數據庫研發進展[J].核科學與工程,2010,30(1):55-64.
[19] 熊健,王國忠,王電喜,等.MCAM在ITER裝置TRIPOLI三維中子學建模中的應用[J].核科學與工程,2011,31(2):162-168.
[20] 王國忠,黨同強,熊健,等.MCAM4.8在ITER建筑大廳中子學建模中的應用[J].核科學與工程,2011,31(4):351-355.
[21] GDML USER'S GUIDE[OL].[2011-11-23].http://gdml.web.cern.ch/GDML/doc/GDMLmanual.pdf.
[22] 吳宜燦,汪衛華,劉松林,等.聚變發電反應堆概念設計研究[J].核科學與工程,2006,81(23-24):2713-2718.
[23] Y.Wu and FDS Team.Conceptual design activities of FDS series fusion power plants in China[J].Fusion Engineering and Design,2006,81(23-24):2713-2718.