3.6 粒子の表式
4.3.14 dump データソース
s-type=17とすることでdumpファイルに落とされた粒子情報を線源として利用できます。パラメータ
idmpmodeを切り替えることにより、粒子情報の取り扱い方法として2種類を選択することができます。
idmpmode=0の場合は、dumpファイルに記録された粒子を一つ一つの独立したイベントによる粒子である
として統計処理を行います。対してidmpmode=1の場合は、dumpファイルに記録されたヒストリーとバッ チの情報を利用することで、dumpファイルを作成した際のイベント情報を基に粒子間の相関を考慮した統 計処理を行います。dumpファイルを用いたつなぎ計算を行う場合は、前段階のイベント情報を考慮して統 計誤差を評価できるようにidmpmode=1としてください。27
このソースタイプに関連するパラメータは以下の通りです。パラメータの順序は自由です。(D=***)のあ るものは、省略可能です。
表45: dumpデータのソースパラメータ(1) s-type = 17 dumpファイルを読み込むとき
file = dumpファイル名(パスも含む)
dump = dumpデータの個数、負で与えた時はアスキーファイル
(次行) dumpデータの情報
以下のものが指定されたとき、dumpデータがある場合も (以下省略可能) dumpデータより優先します。
x0 = 下限x座標(cm) x1 = 上限x座標(cm) y0 = 下限y座標(cm) y1 = 上限y座標(cm) z0 = 下限z座標(cm) z1 = 上限z座標(cm)
sx = スピンの方向ベクトルのx成分 sy = スピンの方向ベクトルのy成分 sz = スピンの方向ベクトルのz成分
dir = 入射粒子のz軸方向からの方向余弦
allを指定した時は、等方分布
dataを指定した時は、a-typeサブセクションが必要 phi = (D=省略、ランダム)入射粒子の方位角(degree) dom = (D=0.0)入射粒子方向の立体角範囲(degree)
=−1 ; cos2bias分布
e0 = 入射粒子のエネルギー(MeV/u)
e-type = 入射粒子のエネルギー分布指定
wgt = (D=1.0)ソース粒子のウエイト
27idmpmode=1およびdmpmultiによる使い回し計算は、日本原子力学会「2015年春の年会」での波戸氏(KEK)らの発表“モンテ カルロつなぎ計算における不確かさ評価”(演題番号N50)を参考に改良を行ったものです。
表46: dumpデータのソースパラメータ(2)
(以下省略可能) 以下のものも指定可能です
factor = (D=1.0)ソース粒子のウエイトの規格化定数 t-type = (D=0)時間分布
reg = (D=all)領域を限定する
ntmax = (D=1000)領域限定の際の最大再試行回数 trcl = (D=なし)座標変換番号もしくは座標変換定義 idmpmode = dumpソースモードの選択
(D=0) dumpデータがnocasとnobachの情報を含まない場合 (D=1) dumpデータがnocasとnobachの情報を含む場合
=0: dumpファイルに記録された粒子情報を1つ1つの独立した
ヒストリーとして統計処理を実行する
=1: dumpファイルを作成した際のヒストリーの情報(粒子間の
相関)を考慮し統計処理を実行する dmpmulti = dumpファイルの使い回しの回数
(D=0.0)idmpmode=0の場合 (D=1.0)idmpmode=1の場合
=0.0:(maxcas*maxbch)で指定した全ヒストリー数の計算が終了 するまで使いまわす。ただし、idmpmode=1の場合は指定できない
>0.0:指定した回数だけ粒子情報を使いまわす。小数点以下の数字は データを確率的に採用(ロシアンルーレット)することで考慮する
idmpmode=1を使用するためには、使用するdumpデータにヒストリー番号(nocas)とバッチ番号(nobch) が含まれている必要があります。PHITSのタリー出力によりdumpファイルを生成すると、ファイル名に
“ dmp ”が付いたdumpファイルと共に“ dmp ”が付かない通常のタリーファイルが生成されますが(5.7.20
節参照)、idmpmode=1を使用するためには、この通常タリーファイルも必要とされますので、使用する dumpファイルと同じフォルダに配置してください。idmpmode=1では、この通常タリーファイルから前段 階のmaxcas,maxbchの情報を読み込みます。これによりインプットファイルに記述したmaxcas,maxbch の値は無視されます。また、idmpmode=1ではソースの規格化定数totfactの値が無視されます。ソースの 規格化定数totfactを乗じた計算を行いたい場合は、dumpファイルを作成する前段階の計算において乗じ るようにしてください。dumpファイル内の粒子のウェイト値に反映されます。idmpmode=1はマルチソー スと同時に使うことはできません。
dmpmultiはdumpファイルの使い回しの回数を制御します。dmpmulti=2.0の場合dumpファイルを2回 使い回しますが、具体的には、1個の粒子情報に対してウエイト値を0.5倍した2個の粒子を線源として発 生させた計算を実行します。小数点以下の数字は、使い回す回数をもう1つ増やすかどうかに関連し、各々 の粒子情報に対して乱数により決定します。例えば、dmpmulti=2.3の場合、使い回す回数が70%の確率で 2回、30%の確率で3回となります。また、dmpmulti=0.0を指定した場合は、maxcas,maxbchで指定され る全イベントが終了するまで、dumpファイルを使い回します。ただし、これはidmpmode=0でのみ有効と なります。
dumpファイルを線源として使う計算では、基本的に再開始計算(istdev<0)はできません。dmpmulti=0.0 の時のみ可能ですが、この場合はidmpmode=0となるため、dumpデータの粒子情報を1つ1つの独立し たヒストリーとして扱うことになり、データが十分にないと統計的に偏った結果を与えることになります。
よって、統計量を増やした結果を得るためには、基本的にはdmpmultiの値を大きく取って再度計算してく
ださい。ただしこの場合も、dumpファイルにあるデータ量が十分でないと、dmpmultiを増やしても、求め る精度まで統計誤差が小さくならない可能性があるのでご注意ください。データ量が少ない場合は、dump ファイルにデータを蓄える計算の段階からやり直す必要があります。
dumpデータの情報は、まずdump =でデータの個数を指定します。正で与えた時はバイナリーファイル の読み込み、負で与えた時はアスキーファイルの読み込みをします。次の行に1つのレコードのデータの並 びを指定します。その時の番号と物理量の関係は、以下の通りです。
表47: dumpデータの種類と番号(1)
物理量 kf x y z u v w e wt time c1 c2 c3 sx sy sz 番号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
表48: dumpデータの種類と番号(2) 物理量 name nocas nobch no
番号 17 18 19 20
ここで、kfは粒子を識別するkf-code(表4を参照)、x, y, z単位をcmとする空間座標、u, v, wは運動量の 単位ベクトル、eはMeVを単位とするエネルギー(原子核の場合はMeV/u)、wtは粒子ウエイト、timeは 時間(単位はnsec)、c1, c2, c3はカウンターの値、sx, sy, szはスピンの方向ベクトルです。nameは粒子の衝 突回数、nocasはあるバッチの中のヒストリー番号、nobchはバッチ番号、noはそのヒストリー中でのカス ケードIDです。これらはバイナリーのときはreal*8のデータで、アスキーのときはn(1p1d24.15)のデータ フォーマットで格納されています。
例えば、9つのデータが次の順番で並んでいる時、
kf e wt x y z u v w
このデータを読み込むには、
dump = 9
1 8 9 2 3 4 5 6 7
と指定します。