ユーザーコードの導入

2022年8月9日
KEK 波戸例題１ ベータ線を物質に打ち込む

ベータ線• ベータ線は物質で止まってしまうか？通り抜けるか？
• 物質の内部でどのような反応が起こるか？

条件設定

1.5 eV*電子ボルト：

放射線源
90Sr-90Y

ベータ線
最大エネルギー

エネルギーの単位
電位差1 Vで加速された電子のエネルギー
MeV = 106 eV

2.3 MeV*

物質 アルミニウム• ベータ線は物質で止まってしまうか？通り抜けるか？
• 物質の内部でどのような反応が起こるか？

→ EGS5を実行し、コンピュータグラフィックを観察2.3 MeV ベータ線→Al 1cm
空気Al

空気ベータ線源• 50本入射→透過せず• 3本反射• X線８本発生(黄色)2.3 MeV ベータ線→Al 0.25cm
空気Al

空気ベータ線源• 50本入射→27本透過

アルミ板厚さによる透過ベータ線本数の変化
60

透過ベータ線本数

50403020

最大飛程10000.1

0.2

0.3

0.4

アルミ板厚さ (cm)

0.5

0.6

PC上での手順• ucshield.* とshield.dat をisord5.tar.gzから取り出す• コマンドプロンプト窓を開いて入力し、egs5を走らせる– C:¥g77¥g77setup– cd egs5/userdir– egs5run ucshield

窓を開いた後、一度だけ必要• 問に答える– Key in Material number: 1– Do you want to produce… : 0– Key in particle type: -1– Key in particle kinetic energy in MeV : 2.3– Key in slab thickness in cm : 1.0• Cgviewを起動し軌跡を表示– File -> Read geometry -> (Move to working folder) ->Select egs5job.pic

例題２ ガンマ線を物質に打ち込むガンマ線• ガンマ線は物質で止まってしまうか？通り抜けるか？
• 物質の内部でどのような反応が起こるか？

条件設定

放射線源
60Co

ガンマ線
平均エネルギー
1.25 MeV*

物質 アルミニウム• ガンマ線は物質で止まってしまうか？通り抜けるか？
• 物質の内部でどのような反応が起こるか？

→ EGS5を走らせ、コンピュータグラフィックを観察1.25 MeV ガンマ線→Al 5cm
Al

空気

空気

ガンマ線源

反射→

直接線
←散乱線

• 50本入射• 透過：直接線24、散乱線13; 反射2

1.25 MeV ガンマ線→Al 10cm
空気

Al

ガンマ線源

透過：直接線11、散乱線8; 反射4空気1.25 MeV ガンマ線→Al 20cm
空気Alガンマ線源

透過:直接線4、散乱線3; 反射1

空気アルミ板厚さによる透過ガンマ線本数の変化
透過ガンマ線本数 Y（直接線のみ）

100

Y = 38 exp (-0.11 X)

1010510152025

アルミ板厚さ X (cm)303540PC上での手順• ucshield.* とshield.datをisord5.tar.gzから取り出す。
• コマンド窓を開いて入力し、egs5を走らせる– C:¥g77¥g77setup– cd egs5/userdir– egs5run ucshield

窓を開いた後、一度だけ必要• 問に答える– Key in Material number: 1– Do you want to produce… : 0– Key in particle type: 0– Key in particle kinetic energy in MeV : 1.0– Key in slab thickness in cm : 1.0• Cgviewを起動し、軌跡を表示する。

– File -> Read geometry -> (Move to working folder) ->Select egs5job.pic例題3 ucbend.f
磁場中での電子輸送

PCでの手順• isord5.tar.gz からucbend.*を取り出す• コマンド窓を開いて入力し、egs5 を走らせる– C:¥g77¥g77setup– cd egs5/userdir– egs5run ucbend

窓を開いた後、一度だけ必要• Cgview を走らせる– File -> Read geometry -> (Move to workingfolder) -> Select egs5job.pic

