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