姚志明,黑東煒,宋顧周,馬繼明,韓長材,段寶軍,岳志勤
(西北核技術(shù)研究所強脈沖輻射環(huán)境模擬與效應國家重點實驗室,西安 710024)
基于Geant4的質(zhì)子輸運計算的加速方法研究
姚志明,黑東煒,宋顧周,馬繼明,韓長材,段寶軍,岳志勤
(西北核技術(shù)研究所強脈沖輻射環(huán)境模擬與效應國家重點實驗室,西安 710024)
質(zhì)子在醫(yī)學、材料科學、輻射成像等領(lǐng)域有著廣闊的應用前景,質(zhì)子輸運過程的數(shù)值模擬是質(zhì)子應用理論分析的重要手段。本研究基于Geant4軟件編寫了蒙卡模擬程序,研究了程序的加速方法。結(jié)果表明,次級粒子截斷和并行計算可以有效加快程序的運行速度。程序易于擴展,為質(zhì)子應用的快速模擬奠定了基礎(chǔ)。
質(zhì)子輸運;蒙特卡羅;加速方法;次級粒子截斷;并行計算
質(zhì)子在醫(yī)學、材料科學、輻射成像等領(lǐng)域有著廣泛的應用。目前,國內(nèi)有多臺質(zhì)子加速器已經(jīng)建成或正在建設(shè)當中,它們有著不同的應用前景。例如,中國原子能科學研究院的回旋加速器上開展了很多國防核技術(shù)和核物理的研究工作[1];上海應用物理研究所正在研制用于惡性腫瘤治療的質(zhì)子治療裝置[2];在建的中國散裂中子源的質(zhì)子加速器計劃用于空間輻射效應模擬和質(zhì)子照相;等等。
數(shù)值模擬計算可以為粒子的應用提供理論指導和依據(jù)。數(shù)值模擬中的蒙特卡羅方法通過隨機抽樣,能夠比較真實地反映粒子的輸運過程[3]。目前,模擬質(zhì)子輸運的軟件包括SRIM、MCNP、MCNPX、Geant4等,其中Geant4允許用戶二次開發(fā),容易根據(jù)實際需要對程序進行改進和擴展。
基于 Geant4的模擬質(zhì)子輸運的研究比較豐富[4-6],加速方法的研究卻較少。文獻[7,8]中給出了通用的并行計算加快模擬速度的方法。然而,針對質(zhì)子輸運過程的特點對Geant4程序進行加速的方法未見報道。
本研究以10 GeV的質(zhì)子在FTO (French Test Object)中的輸運過程為例,基于Geant4建立蒙卡模擬程序[9,10],探討加快質(zhì)子輸運模擬速度的方法。
質(zhì)子與物質(zhì)的作用過程主要有電離能損、多次庫侖散射、與原子核的彈性碰撞和非彈性碰撞[11]。電離能損是質(zhì)子與很多核外電子碰撞,每次碰撞電子獲得一部分能量,質(zhì)子的能量隨之減小。多次庫侖散射是當質(zhì)子與原子最近距離比原子半徑小時,受到原子核電場的作用,在庫侖力作用下運動方向發(fā)生改變。與原子核碰撞時質(zhì)子受到核力的作用,按質(zhì)子能量是否發(fā)生改變分為彈性和非彈性碰撞。彈性碰撞按照原子處于基態(tài)和激發(fā)態(tài)可細分為彈性碰撞和準彈性碰撞,質(zhì)子的運動方向發(fā)生較大偏轉(zhuǎn);非彈性碰撞是原子核俘獲質(zhì)子,發(fā)生核反應,核反應過程中釋放次級粒子,導致入射質(zhì)子的個數(shù)損失,并可能產(chǎn)生能量較低的次級質(zhì)子。本文10 GeV質(zhì)子在FTO輸運過程中以上四種作用都會發(fā)生,導致質(zhì)子的能量損失、個數(shù)衰減和方向偏轉(zhuǎn)。其中非彈性碰撞產(chǎn)生的中子、γ射線等次級粒子對結(jié)果貢獻小,模擬耗時多,截斷后可以提高計算速度。
Geant4軟件采用模塊化設(shè)計,由不同的模塊分別實現(xiàn)探測器幾何結(jié)構(gòu)定義、粒子與物質(zhì)相互作用過程描述、跟蹤并記錄粒子的狀態(tài)和改變、中止次級粒子的產(chǎn)生等[10]。圖1給出了軟件的一些常用的類、子函數(shù)以及它們的功能。
模擬程序的幾何布局如圖2所示。Construct函數(shù)中定義物體的材料和幾何結(jié)構(gòu)。物體選為FTO[11],它是高能閃光照相中使用的一種通用測試對象,是由鎢、銅和塑料組成的多層同心球,內(nèi)半徑分別為1 cm、4.5 cm、6.5 cm,塑料的外半徑為22.5 cm。物體后1 mm處放置1 mm厚的足夠大長方體,定義為敏感探測器。Geant4中的物理過程比較豐富,采用的物理模型也有多種選擇,為方便用戶的使用,Geant4開發(fā)人員將物理模型打包,定義了多種physic list,其中包含了質(zhì)子與物質(zhì)作用的全部物理過程和產(chǎn)生的中子、伽瑪?shù)却渭壛W拥淖饔眠^程。本文選取了physic list中的QGSP_BERT物理過程列表。GeneratePrimaries函數(shù)中設(shè)置發(fā)射粒子的參數(shù)信息。粒子類型為質(zhì)子,初始能量為 10 GeV,發(fā)射方向沿 z軸正方向。ProcessHits、Print、EndOfEvent函數(shù)中定義敏感探測器的功能,用于粒子信息的記錄。當粒子打到敏感探測器上,在ProcessHits函數(shù)中將該粒子的出射位置、運動方向、類型、動能和輸運編號存儲在一個Hit中。在Print函數(shù)中定義Hit中各信息的輸出格式。當發(fā)射的一個質(zhì)子輸運完成后,EndOfEvent函數(shù)調(diào)用Print函數(shù)將各信息存儲在文本文件中,供分析使用。
3.1次級粒子截斷
質(zhì)子輸運過程中發(fā)生核反應會產(chǎn)生大量中子、γ射線和低能量的質(zhì)子。除低能量的質(zhì)子外,還會產(chǎn)生一定數(shù)量的電子、μ介子、π介子等其他帶電粒子。這些次級粒子的輸運過程模擬會耗費大量時間。Geant4中的G4VUserStackingAction類可以對粒子的信息進行判斷,實現(xiàn)次級粒子的截斷,達到節(jié)省計算時間的目的。然而,次級粒子的截斷可能會影響質(zhì)子輸運的模擬,本文選取了敏感探測器記錄到的質(zhì)子總個數(shù)和直穿質(zhì)子個數(shù)兩個參數(shù)來評估截斷對模擬準確性的影響。
Geant4軟件運行在聯(lián)想ThinkCentre M8380t型號的計算機上,安裝了windows7 32位操作系統(tǒng),CPU頻率為3.4 GHz。
首先,不截斷次級粒子,程序?qū)⒛M所有直穿質(zhì)子和次級粒子的輸運過程。發(fā)射105個質(zhì)子,時間由G4Timer類記錄,模擬用時2 538 s。表1給出了敏感探測器記錄的粒子種類和個數(shù)。直穿質(zhì)子和次級質(zhì)子,可以由輸運編號區(qū)分,輸運編號為1的是直穿質(zhì)子,大于1的是次級質(zhì)子。
表1 不截斷產(chǎn)生的粒子個數(shù)Tab.1 Particle generation without cut
圖1 Geant4常用類和函數(shù)結(jié)構(gòu)圖Fig.1 Common class and function of Geant4
圖2 模擬程序的幾何布局示意圖Fig.2 Geometry of the simulation program
然后,在ClassifyNewTrack函數(shù)中分別實現(xiàn)γ射線、中子和其他帶電粒子的截斷,并考慮了只模擬質(zhì)子和只模擬直穿質(zhì)子的情況。以截斷γ射線為例,ClassifyNewTrack函數(shù)中的程序代碼如下:
表2給出了各情況下模擬所需的時間,通過與表1比較,給出了直穿質(zhì)子個數(shù)和總質(zhì)子個數(shù)減少的百分比,并計算了截斷前后時間的比值,即加速比。
由表2可以得出以下結(jié)論:第一,截斷次級粒子可以有效地減少計算時間,截斷不同的粒子時加速比均達到了2倍以上。第二,截斷不同的粒子后對直穿質(zhì)子的個數(shù)的影響均小于1%,可以認為不會影響直穿質(zhì)子的模擬結(jié)果。第三,截斷γ射線對總質(zhì)子個數(shù)的影響小于1%,截斷中子和其他帶電粒子后總質(zhì)子個數(shù)減少了10%以上,分析原因是由于γ射線與物質(zhì)作用后不會產(chǎn)生質(zhì)子,截斷不會影響質(zhì)子的模擬結(jié)果,而中子和一些帶電粒子與物質(zhì)作用會進一步產(chǎn)生次級質(zhì)子,截斷這些粒子會使得出射的次級質(zhì)子有所減少,在需要考慮次級質(zhì)子輸運過程的應用中不能采用。
表2 截斷后的計算速度測試結(jié)果Tab.2 Results of calculation speed testing with cut
3.2并行化加速方法
有關(guān)Geant4程序并行化的研究已較為豐富[7,8]。本研究將并行化方法應用于質(zhì)子輸運模擬,采用文獻[8]中的方法對程序進行了并行化改造。并行計算在銀河計算機上進行,該計算機安裝了紅帽公司的Linux服務(wù)器操作系統(tǒng),CPU頻率為1.6 GHz。表3給出了并行化后的測試結(jié)果。需要說明的是,當模擬的質(zhì)子個數(shù)較多時,如果將所有質(zhì)子的信息存儲在一個文件中,得到的數(shù)據(jù)文件將會很大,不便于后續(xù)數(shù)據(jù)的統(tǒng)計分析。在print函數(shù)中可以首先讀取CPU的編號,用編號為輸出文件命名,將不同CPU的計算結(jié)果存儲在不同的文件當中,解決數(shù)據(jù)文件過大的問題。實現(xiàn)語句如下:
由表3可以看出,加速比隨CPU個數(shù)的增加近似成線性增長,與文獻[8]中的結(jié)果一致。與CPU為3.4 GHz的聯(lián)想計算機的結(jié)果比較,在只模擬直穿質(zhì)子的條件下,聯(lián)想計算機用時65 s,銀河計算機用時295 s。銀河計算機單個CPU運行的速率不及CPU頻率較高的聯(lián)想計算機,然而,銀河計算機上最多可提供的CPU數(shù)達1 024個,可以根據(jù)需要進一步增加CPU的使用個數(shù)來提高質(zhì)子輸運的模擬速度。
表3 并行程序的計算速度測試結(jié)果Tab.3 Results of calculation speed testing of parallel program
本研究基于Geant4軟件建立了模擬10 GeV能量的質(zhì)子穿透FTO過程的蒙卡程序。重點探討了程序的加速方法,在程序中分別實現(xiàn)了次級粒子截斷和并行計算。截斷γ、中子和其他帶電粒子后,加速比均達到了2倍以上,截斷中子和一些帶電粒子會使透射的次級質(zhì)子個數(shù)有所減少,當不需要考慮次級質(zhì)子輸運過程時可以采用。質(zhì)子輸運模擬程序并行化后的加速比隨CPU使用個數(shù)的增加呈線性增長,與文獻結(jié)果一致。與單個CPU不采用粒子截斷的情況相比,只記錄初級質(zhì)子的16個CPU并性程序加速比可達610倍。
[1]張?zhí)炀?,樊明武,李振國,?強流回旋加速器技術(shù)的研究進展[J].科學通報,2009,54(15):2169-2176.
[2]楊朝霞,李德明,張滿洲.基于Geant4模擬的質(zhì)子治療束配系統(tǒng)的束流光學設(shè)計[J].核技術(shù),2013,36(7):070201.
[3]許淑艷.蒙特卡羅方法在實驗核物理中的應用[M].北京:原子能出版社,2006.
[4]張慧,王振超,關(guān)世榮,等.質(zhì)子能量歧離的Geant4模擬[J].黑龍江科學,2014,1(5):14-16.
[5]路偉.Geant4的開發(fā)及其在空間輻射效應分析中的應用[D].長沙:國防科學技術(shù)大學研究生院,2007:13-15.
[6]聶鵬煊,汪一夫,鄭濤,等.CsI(TI)對高能質(zhì)子能量響應的蒙特卡羅研究[J].武漢科技學院學報.2010,23(2):27-32.
[7]王力,李煜,岳騫,等.基于Geant4的射線探測仿真并行化研究[J].核電子學與探測技術(shù),2011,11(11):1237-1240.
[8]謝紅剛,朱金輝,黃流興.Geant4在高性能計算機上的并行[C]//第十屆全國蒙特卡羅方法及其應用學術(shù)會論文:148-151.
[9]張慧,梅雪松,關(guān)世榮,等.4He離子盧瑟福背散射的Geant4模擬[J].黑龍江科學,2013,1(4):22-24.
[10]Geant4 user's guide for application developers[EB10L].(292-11-30)[2015-03-06]http://geant4.web.cern.ch/geant4/UserDocumentation/ UserGuides/ForApplication Developer/html/index.html.
[11]ZIOCK H J,ADAMS K J,ALRICK K R,et al.The Proton Radiography Concept[R].Los Alamos National Report,LA-UR-98-1368,1998:1-17.
Research on Accelerating Method of Proton Transportation Simulation Program Based on Geant4
YAOZhi-ming,HEI Dong-wei,SONGGu-zhou,MAJi-ming,HANChang-cai,DUANBao-jun,YUE Zhi-qin
(State Key Laboratory of Intense Pulsed Radiation Simulation and Effect,Northwest Institute ofNuclear Technology,Xi'an 710024,China)
Proton has bright future in the field of medical,material analysis and radiography.Numerical simulation provides a good way to analyze the process protons transmitting through materials.This article establishes a Monte Carlo program based on Geant4.The accelerating method is introduced.The result implies that secondary particles cut and program paralleled can shorten the time cost effectively.The program can be easily extended which provides a good foundation for fast simulation ofproton transportation.
Proton transportation;Monte Carlo;Acceleration method;Secondaryparticle cut;Parallel program
TL99
A
1674-8646(2015)07-0007-03
2015-04-09
超快物理過程射線診斷及應用研究(51311060502)
姚志明(1989-),男,吉林輝南人,碩士研究生,助理工程師,主要從事質(zhì)子掃描成像的原理探究。