Sumtally機能を使うことにより、複数のタリー結果を足し合わせることができます。足し合わせの方法は
2種類あり、手動で並列計算を実行するために各タリー結果のヒストリー数を考慮して足し上げる方法と、
各タリー結果に任意の重み付けをして加重平均を求める方法があります。前者は、並列計算が利用できず、
限られた計算資源を有効に利用したい場合に役立ちます。後者は、例えば複数の線源による計算を行う際、
それらの強度を任意に変えた場合の結果を、計算をやり直さずに求めることができます。
Sumtally機能が動作する条件は次の3つです。
• [parameters]セクションにおいてicntl=13とする
• 足しあわせたいタリー結果の条件(mesh, axis, partなど)が一致していること
• 足しあわせたいタリー結果の条件が書かれたタリーセクションにおいて、sumtallyサブセクションを
設定する30 31
Sumtallyサブセクションが設定されていても、icntl=13となっていなければその内容は無視されます。(バー
ジョン2.88以降では、全てのタリーで本機能を利用できます。)この機能の具体的な利用方法については、
\phits\utility\sumtallyフォルダにある資料やサンプルインプットをご参照ください。
Sumtallyサブセクションは、“sumtally start”と“sumtally end”で挟んだ領域で設定します。
Sumtallyサブセクションで使用できるパラメータは表79の通りです。
表79: sumtallyサブセクションパラメータ
name 値 説明
isumtally = 1(省略時), 2 Sumtally機能の計算方法 1: 手動並列計算用 2: 加重平均計算
nfile = 数 タリーファイル数
(次行) file name 数値 タリーファイル名、重み付けの値
isumtally=2の場合は自動的に規格化されます
sfile file name sumtally機能で足しあわせた結果の出力ファイル名
sumfactor (省略可、D=1.0) 規格化定数
isumtally=1の場合は手動で並列計算を実行することができます。例えば、maxcas=100, maxbch=10で 計算した結果result-1.outとmaxcas=100, maxbch=20で計算した結果result-2.outがある場合、次のように sumtallyサブセクションを設定することでmaxcas=100, maxbch=30の条件で計算した結果result-s.outを 得ることができます。
List 5.3
•
sumtally機能を用いた例題(isumtally=1)の場合)1: sumtally start
2: isumtally = 1 $(D=1) sumtally option, 1:integration, 2:weighted sum 3: nfile = 2 $ number of tally files
4: result-1.out 1.0 5: result-2.out 1.0
30バージョン2.81以前では、sumtallyサブセクションが設定されたタリーセクションにおいてfileパラメータが設定されていな くても動作しましたが、バージョン2.82以降ではこのパラメータがないとエラーになりますのでご注意ください。
31バージョン2.85以前では、1つのインプットファイルにおいて1つのsumtallyサブセクションしか設定できませんのでご注意く ださい。
6: sfile=result-s.out $ file name of output by sumtally option 7: sumfactor = 1.0 $ (D=1.0) normalization factor
8: sumtally end
ただし、乱数の重複を避けるために、result-2.outの計算を実行する際は[parameters]セクションにおいて
irskip=-1000を設定してください。また、足し合わせるファイル名の右で設定する重み付けの値は、基本
的に1としてください。isumtally=1の場合、重み付けの値を1より変更することで、各タリー結果を求 めた際のソースウエイトの平均値を変えることになります([source]セクションでwgtを変更した場合と同 じ)。なお、isumtally=1で得られたタリー結果に対しては再開始計算を実行することが可能です。
isumtally=2の場合、次の計算式により加重平均値X¯を求めます。
X¯ =F
∑N
j=1
rj
rX¯j (2)
ここで、Fがsumfactorで指定する規格化定数、Nがnfileで指定するタリーファイル数、X¯jが j番目 のタリーファイルの結果、rjが j番目のタリーファイルの重み付けの値です。rはr=∑N
j=1rjで計算してお り、重み付けの値rjを変えることで、各タリー結果の相対的な強度を任意に与えることができます。標準 偏差σXは、j番目のタリー結果の標準偏差をσXjとし、
σX =F
vu
t∑N
j=1
(rj
r )2
σ2Xj (3)
により求めています。isumtally=2は、例えば、ある標的に対して左右から違う量の放射線を照射した結果 を求めたい時に利用できます。左から照射した結果がresult-l.out、右から照射した結果がresult-r.outであっ た場合、2:3の割合で照射した結果は次のような設定で計算することができます。
List 5.4
•
sumtally機能を用いた例題(isumtally=2)の場合)1: sumtally start
2: isumtally = 2 $(D=1) sumtally option, 1:integration, 2:weighted sum 3: nfile = 2 $ number of tally files
4: result-l.out 2.0 5: result-r.out 3.0
6: sfile=result-s.out $ file name of output by sumtally option 7: sumfactor = 5.0 $ (D=1.0) normalization factor
8: sumtally end
この条件と同じシミュレーションはマルチソースの機能を利用することで実行可能です。しかし、照射割 合を変えるなど、色々な条件の計算を調べたい場合は、isumtally=2を利用するのが便利です。なお、重 み付けの値は、足し合わせるタリー結果の相対的な割合にしか影響しませんのでご注意ください。絶対値 を変える場合はsumfactorの値を変更します。また、isumtally=2の場合は、乱数等の再開始計算に必要 な情報は出力されず、再開始計算ができないようになっています。
6 タリー入力書式
6.1 [ T-Track ] セクション
指定した任意の空間における粒子のfluenceを出力します。このタリーでは、指定した空間を粒子が通過 した際に、その空間における飛跡長(track length)を計算しており(図31参照)、飛跡長の和を空間の体積で 割ることによって、単位面積あたりの粒子の流量が得られるようになっています。
例えば、このタリーは指定した空間に置いた測定機器の応答の状況を調べるのに利用できます。各測定機 器がもつ応答性能を([cm2]の単位をもつ)断面積の形で計算しておけば、その値を本タリーで求めたfluence と掛け合わせることにより、シミュレートした状況においてその測定機器が何回応答するかを評価できます。
track length V
図31: Trackタリー:空間内の飛跡(実線)の長さを計算する。
表80:[t-track]パラメータ(1)
name 値 説明
mesh = reg, r-z, xyz 形状メッシュ、形状メッシュサブセクションが必要
part = all(省略時), 粒子名 ひとつの[t-track]セクション最大6個まで
material = (省略可) スコアするmaterialを限定する。複数定義可
all, 数 all : デフォルト、この場合省略した場合と同じ
数を指定した場合、その数だけのmaterialを次の行 に記述する。 負の数にした場合は、それらの materialを対象から外すことを意味する。
(次行) 2 5 8 material番号
e-type = 1, 2, 3, 4, 5 エネルギーメッシュ
エネルギーメッシュサブセクションが必要 t-type = 1, 2, 3, 4, 5 時間メッシュ
(省略可) 時間メッシュサブセクションが必要
a-type = 1, 2, -1, -2 mesh=r-zとした場合のθに関する角度メッシュ
(省略可) 角度メッシュサブセクションが必要
表81:[t-track]パラメータ(2)
name 値 説明
unit = 1, 2, 3, 4 1: [1/cm2/source]
2: [1/cm2/MeV/source]
3: [1/cm2/Lethargy/source]
4: [cm/source]
11, 12, 13, 14 11:[1/cm2/nsec/source]
12:[1/cm2/nsec/MeV/source]
13:[1/cm2/Lethargy/nsec/source]
14:[cm/nsec/source]
axis = eng, reg, x, y, z, r, 出力データのx軸
rad, deg, 出力データのx軸(mesh=r-zで、θに関する自由度)
xy, yz, xz, rz, 2次元表示
t 時間軸
file = file name axis の数だけ定義する
resfile = (省略可, D=file) 再開始計算時の過去タリーファイル名。複数axisの
場合でも1つのみ指定。
multiplier = 物質数(省略可) multiplierを物質毎に指定します
multiplierサブセクションの書式は下に示します factor = (省略可、D=1.0) normalization factor
title = (省略可) 出力ファイルヘッダーのタイトル
angel = (省略可) angel パラメータ
2d-type = 1,2,3,4,5,6,7 (省略可) 2次元表示のオプション
x-txt = (省略可) x-軸テキスト
y-txt = (省略可) y-軸テキスト
z-txt = (省略可) z-軸テキスト
gshow = 0(省略時), mesh=xyz, axis=xy,yz,xzの時、領域境界(1)、
1, 2, 3, 4 物質番号(2)、領域番号(3)、LAT番号(4)を表示 rshow = 0(省略時), mesh=reg, axis=xy,yz,xzの時、領域境界(1)、
1, 2, 3 物質番号(2)、領域番号(3)を表示
この下にxyz形状メッシュセクションが必要
unit = 3, 13の場合のLethargyはエネルギーに関する自然対数目盛を表しています。各エネルギービ ンの上限と下限がそれぞれEhigh,Elowのときに、各Lethargyの幅をln(Ehigh/Elow)で与えます。
unit = 1, 2, 3, 11, 12, 13を指定すると、fluence、すなわち入射粒子あたりの飛跡長の和をその空 間の体積で割った値を出力します。ただし、regメッシュを用いている場合は、その体積を[Volume]セク ションで与える必要があります。これが与えられていないときは、体積が1cm3であるとして、入射粒子あ たりの飛跡長の和をそのまま出力します。r-z,xyzメッシュの場合は体積が自動的に計算できますので、そ の値が用いられます。unit=4,14を指定すると、体積で割らずにそのまま飛跡長の和を出力します。
本タリーに関しては、mesh=r-zとした場合に、既存のr, zメッシュに加え、θメッシュを指定すること ができます。θに関するメッシュを指定する際は、a-typeを用いてください。また、角度を横軸にして出 力する場合は、axisとしてradかdegを指定してください。radはradianで、degはdegreeの単位で出力 します。
表82:[t-track]パラメータ(3)
name 値 説明
ginfo = 0(省略時), gshow, rshowオプションの時領域エラーチェックを行わない。
1 領域エラーチェックを行い2次元ジオメトリ図上にエラー領域 を表示する。
2 エラー領域表示に加えて領域エラーファイル(.err)を出力。
resol = 1(省略時) gshow, rshow オプションの時、領域境界を求める
分解能を各辺resol倍します。
width = 0.5(省略時) gshow, rshow オプションの時、領域境界を表示する
線の太さを定義します。
volume (省略可) reg メッシュの時、 各領域の体積を定義します。
省略した場合、インプットエコーにデフォルト値が 表示されます。この行の下にvolume定義文が必要
reg vol volume定義文。書式は5.1.2を参照。
iechrl = 72(省略時) volumeのインプットエコーの時の最大コラム数
volmat = (省略可、D=9) xyzメッシュでmaterialが指定されている時、
各メッシュのvolume correction を行う。(0で無し) volmatの値は、xyzメッシュ1辺のスキャン数
epsout = 0(省略時), 1, 2 1で出力ファイルをANGELで処理したepsファイル を作成。ファイル名は出力ファイルの拡張子をepsに 変えたファイル名。
2とすることで更に誤差棒を表示する。ただし、
2次元表示(axis= xy, yz, xz, rz)の場合は無効。
bmpout = 0(省略時), 1 二次元ビットマップ画像ファイルを出力する。
ファイル名は出力ファイルの拡張子をbmpに変えたファイル名。
mesh=xyz, axis=(xy, yz, xzのいずれか)のときのみ有効。
vtkout = 0(省略時), 1 タリー出力結果の三次元可視化用ファイルを出力する。
ファイル名は出力ファイルの拡張子をvtkに変えたファイル名。
mesh=xyz, axis=(xy, yz, xzのいずれか)のときのみ有効。
vtkfmt = 0(省略時), 1 タリー出力結果の三次元可視化用ファイルのフォーマット。
テキスト形式(0)またはバイナリ形式(1)を選択する。
ctmin(i) = (省略可、D=-9999) i-th カウンターの最小値 ctmax(i) = (省略可、D= 9999) i-th カウンターの最大値
trcl = (省略可) r-z, xyz メッシュの座標変換番号もしくは座標変換定義
gslat = 1(省略時) 1 でgshowでlatticeの境界を表示
0 0 でgshowでlatticeの境界を非表示