例題4 tutor1 code
• tutor1 codeを走らせる• 出力をマニュアルと比較する– 出力とコードの関連部分との対応は？

• 線源粒子の指定方法を調べる
領域2
領域120 MeV電子
タンタル板(厚さ1 mm)領域3

ここに何が出てくるか？

tutor 1の線源指定
iqin=-1! 電子
ein=20.0d0 + RM ! 運動エネルギー 20 MeV
xin=0.0
yin=0.0! 原点入射
zin=0.0
uin=0.0
vin=0.0! Z方向に進む
win=1.0
irin=2! 初期領域=2wtin=1.0 ! 重み=1
call shower(iqin,ein,xin,yin,zin,uin,vin,win,irin,wtin)tutor1の検出器ルーチン (ausgab)
if (iarg.eq.3.and.ir(np).eq.3) then !条件!
Z軸に対する角度 (degrees)
angle=acos( w(np) ) ∗ 180.0 / 3.14159! 運動エネルギーの計算
if (iq(np).eq.0) then ! 光子ekine=e(np)elseekine=e(np)-RM ! 電子・陽電子
end ifwrite(6,100) ekine, iq(np), angle ! 結果の出力
100 format(T21,F10.3,T33,I10,T49,F10.1)
end ifiarg: ausgabの引数
iarg.eq.3: ユーザーの要求により粒子の輸送終了
表 B.18, B.19：iargの一覧表

ir(np): 粒子が現在属する領域の番号
np: 現在指されている粒子の番号
表B.11 common/STACK 中の粒子情報の一覧

tutor1の結果 (tutor1.out)
運動エネルギー 電荷

Z軸からの角度

(MeV)
(deg)
-------------------------------------------------------------Start history 1
1.867
02.3
0.680
010.8
15.455-127.0Start history 20.400
028.4
1.451
028.2
16.141-121.6
Start history 30.301
012.4
1.402
033.3
16.128-173.4(以下、省略)PCでの手順• egs5フォルダから作業フォルダにtutor#をコピーする。
– # = 1,2,3,5,6,7• コマンドプロンプト窓を開く• 次のように入力しegs5を走らせる– C:¥g77¥g77setup– cd egs5/userdir– egs5run tutor1

窓を開いた後、一度だけ必要• 出力を tutor#.out と比較する。
• tutor#.f の中を調べる– 線源粒子を指定するための行はどこか？
– 粒子の情報を出力するための行はどこか？

例題5 tutor2 code
領域2領域120 MeV 電子
タンタル板(厚さ1 mm)

領域3

例題5 tutor2 code
吸収エネルギーは？
領域2領域1領域320 MeV 電子
反射エネルギーは？

透過エネルギーは？

タンタル板(厚さ1 mm)

subroutine ausgabの主要部
if (iarg.le.4) then ! 条件
irl=ir(np)escore(irl) = escore(irl) + edep ! 計数部
end ifiarg.le.4: 粒子の通常の輸送または輸送終了
表 B.18, B.19：iargの一覧表
edep : 吸収エネルギー
粒子情報の一つ。表B.6参照

例題5 tutor2 code
吸収エネルギー: 12.96%
領域2領域1領域320 MeV 電子
反射エネルギー:0.66%

透過エネルギー:86.39%

タンタル板(厚さ1 mm)

subroutine ausgabの主要部
if (iarg.le.4) then ! 条件
irl=ir(np)escore(irl) = escore(irl) + edep ! 計数部
end ifiarg.le.4: 粒子の通常の輸送
または輸送終了表 B.18, B.19：iargの一覧表
edep : 吸収エネルギー
粒子情報の一つ。表B.6参照

例題5 tutor3 code
応答関数 (=吸収エネルギー分布) は？
領域2領域1idisc=1

領域3idisc=1

