GeneralParticleSource為通用粒子源,在Geant4可以通過宏文件來做復(fù)雜的放射源抽樣,最近幫人模擬伽馬刀(不懂的自行搜索什么是伽馬刀),需要做多源抽樣且放射源的角度需要偏轉(zhuǎn),查看手冊《BookForApplicationDevelopers.pdf》的第28頁,如下圖:
這個rot1和rot2的旋轉(zhuǎn)角度說的很玄乎,也可能是我的數(shù)學(xué)不好,空間思維不夠,沒能理解。在進行大量的搜索以后,發(fā)現(xiàn)在全世界的相關(guān)網(wǎng)站上也沒找到這兩個參數(shù)的具體解釋或者示意圖,最后我就打算自己寫個程序來測試一下rot1和rot2的具體含義。
測試程序部分
第一步
首先需要擁有一個可以運行GPS的程序,這個程序在以前的文章中講了如何修改,這里就不贅述了,詳細可以參見:
GPS(通用粒子源)多個源設(shè)置及資料分享
第二步
擁有可以運行GPS的程序之后,我們需要對放射源發(fā)射的初始位置進行統(tǒng)計,找到G4GeneralParticleSource.hh文件,查看里面定義的函數(shù)。
如圖所示GetParticlePostition函數(shù),通過這個函數(shù)可以看出GPS可以對初始粒子的位置進行統(tǒng)計的,當(dāng)然里面還有其他函數(shù),可以統(tǒng)計諸如:粒子運動方向,能量、電性等等,有興趣的可以自己研究一下。
第三步
在程序中增加獲取粒子初始位置的代碼,并將位置數(shù)據(jù)保存到文件中,假設(shè)已經(jīng)改好了可以運行GPS的程序,如果不熟練,原文鏈接中的百度分享里面提供了測試程序。
修改方法如下圖,加入紅色方框中的代碼,代碼比較簡單,不贅述了,直接將三個坐標(biāo)輸出到position.txt中。
注:需要在開頭加上 #include 以及 #include “G4ThreeVector.hh”
測試過程部分
數(shù)據(jù)分析使用matlab,程序見原文鏈接中百度云盤分享。
GPS(通用粒子源)多個源設(shè)置及資料分享中的
ex14.pdf這個例子中內(nèi)容,如下圖所示
紅色框中箭頭注釋的數(shù)字為 -0.57735,隨便一看就知道,這是-√3/3(負號三分之根號3)。所以推測這個應(yīng)該是與正切相關(guān),但到底是哪兩個邊的正切值,不得而知。所以就進行大量測試及畫圖,簡單說明
Source X-Y distribution即沿著Z軸正方向,向Z軸負方向看,抽樣圓柱型體源在XOY面上的投影,其他兩個同理
說明及結(jié)論:
使用的放射源為圓柱形體源,半徑為5mm,半高為5mm,中心位于原點,各項同性發(fā)射,為了方便說明,定義rot1 Var1 Var2 Var3
1、圖1為手冊中默認的rot1坐標(biāo)。
2、由圖2、圖3、圖4可知,rot1的偏轉(zhuǎn)角度為Var3/var1的反正切值。且此角度從X正方向開始,在XOZ面內(nèi)沿著逆時針方向增大。
3、圖5、圖4驗證確定旋轉(zhuǎn)角為Var3/Var1反正切值。
下面繪圖解釋:
注意橫軸坐標(biāo)為X軸
對于rot1 Var1 Var2 Var3,arctan(Var3/Var1) = θ
注意橫軸坐標(biāo)為Y
按說明書上:
rot2的初始坐標(biāo)為 0 .,1.,0.
經(jīng)過對rot2的大量測試,過程與過程圖略過,結(jié)論為
rot2的偏轉(zhuǎn)角度為Var3/var2的反正切值。且此角度從Y正方向開始,在YOZ面內(nèi)沿著逆時針方向增大。
對于rot2 Var1 Var2 Var3,arctan(Var3/Var2) = φ
原文標(biāo)題:GPS放射源旋轉(zhuǎn)角度解釋及源抽樣測試程序分享
文章出處:【微信公眾號:Geant4模擬學(xué)習(xí)交流】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
責(zé)任編輯:haq
-
gps
+關(guān)注
關(guān)注
22文章
2901瀏覽量
166534 -
程序
+關(guān)注
關(guān)注
117文章
3795瀏覽量
81300
原文標(biāo)題:GPS放射源旋轉(zhuǎn)角度解釋及源抽樣測試程序分享
文章出處:【微信號:gh_361ab7628207,微信公眾號:Geant4模擬學(xué)習(xí)交流】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論