5 MeV 光子NaI板
(厚さ2.54cm)
subroutine ausgabの主要部
if (iarg.le.2 .or. iarg.eq.4) then ! 条件
ehist = ehist + edep ! 計数部
end ifiarg.eq.3 : ユーザー要求による粒子輸送の終了(idisc=1に対応)
edep : 吸収エネルギー
粒子情報の一つ。表B.6参照

-----------------------------------------------------------------------------------------------

Energy counts/incident photon
0.20 0.0060*
0.40 0.0058*
0.60 0.0054*
0.80 0.0050*
1.00 0.0058*
1.20 0.0065*
1.40 0.0047*
1.60 0.0043 *1.80 0.0060*
コンプトン連続部分
2.00 0.0047*
2.20 0.0061*
2.40 0.0053*
2.60 0.0059*
2.80 0.0059*
3.00 0.0061*
3.20 0.0053*
3.40 0.0069*
3.60 0.0079*
3.80 0.0103*
4.00 0.0273* ←ダブルエスケープピーク
4.20 0.0226*
4.40 0.0155*
4.60 0.0352* ←シングルエスケープピーク
4.80 0.0209*←光電ピーク
5.00 0.0371*-----------------------------------------------------------------------------------------------

tutor3 出力

例題6 tutor5 code
透過・反射光子の散乱履歴は？
50 keV 光子
水の板(厚さ0.5cm)
if (iarg.eq.17) then! A Compton scatter is about to occur
latch(np)=latch(np)+1else if (iarg.eq.23) then! A Rayleigh scatter is about to occur
latch(np)=latch(np)+1000

MainでCOMMON/EPCONT
IAUSFL(18)=1 ! Turn on Compton
IAUSFL(24)=1 ! Turn on Rayleighausgabでのlatch変数（粒子の追加属性）の操作
iarg.eq.17 : 今からコンプトン散乱を計算
iarg.eq.23 : 今からレイリー散乱を計算(表B.19参照)

例題6 tutor5 code
透過・反射光子の散乱履歴は？
50 keV 光子
水の板(厚さ0.5cm)
透過した入射線の割合=88.89% (0.050 MeV)
レイリー散乱の割合= 0.95% (0.049 MeV)
コンプトン散乱のみの割合 = 8.60% (0.046 MeV)()内は平均エネルギー

例題7 tutor7 code
領域1反射光子のエネルギー
スペクトルは？

ausgabの主要部

100 keV 光子
鉛板(厚さ1cm)

irl=ir(np)if(irl.eq.1.and.iq(np).eq.0) then ! 反射光子 : 条件1! 光子エネルギーに対応したビン番号を設定 : 条件2
ibin= min0 (int( e(np) / bwidth + 0.999 ), 50)
if (ibin.ne.0) thenebin(ibin)=ebin(ibin)+1 ! 実際の計数
end ifend if領域2領域3

tutor7出力(一部)================================
Energy counts/incident photon
(MeV)
(log)
------------------------------------------------------0.0020 0.0000*
0.0040 0.0000*
0.0060 0.0000*
0.0080 0.0000*
0.0100 0.0000*
Lα線
0.0120 0.0024*
0.0140 0.0032* L +L 線
βγ
0.0160 0.0001*
0.0180 0.0000*--------------------------------------------------------------------------------------------------------

0.0600 0.0002 *0.0620 0.0002 *0.0640 0.0002 *0.0660 0.0006*コンプトン
0.0680 0.0002 *連続部
0.0700 0.0009*
0.0720 0.0007*
0.0740 0.0529* K 線
α0.0760 0.0815*
0.0780 0.0008*
0.0800 0.0004*
0.0820 0.0003 *0.0840 0.0003 *0.0860 0.0340*
Kβ線
0.0880 0.0100*
0.0900 0.0000*
0.0920 0.0000*
0.0940 0.0000*
0.0960 0.0000*
0.0980 0.0000*
レイリー散乱0.1000 0.0006*==================================

Fin