コード変更履歴(PHITS2.24以降)

PHITSコードのバージョンはphits3.31です。
改良点の詳細は,マニュアルの「1.1最近の改良点」をご参照ください。
また,Version 2.522.762.822.883.003.103.203.243.273.31への更新ポイントをまとめたPDFファイルも公開しておりますので,ご参照ください。

【 phits331 】 2023/04/19

ガンマ崩壊モデルEBITEMを改良し、EBITEM Ver.2として完成しました。中性子捕獲反応から生じるガンマ線をEGAF(Evaluated Gamma Activation File)によって計算する他、内部転換反応から生じる原子脱励起反応も計算するようにしました。|igamma|≥2にしていれば、特に操作を必要とせず、自動的に Ver.2を使用します。

ユーザー定義文字列を利用可能としました。

タリーの画像出力で同じページに表示するデータをコントロールするパラメータ samepageを導入しました。

断面積出力モード (icntl=1) で核データライブラリに含まれる情報を直接出力する機能 (inucr=100)を導入しました。

RI線源機能(e-type=28,29)を自発核分裂中性子源に適用可能としました。

荷電粒子の核反応断面積の最大値をメモリに格納することにより計算を高速化しました。

[t-sed]タリーに新しいモデルを導入し、PHITSに組み込まれた飛跡構造解析モデルに基づいてマイクロドジメトリ量を計算可能としました。

ユーザー定義モデル(PHITS-UDM) を開発しました。ユーザー独自の相互作用と生成粒子を定義することが可能となります。 詳細は、こちらをご参照下さい。

連続四面体形状として許されない四面体同士の交差の有無をチェックするオプション itgchkを導入しました。

anatallyで異なる種類のタリー結果を組み合わせて解析可能となりました。

[t-product]で核データによる反応によって生成された粒子をタリーできるようになりました。

電磁場を抜けた後も電子の挙動が電磁場の影響を受けてしまうバグを修正しました。このバグは、version3.25以降、発生していました。

同じ核種に対して JENDL4と他の核データ(JENDL-4.0/HEを除く)を同時に使った場合に発生していたバグを修正しました。

[t-point]でタリーする際に、標的核の熱運動が適切に計算されないバグを修正しました。 熱中性子による散乱がタリー結果に寄与する場合に影響し、線量計算のようにエネルギー積分した量をタリーした時に最大で20%程度ずれた結果を出していました。

negsパラメータに新たなオプションを導入し、negs=2とした場合は、電子、陽電子、光子の上限エネルギー dmax(12), dmax(13), dmax(14)が自動で10 TeVに設定されるようにしました。

イベントジェネレータモードを使用した場合、中性子捕獲反応から生じる一個目のガンマ線の計算にEGAF(Evaluated Gamma Activation File)を使うようにしました。 従来は原子番号が 32(Ge)までの核に評価済みデータを、それ以外の核は理論モデル EBITEM で計算していました。 この改良により、32(Ge)までの核に加えて、原子番号33(As)から83(Bi)までの天然存在核種全てと、U-235、U-238の中性子捕獲反応にも評価済みデータを使用することで、より正確な計算が可能になりました。

[t-cross]及び[t-product]でLETの関数として結果を出力するオプションを追加しました。

DCHAIN で出力する線量の単位を idosunitで調整する際、その変換係数が変更されました。

ITSARTの電離・励起断面積計算方法を変更し、阻止能がATIMAの結果とほぼ一致するように改良しました。

断面積出力モード(icntl=1)に、電子を除く荷電粒子の物質中での阻止能を出力する新たなオプション(inucr=16)、及び任意かつ複数のエネルギーに対して結果を出力する機能を追加しました。

これまで静的に確保していた幾何学形状や線源情報メモリを動的に確保するように修正しました。 これにより、複雑な体系などメモリ消費量の多い計算をする際、mdasを増やして再コンパイルする必要がなくなりました。

国際放射線防護委員会(ICRP)より許諾を受け、ボクセル型及びメッシュ型ICRP標準成人男女人体模型のサンプル入力ファイルをsample/icrpフォルダに追加しました。

PHIG-3Dでジオメトリエラー(2重定義、未定義領域)を検出する機能を導入しました。

タリーの出力ファイルを対数表示にした場合に、縦軸が20桁を超えるような時でも適切に epsファイルを作成できるようにANGELを改良しました。

CAD体系を連続四面体形状に変換してPHITSに組み込む手順をまとめた資料を作成し、utility/CADimportフォルダに格納しました。

中性子輸送に対して [t-point]を使った場合に発生していた 2つのバグを修正しました。 バグの発生条件は、放出角度分布が非等方的なγ線(例えば炭素標的からの 4.4 MeVγ線)をタリーした場合と、熱中性子以外の中性子が非弾性散乱を起こした時に発生する 2次中性子をタリーした場合です。 前者は、該当するγ線の強度を数桁大きく評価していました。 後者は、実効線量の計算のようにエネルギーに関して積分した量をタリーした時はほとんど影響ありません(約 1%)が、エネルギー分布を見ると違いが露わになります。

icxnp=1とした場合に1 GeV以上の n-n及びn-p弾性散乱断面積が正しく計算されない不具合を修正しました。

四面体メッシュ体系のgshowによる体系表示のバグを修正した。

宇宙線線源モードで地表面における1 TeV以上のミューオンの角度分布を改良しました。

電子飛跡構造解析モードで2次電子(オージェ電子含む)のエネルギーサンプリング手法を改良しました。

RT-PHITSに新たな機能として、重粒子線治療の治療計画データ(RT-Plan)を読み込んで線量評価を行う機能を追加しました。 また、独自のGUIを開発し、直感的な操作による容易な設定や、視覚的な照射体系および患者体系の確認、そして線量分布の評価が可能になりました。

PHIG-3Dに2重定義領域と未定義領域を表示する機能を追加しました。

タリーのpartを指定する際に、粒子名の前に負符号を付けて指定することで、全体から指定された粒子の寄与を除いた結果を出力できるようになりました。

OneAPI の Intel Fortran Complier の無償提供が開始されましたので、そのダウンロード方法やそれを使ったPHITSの再コンパイル方法などをまとめた資料 (Install-IntelFortran-OneAPI-en.pdf) を作成してdocument フォルダに格納しました。 また、計算速度の観点などから、今後はPHITSの奨励コンパイラはIntel Fortranのみとし、gfortranはサポート対象外とします。

粒子ウェイトを変化させながらヒストリー毎の情報を引き出すタリー ([t-deposit]with output=deposit,[t-deposit2], と [t-interact]with MorP=Prob) を使った場合のバグを修正しました。 [t-deposit]と[t-deposit2]に関しては、誤差のみに影響を与え、タリー結果そのものは問題ありません。 一方、[t-interact]の場合は、誤差とタリー結果の両方に影響を与えていましたのでご注意ください。

Windows版 OpenMPでdump線源を作成した場合に稀に発生する不具合を修正しました。 この不具合はインテルコンパイラのバグに起因し、計算が途中で止まらない限り、計算結果に影響はありません。

RI線源機能でα崩壊核種に対して part=allとした場合の不具合を修正しました。

四面体メッシュ体系でgshowによる体系描画(2次元および3次元)をする際にエラーが起きるバグを修正しました。

楕円環体及び円環体に対して [transform]を有効としました。

水標的限定ながら、任意物質飛跡構造計算モデル ISTART使用時に分子的励起を考慮できるようになりました。

任意物質飛跡構造計算モデルISTARTにおいて、ラザフォード散乱をトーマスフェルミモデルで計算することで、散乱角度カットオフの指定をなくしました。 従来、散乱角度は[parameters]セクションのパラメータruth min(デフォルトは 0.01 radian)でカットオフしていましたが、軌道電子によるスクリーニングを考慮するため、今後は自動でカットオフされます。

新フォーマットの熱中性子散乱則S(α, β)が読み込めないバグを修正しました。

PHITS3.27 から発生していた [t-yield]のバグ(MPI 版、アイソマー生成計算、並びに axis=chart及びaxis=dchain以外が正しく動作しない問題)を修正しました。

【 phits327 】 2022/03/31

NVIDIA TOOL KIT(旧PGIコンパイラ)に対応しました。 NVIDIA TOOL KITを使ってコンパイルしたい場合は、makefileでENVFLAGS=LinNVIDIAとしてください。 なお、動作確認はNVIDIA TOOL KIT 20.9でのみ行っており、それ以外のversionでは正しく動作しない可能性があることご了承ください。

核データを格納するメモリを静的から動的メモリに変更し、mdasパラメータを増やすことなく巨大な核データを読み込み可能としました。

DCHAIN-PHITSを改良し、核分裂生成収率データを読み込めるようにしました。 また、これに伴い、核分裂生成収率データをdchain-sp/dataフォルダに追加しました。 さらに、最大崩壊連鎖長を調整するパラメータilchainを導入しました。

1 GeV以下の中性子・水素散乱断面積を選択するオプションicxnpを導入し、デフォルトでJENDL/HE-2007に格納された値を使うように変更しました。

任意物質・任意イオンに対して使える汎用飛跡構造解析モードを開発しました。 [track structure]セクションで、mIDを-1にしたセルに適用されます。 純物質やその混合物だけでなく、一部の化合物は[material]セクションでchem=CO2等と指定することで、その化学結合を考慮した計算ができます。

[t-cross]に新たなoutputオプションa-fluxとoa-fluxを追加し、ある面を横断する粒子フラックスの角度分布を出力可能としました。

AnatallyをOpenMP並列計算に対応させました。

[t-yield]及び[t-dchain]を使った場合の計算時間を劇的に短縮しました。 場合によっては、計算時間が1/10程度に短くなる可能性があります。

xsdirで1行あたりに読み込める最大文字数を80文字から130文字に変更しました。

PHITSに格納されている22核種の評価済み高エネルギー核データライブラリーJENDL-4.0/HEを、日本原子力研究開発機構 炉物理標準コード研究グループから正式にリリースされたファイルに差し替えました。 また、6Liと7Liの陽子データを新たに追加しました。

JENDL-4.0/HEのLiに対する陽子核データ読込バグを修正しました。 これにより、加速器中性子源などで用いられるLi(p,n)反応が正しくPHITSで再現できるようになりました。

xyzメッシュの[weight window]を使った場合のバグを修正しました。 空間的なメッシュ幅が大きすぎると(粗すぎると)、幅を十分小さくしたときの結果と比べて粒子フルエンスが大きくなる場合がありました。

ウェイトが1以外の粒子が真空中で発生した場合に[importance]がうまく機能しない不具合を修正しました。

rppなどのマクロボディを回転した際に、面番号の定義順に依存してまれに二重定義領域が発生してしまうバグを修正しました。

PHIG-3Dに関して、transformの回転方向が逆になるなど、いくつかのバグを修正しました。

重陽子及びα粒子に対するACEフォーマット核データライブラリー読み込み機能を作成しました。

ユーザー定義タリーを用いたDNA損傷計算モードで複雑な二重鎖切断(Complex DSB)を計算可能としました。

任意物質向け飛跡構造解析モードを改良し、ラザフォード散乱を考慮できるようにしました。 [track structure]セクションで、mIDを−1にしたセルに適用されます。

SCINFULモードで検出器から突き抜ける陽子の扱いを変更しました。

dumpソースを使った計算がOpenMP版で動作しない不具合を修正しました。

[t-DPA]セクションにおいて、arc-DPAの計算方法及び出力単位を修正しました。

宇宙線線源モードがMPI版で正しく動作しない不具合を修正しました。

中性K中間子がK-long(K0L)またはK-short(K0S)として崩壊するようになりました。

任意物質向け飛跡構造解析モードITSを改良し、ITSART(Ion Track Structure calculation model for Arbitrary Radiation and Targets)に改称しました。 Auger電子生成と、原子脱励起によるX線生成を考慮できるようになりました。 また、100倍程度計算速度を向上しました。 それと、厚いターゲット中で粒子の輸送順序を変えることで、粒子バンクのオーバーフローを防ぎます。 [track structure]セクションで、mIDを-1にしたセルに適用されます。

光核反応に対するACEフォーマット核データライブラリー読み込み機能を作成しました。 また、その上限エネルギーを指定するパラメータdpnmaxを[parameters]セクションに追加しました。

核データライブラリーの有無及びその上限エネルギーをアドレスファイルxsdirから自動で判定する機能を導入しました。 また、デフォルトで利用する核データライブラリーの拡張子を指定するパラメータlib(i)(iは粒子番号)を[parameters]セクションに追加しました。 これにより、[data max]セクションで個々の核種のライブラリー上限エネルギーをユーザーが指定する必要がなくなり、JENDL-4.0/HEなどの高エネルギー核データライブラリーを簡単に利用可能となりました。

高エネルギー核データ利用時にe-mode=1もしくは2とすると、全断面積のみライブラリーから読み込み、2次粒子の情報は核反応モデルを用いて決定する新たな高エネルギー核データ用イベントジェネレータモードを開発しました。

[t-yield]のaxis=chartもしくはdchain及び[t-dchain]において、生成される核種数の上限を指定するパラメータmxnucleiを導入し、そのデフォルト値を3000としました。 従来は、メタステーブルを含む核図表上の全ての核種(136*236*3=96288)の生成を想定していたので、この改良により[t-yield]や[t-dchain]を使った計算のメモリ使用量が大幅に削減されました。

全てのtallyでpartを6個以上指定可能としました。 ただし、tally以外のセクションでは6個が上限ですのでご注意ください。

熱中性子散乱則S(α,β)に関する取り扱い方法を改良し、連続エネルギー熱散乱則ライブラリー(continuous energy thermal scattering library)、複合弾性熱散乱則ライブラリー(mixed elastic thermal scattering library)、及びナノダイアモンドなど微少角中性子散乱(SANS)モデルを含むライブラリーに対応させました。

宇宙線線源モードに低地球軌道(Low Earth Orbit, LEO)モードを追加しました。 また、特定の天頂核に対する大気圏内宇宙線スペクトルを任意の方向に発生させる機能を追加しました。

[transform]セクションに新しいオプションM=±3を追加しました。

icntl=1のときにiMeVperUを有効にしてMeV/n単位での出力を可能としました

[t-sed]でAuger電子によるピークを考慮しないモードを追加しました。

s-type=17(dumpソース)で方向ベクトルに関する情報がなかった場合にdirなどにより方向を指定できるようにしました。

特殊なタリーを除くほぼ全てのタリーに対してanatally機能を追加しました。

コンプトン散乱におけるドップラー効果を考慮可能な物質数の制限を撤廃し、iprofr=1(デフォルト)で動作するようにしました。

[Source]のRI線源機能で、proj=allと設定すると放射性核種が放出可能な放射線 種(α線、β線、γ線)全てが線源となる機能を追加しました。 (ただし、自発核分裂から放出される中性子は含まれませんのでご注意ください。)

[counter]の動作契機としてndataを追加しました。 [t-yield]や[t-dchain]においてndata=2,3とした場合に、この[counter]の設定を加えることで、生成量を2重カウントしないようになります。

[t-yield]でaxis=xyのときに再開始計算やsumtallyが動作しない不具合を修正しました。

座標変換([transform])を数多く使った際に稀に発生するジオメトリエラーを修正しました。

負パイオンが停止したときにnpidk=0(デフォルト)としても吸収反応が起きない不具合を修正しました。

大気圏内の宇宙線線源モードで、ブラックホールモードの中性子と地表面モードのミューオンの角度分布がオリジナルモデル(PARMA)と異なっていたバグを修正しました。

PHITS2.85から発生していた[elastic option]のバグを修正しました。

電子の飛跡構造解析モードを微修正しました。 具体的には、100 keV以上の断面積データを変更したため、高エネルギー領域における電離・励起イベント数が従来と結果が異なりますのでご注意ください。

カットオフエネルギーに近い陽電子が反応してカットオフ以下のエネルギーになった場合に消滅γ線を放出しないバグを修正しました。

【 phits324 】 2021/03/26

ICRU90に示された阻止能を使った計算機能を追加しました。具体的には、水・空気・炭素中における陽子及び炭素イオンの阻止能データベースを整備し、電子に関してはICRU90に対応した密度補正係数の利用の有無を選択できるようにしました。

SCINFUL-QMDに格納された断面積を用いて有機シンチレータの応答関数を正確に計算するSCINFUL-QMDモードを導入しました。

Adjoint modeを導入しました。これにより、広範囲に散らばる線源から小さな領域の光子フルエンスを効率的に計算することができます。

22核種の評価済み高エネルギー核データライブラリJENDL-4.0/HEをPHITSパッケージに格納しました。

長らく整備中だったicntl=1の一部機能(断面積・カーマファクター出力モード)を完成させ、その使い方をマニュアルに追記しました。

サブアクチノイド(原子番号89未満)の原子核が統計崩壊を始めるとき、従来の核分裂モデルに代わってIwamotoの核分裂モデルを使えるようにしました。

ガンマ崩壊モデルEBITEMを改良し、RIPL(Reference Input Parameter Library)-3の核構造データを読むようにしました。従来は2012年頃の古い核構造データを、PHITSのソース内に取り込んで使っていました。

XYZメッシュ空間分布線源(s-type=22)で、各メッシュから等しい数の粒子を発生させ、ウェイトを変化させてその強度を調整するモードを導入しました。

DCHAIN-PHITSで統計誤差を出力できるようにしました。また、[t-dchain]タリーに連続四面体のメッシュ毎にタリー結果を出力するmesh=tetのオプションを追加しました。

系統的不確かさを評価する機能を[t-deposit](output=dose)でも利用できるようにしました。また、1つのインプットファイルに複数のタリーセクションが書かれている場合も利用できるようになりました。他、分析機能用スクリプトファイルautorunのバグを修正しました。

OpenMPメモリ共有型並列計算の計算効率を改善するため、タリー変数の非共有化を選択できるオプションitalshを追加しました。これまではタリー変数はスレッド間で共有することで、必要メモリ領域を少なくする仕様にしていたのですが、メモリ競合を防止する処理がボトルネックとなり、計算速度が低下する場合があるため、タリーの共有/非共有を選択できるようにしました。

新しいパラメータgslineを[parameters]セクションに導入し、各タリーのgslatパラメータを一括コントロールできるようにしました。また、gslatに新たなオプションを追加しました。

[cell]セクション全体を一度バイナリ化して読込を高速化するicellsパラメータを導入しました。

ボクセルデータを使用する計算の出力データ量の抑制と計算時間の短縮のため、入力ファイルのエコー(phits.out)にボクセルデータを出力しないように改良しました。なお、ivoxel=3のオプションを[parameters]セクションで指定すると、今まで通り、入力ファイルのエコーにボクセルデータも出力します。

同一の物質番号を用いて密度が異なる領域を定義した場合に、各cellの物質番号と密度をチェックするための新しいパラメータichkmatを導入しました。

陽子核データライブラリを使った場合に、反応断面積のエネルギー変化を考慮せずにステップ幅を決めていたバグを修正しました。これに伴い、ステップ幅中での最大断面積を与えるエネルギーを指定するパラメータepseudoを導入しました。また、[data max]セクションを使って一部の核種のみに対してライブラリを使うように指定した場合に2次粒子が発生しなくなるバグも修正しました。

他に次のバグ修正を行いました。電子の電磁場中でのバグ(真空中で反応する問題や反射境界が効かない問題)を修正。電磁場マップでz軸方向に掛かった磁場中の挙動を修正。

加速器でのビーム・エミッタンスを定義できるように、位相空間線源(s-type=11)でガウス分布した位相空間からサンプリング可能としました。

磁場マップで磁場を与えたときに電子以外の粒子に対する相対論が考慮できていなかったバグを修正しました。

太陽活動、地磁気、周辺環境の影響を考慮して大気圏内や宇宙空間における宇宙線フラックスを再現する新たな線源モードを追加しました。

1つもしくは複数のタリー結果にusranatal.fで書かれた演算処理を行って新たなタリー結果を出力する機能(ユーザー定義anatally)を追加しました。また、そのサンプルとして、ホウ素中性子捕捉療法(BNCT)及び粒子線治療の生物学的線量を確率論的マイクロドジメトリモデルに従って計算するプログラムを組み込みました。

加速器線源(s-type=11)でエネルギー分布を持つ線源(e-type)を定義可能としました。

断面積出力モード(icntl=1)で光子反応断面積を出力できるようにしました。ipnint=1,2とすることで、光核反応の各成分を出力するように切り替わります。

[material]で定義できる同位体数を92から300に変更しました。

ImportanceやWeight Windowで粒子が1度に10個以上に分割された際にwarningを出すようにしました。

[t-dpa]セクションにおいて、欠陥性成功率の補正を考慮したarc-dpa(idpa=1)を出力できるようにしました。

xyzメッシュにおける物質の最大値を10から100に増加し、新規の入力パラメータを導入するなどの改良をDCHAIN-PHITSに行いました。

OpenMPメモリ共有型並列計算の計算効率を改善するため、スレッドプライベート変数の削減等のコード改良を実施しました。入力ファイルに依って効果は異なりますが、OpenMP実行時のオーバーヘッドが削減され、OpenMPの並列性能が向上しました。

体系のLattice構造データのメモリ領域を動的確保するように改良しました。これにより、大容量のボクセルデータを使用する計算ではメモリ領域の拡張に伴うPHITSの再コンパイルが不要になりました。

データリスト型(typ=-1 & -2)かつメッシュ幅が均等でない磁場マップ・電磁場マップを使用した際、電場・磁場の強さが正しく考慮できないバグを修正しました。

[t-dchain]のxyzメッシュ機能を使ったPHITS → DCHAIN-PHITS → PHITS接続計算による誘導放射能被ばく線量計算を可能としました。

あるヒストリー中に発生する全粒子のカウンター値の最大値を使ってタリーに制限を掛けるヒストリーカウンター機能を[t-track]と[t-deposit]に導入しました。この機能を使えば、特定のイベントが発生した場合に線源発生まで遡ってタリーすることが可能となります。

各バッチの計算結果を独立に集計して出力する機能(itall=4)を[t-track]と[t-deposit]に導入し、バッチ毎に発生させる線源をコントロールする機能([source]のibatchパラメータ)を導入しました。これらの機能を組み合わせれば、一度のPHITS実行で独立した複数の線源によるタリー結果を得ることができ、線源条件のみを変更して多数の計算が必要な場合にその計算時間を短縮することが可能となります。

エラーIDの代わりに、エラーが発生したソースコードのファイル名・サブルーチン名・行番号を出力する機能を導入しました。この機能は、[parameters]でierrout=1とすることにより有効となります。

multiplierサブセクションでパラメータや数式を使えるようにしました。ただし、括弧を使った数式は利用できません。

ユーザー定義anatallyのサンプルとして、線量平均LETを計算するモードと、標的核医学治療の生物学的線量を計算するモードを追加しました。

JENDL Deuteron Reaction Data File 2020 (JENDL/DEU-2020)の[frag data]ファイルを追加しました。このデータファイルを使用することにより、Li6,7, Be9, C12,13標的における重陽子入射反応の放出粒子を精度良く模擬できるようになります。

ICOM2PHITSを大幅に改良し、PET-CTデータなどの読込も可能としたRadioTherapy package based on PHITS (RT-PHITS)を開発しました。

PHITSの入力ファイルを読み込んで3次元体系を可視化するソフトウェアPHIG-3Dを開発しました。PHIG-3Dの著作権は海上技術安全研究所が有しますが、日本原子力研究開発機構には使用、改造および第三者への再ライセンスが許諾されています。

宇宙線線源モード、[frag data]、電子磁場などで発生していたいくつかのバグを修正しました。ただし、Linux・OpenMP版でdump線源データを読み込む機能に関しては、まだ不具合が修正されていませんので、ご注意ください。

【 phits320 】 2020/04/06

陽子(E<300 MeV)及び炭素イオン(E<10 MeV/n)に対する飛跡構造解析コードKURBUC3を導入しました。

光子によるミューオン対の生成を考慮できるようにしました。[parameters]セクションで igmuppd=1と指定することにより本機能は動作します。

特定の領域における核反応生成粒子の統計精度を向上させるため [Repeated Collisions]セクションを導入しました。

[t-cross]に、a-type meshの角度基準を決めるラメータiangformを新規追加しました。従来の角度基準である通過した面の法線ベクトル(iangform=0)に加え、x軸(iangform=1)、y軸(iangform=2)、z軸(iangform=3)が選択できます。

[frag data]に微分断面積を群データではなく点データで与える機能を追加しました。opt=5で利用できます。

物質の阻止能をユーザーが与えるデータベースから直接読み込む機能を開発しました。また、そのサンプルデータとして、様々な物質に対する陽子及び α 粒子の阻止能をPSTAR及びASTARで計算した結果を"/data/dedx"フォルダに格納しました。

電場マップ読み込み機能を追加しました。

Xorshift64 方式に基づく新しい擬似乱数生成法を導入し、初期設定として利用するようにしました。この改良により、乱数周期が246から264−1に大幅に延長されます。

ボクセルやテトラによる複雑形状を gshowできれいに描けるように修正しました。

DCHAIN-PHITS 用の新たな中性子放射化断面積ライブラリをいくつか追加し、それらを組み合わせたライブラリを初期設定で使用するようにしました。また、初期設定でitdecs及びitdecnパラメータを1として、核反応によるターゲット減少分を考慮できるようにしました。

ATIMAに入力するエネルギー単位が原子質量単位あたりのMeV/uではなく核子あたりのMeV/nだった不具合を修正しました。この修正により、荷電粒子の飛程が多少(最大で1%程度)変化しますのでご注意ください。また、PHITS の入力ファイルで指定するエネルギーはMeVもしくはMeV/nですので、マニュアルやInput echoのMeV/uと記載していた個所は、全てMeV/nに修正しました。

Maxwellian分布を持つ線源(e-type=3,7)のエネルギーのベキを指定できるようにし、その初期値を0.5としました。従来は1.0に固定されていましたが、正しいMaxwellian分布を再現できていませんでしたので、ご注意ください。

分散分析に基づいてPHITSの計算結果における系統的不確かさを評価する機能を追加しました。また、自動的にPHITSの輸送計算を実行して分散分析の結果を得られるようにするために、分析機能用スクリプトファイルとして、autorunを一新しました。

PHITS-FLUENTの接続計算についての資料を作成しました。"/phits/utility/usrtally/FLUENT"フォルダをご確認ください。

【 phits317 】 2019/10/31

四面体体系を使った輸送計算をMPI 並列で実行しようとするとエラーが起きて終了するバグを修正しました。このバグはPHITS ver.3.10 のみに存在するバグです。

磁場マップ読込機能で,r-zグリッド型(type=-2,-4)の読込の際に正しく磁場が読み込まれない場合があり,これを修正しました。

RI線源機能で,陽電子を放出する核種で陽電子と光子放出を両方考慮した場合,消滅γ線が2重カウントされてしまうことが分かりました。これを回避するために,新しいパラメータとしてiannihを導入し,光子線源では消滅γ線を考慮しないオプションを作成しました。

[source] セクションでマルチソース毎に異なるカウンター値を設定できるようにしました。また,定義可能なマルチソースの数を200から500に拡張しました。

陽子,パイオン,ミューオン,イオンに対するカットオフエネルギーの初期値を1 MeV/uから1 keV/uに引き下げました。

[surface]セクションで定義した特定の面上から線源を発生させる新たな線源タイプ(s-type=26)を導入しました。

Tallyの評価値及び統計誤差の推移をバッチ毎に表示する機能(itall=3)を導入しました。ただし,この機能は現在のところ[t-track]と[t-point]のみ動作します。

stdcutで定義した統計目標に達したタリーを順次,計算から除外するパラメータistdcutを導入しました。[t-point]や[t-sed]など,タリー計算そのものに時間が掛かる場合に有用となります。また,計算開始直後に統計誤差がばらつくことがあるため,指定したバッチまではstdcut による打ち切り機能を無効にするパラメータistdbatを導入しました。

阻止能計算にATIMAを採用した場合,水(H2O)に対するIonization Potentialは初期値として75 eVが選択されるように設定されているのですが,従来は,この設定が水素の同位体1Hを明示的に指定した場合にのみ有効で,質量数を定義せずに水素元素Hを指定した場合には無効(69 eVが選択される)となっていました。そこで,H 2 O 1 やH -0.1111 O -0.8889 のように質量数を指定しなくても水素と酸素の元素比が約2:1で構成される物質は水と認識するよう判定基準を修正しました。この修正により,version 3.13以降,質量数を指定せずに定義した水中での荷電粒子の飛跡長が微妙(ほとんどの場合は1%未満)に長くなりますのでご注意下さい。また,水のIonization Potential を自由に設定できるパラメータih2oに関する判定基準も同様に修正しました。

MPI並列versionで統計誤差打ち切り機能(stdcut)が動作しないバグ,Universe構造に反射面が存在した場合に正しく考慮されないバグ,EGSを使った場合に希に前のヒストリーの影響を受けてしまうバグなど,いくつかバグを修正しました。

DCHAIN-SPを改良し,DCHAIN-PHITSとしました。主な改良点は,中性子放射化断面積ライブラリ及び崩壊データライブラリを最新のデータに基づいて整備した点と,PHITSの統計誤差の伝播を考慮した誘導放射能計算を可能とした点です。これに伴い[t-dchain]にライブラリや誤差計算の有無を選択する新たなパラメータが加わりました。

飛跡構造解析モードとユーザー定義タリーを組み合わせたDNA損傷計算機能を開発しました。

PHITSバージョン3.13固有のバグ([t-interact]の一部機能が動作しない,電子飛跡構造解析モードで2次電子が生成されない問題)を修正しました。

EGS5と[t-deposit]を使用した場合に、エネルギーカットオフの成分を過大評価するバグを修正しました。このバグはバージョン3.13と3.14で発生していました。また、バージョン3.10以降で発生していたEGS5とlattice構造を組み合わせて使用した場合のバグも修正しました。

itall=3により利用できるタリーの評価値及び統計誤差の推移をバッチ毎に表示する機能が、入力条件により動作しないバグを修正しました。このバグはバージョン3.13と3.14で発生していました。

sangelに関するバグを修正しました。

バージョン3.15で発生していた[t-track]で_errのファイルが作成されないバグを修正しました。

連続四面体形式でタリー結果を出力する際,csv形式(コンマ区切り)で出力する機能(foamout=2)を追加しました。

EGS5で[t-deposit]を使った場合に初期化されていない変数があり,場合によっては結果が極端に変になるバグを修正しました。

各タリーのsum overの計算方法を修正しました。

nedisp=1としたときのカットオフ粒子の扱いを修正しました。

"usrdfn2.f" で計算する生物学的線量のパラメータがT.Sato et al. Radiat. Prot. Dosim. 143, 491-496 (2010)に基づいていましたが,T.Sato et al. Radiat. Res. 171, 107-117 (2009)に基づくように修正しました。

【 phits310 】 2019/03/19

連続四面体から線源粒子を発生させる機能を追加しました。s-type=24とすることにより利用できます。

[weight window]及び[t-wwg]においてxyzメッシュ形状が選択できるようになりました。

[multiplier]においてpartを指定できるようにし、粒子別の係数を定義できるようにしました。 また、この機能を応用して、様々な種類の被ばく線量をあらかじめデータベース化した換算係数を用いて計算できるようにしました。

[t-deposit]でoutput=depositとし、dresolを設定した場合にpart=all以外の結果が適切に計算されないバグを修正しました。

iMeVperu=1とした場合に、[t-track]等で荷電粒子のレンジ計算が適切に行われないバグを修正しました。

[t-star]でヒストリ毎の反応頻度分布を出力可能としました。 また、飛跡構造解析モードで起きた反応数も計算可能としました。 さらに、反応数(interaction)を計算するタリーであることが直感的に分かるように、タリー名を[t-interact]に変更しました。

従来[t-heat]でしか行えなかったカーマ近似による付与エネルギー計算機能を[t-deposit]にも追加しました。 その際、カーマ近似の使用の有無は、イベントジェネレータモードやEGS5モードの使用状況から自動的に判断します。 この改良により、付与エネルギー計算は全て[t-deposit]で行えるようになりました。

1ヒストリー内でエネルギー付与する粒子のウエイトが同じ場合に、[t-deposit]のoutput=depositで正しく計算できるようになりました。 この改良により、s-type=9かつdir=-allとした場合の線源や非荷電粒子に[forced collisions]を用いた際の付与エネルギー分布が適切に評価できるようになります。

[t-cross]においてaxis=zとした場合に、出力されるグラフの形式を折れ線グラフとしました。

[t-cross]でz-type=1とした場合に、nz=0とすることで、タリー面を1面だけ設定できるようにしました。

[t-interact]において、電子と陽電子によるknock on electron生成の成分をoutput=deltarayから切り分け、output=knockelecで出力するように変更しました。 また、同成分を[counter]におけるdeltから切り分け、knoeでカウントするように変更しました。

RI線源機能を使用してAuger電子を発生させる場合に、RIsource.ackにデータがないRI 核種については、RIsource.radのデータを利用するように改良しました。

iMeVperu=1とした場合に、[t-product]でエネルギーが正しく計算されないバグを修正しました。

igammaパラメータを負値にすることにより、励起核の運動によるドップラー効果を無視し、放出される特性ガンマ線スペクトルが単色ピークとなる機能を追加しました。

核子とガンマ線放出の競合を考慮できる統計崩壊モデルGEM Ver.2を導入しました。 [parameters]においてngem=2と指定することにより利用できます。

[transform]で、z,y,x軸周りの回転を簡易に定義できる形式を導入しました。

Windows PCにおいて、MPIプロトコルを用いたメモリ分散型並列計算が可能となりました。

[weight window]のxyzメッシュをEGS5 を使用した場合でも指定できるように改良しました。

半導体ソフトエラー発生率を計算するための換算係数を[multiplier]のデフォルトデータとして追加しました。

[t-yield]及び[t-dchain]でユーザーが独自に指定する放射化断面積を読み込む機能を追加しました。

RI線源機能で,特性X線と内部転換電子を考慮可能としました。

CADから変換されたデータを使用するため,連続四面体形状で境界面が一致しないデータでも使用可能としました。

ユーザー定義ソース("usrsors.f") 内で,インプットファイルで指定したパラメータ(c1-c99)を使えるようにしました。

ANGELで結果を描画する際,数値データのチェックを行わずに高速で描画するモードをデフォルトとしました。

円柱分布線源(s-type=1)でr0=r1とすると,線源位置が0 からr1の範囲でサンプリングされてしまう不具合など,いくつかのバグを修正しました。

熱流体解析コード(ANSYS Fluentなど)との連成計算を可能としました。 この目的のため,PHITSに読み込める連続四面体形状の形式にNASTRANのバルクデータ形式を追加しました。 この形式を利用することで、熱流体解析コード等で用意した連続四面体形状をPHITSでも共通して使用することができます。 また、新たに連続四面体のメッシュ毎にタリー結果を出力するmesh=tetオプションを[t-track], [t-deposit], [t-yield], [t-product], [t-dpa]に導入しました。 その際,OpenFoamのフィールドデータ形式で出力する機能も追加し,PHITSの計算結果を熱流体解析コードなどで直接読み込めるようにしました。

上記目的の一部として[t-deposit]にunit=5を追加し,J/m3/source単位での出力機能を追加しました。

高エネルギー核データライブラリJENDL-4.0/HEを正しく読み込めるよう改良し,いくつかのサンプルをPHITSパッケージに入れました。

xyzもしくはr-zグリッド形式で表現される複雑な磁場構造を考慮可能としました。

[t-dchain]でmesh=xyzが指定可能となりました。 これに伴い,DCHAIN-SPも仕様が変更されていますので,ご注意ください。 なお,DCHAIN-SPで計算した残留放射能の空間分布を可視化する機能や,その結果を線源としてPHITSに取り込む機能は,まだ完成しておりません。

一部のエラーや警告メッセージにID番号を付け,その原因や対応方法の一覧表を作成しました。 ただし,全てのメッセージにはまだ対応できておらず,今後,徐々に完成させていく予定です。

e, μ, τニュートリノとその反粒子入射による反応のモデルを、入射エネルギー150MeVまで組み込みました。 ただし,標的は軌道電子, 1H, 2Hのみ可能で、2Hより重い原子核との相互作用は未実装です。

九州大学で開発中の核反応モデルINC-ELFを改良し,標的核の集団励起による散乱や、高精度な荷電粒子放出バリア計算が可能としました。

電子飛跡構造解析モードでAuger電子の生成を考慮することにより,その計算精度を向上させました。

[T-deposit]でdresolやdfanoだけでは表せない分解能を再現するために、ユーザー定義検出器分解能機能を使えるようにしました。 その関数は"usresol.f"で定義でき、サンプルとしてCdZnTeの非対称ピークを再現するためにSCK-CEN のMeleshenkovskii 氏らが開発したモデルがデフォルトで組み込まれています。

極めて細かい構造を持つジオメトリ(ボクセルファントムや連続四面体形状など)を[t-gshow]やgshowできれいに描画するため,ピクセル状に幾何形状を出力する新たなオプション(gshow=5)を追加しました。

圧縮形式のLattice構造データに対応しました。 同じ物質が連続して並んでいる場合,その個数を負の値で指定することによりファイルサイズが大幅に縮小され,読込時間を短縮することができます。

負ミューオン捕獲反応の調整オプションを導入しました。

[t-deposit]で付与エネルギーに重み付けする3つ目の関数を導入しました。 その関数は"usrdfn3.f"で定義でき,サンプルとして医学物理計算で重要となる水等価線量を評価するモデルがデフォルトで組み込まれています。

"batch.out"の仕様を変更し,PHITS実行中に残りバッチ数を調整可能としました。

[t-cross]でmesh=xyzもしくはr-zの場合,メッシュで区切られた閉曲面を1つの横断面として設定することにより,各メッシュ内に流入もしくは流出する粒子数(もしくはフラックス)を計算可能としました。

[t-deposit]でoutput=depositとして付与エネルギー確率分布を計算する場合に,異なるLattice座標内にある同一セル番号への付与エネルギーを別個に扱う機能を導入しました。

最新版ENDFなどγ線スペクトルデータが1000以上ある核データライブラリの読込を可能としました。

ifixchgパラメータを導入し,ATIMAで電荷を指定して阻止能を計算可能としました。 ただし,電荷交換反応は未実装のため,現在のところ,極めて薄いターゲット以外は物理的に正しい阻止能が計算できませんのでご注意ください。

emin(12)を指定してemin(13)を指定しなかった場合の陽電子挙動の不具合を修正しました。 Lattice構造中で電子に対して電磁場が効かない問題を修正しました。

【 phits302 】 2017/12/05

ユーザー定義タリー[t-userdefined] で指定できる新しいパラメータnudtvar とudtvar(i) を追加しました。

任意のANGEL パラメータを指定できるsangel パラメータを追加しました。

PHITS2.95以降に発生していた荷電粒子を輸送する際の角度分散(nspred=2)に関するバグを修正しました。

ANGELによる2次元プロットの描画と連続四面体データの読み込みルーチンの高速化しました。

【 phits300 】 2017/10/05

[material]において、デフォルト設定ではcをコメント文字として使用できないようにしました。 炭素の元素記号Cがコメント文字として抜け落ちてしまう間違いを避けるためです。 コメント文字として使用したい場合は、[parameters]においてicommat=1としてください。

[t-deposit]において、複数領域におけるdeposit energyの総和を求める際に、条件に応じて重み付けを行う機能を追加しました。 本機能は、特定領域へのdeposit energyに応じて電荷収集効率が変化するような、半導体ソフトエラー解析などに利用できます。

axis=engとして求めたタリーの結果を[source]のエネルギー分布として設定できる機能を追加しました。 e-type=20と指定することで利用できます。

[t-deposit]でユーザー定義関数2(usrdfn2.f)を使った場合に,Microdosimetric Kinetic Modelに基づいて生物学的線量を導出するように変更しました。 パラメータなどの詳細はこちらの文献をご覧ください。

電子・陽電子の電磁場中での挙動解析が可能となりました。

Version 2.77から導入した角度分散の大きさを考慮するパラメータascat2のデフォルト値を,文献と一致するよう0.088から0.038に修正しました。 nspred=2としてascat2をデフォルト値で計算していた方は,結果が変わりますのでご注意ください。

xyzメッシュ空間分布線源発生機能を加えました。 この機能を用いれば,空間的に複雑に分布した線源を表現することができます。

指定した領域の体積をモンテカルロ積分法で自動計算するタリー[t-volume]を加えました。

バッチ終了時にCPU時間をチェックし,計算開始からの合計CPU時間があらかじめ設定した値(timeout)を超えた場合に計算を打ち切る機能を加えました。

バッチ終了時に各タリー結果の統計誤差をチェックし,その値が各タリーに対してあらかじめ設定した値(stdcut)以下になった場合は計算を打ち切る機能を加えました。

[t-product], [t-star], [counter]で核反応と原子反応を区別するようにしました。 また,より詳細なチャンネル毎(例えば制動放射放出など)の情報も出力可能としました。

JENDLに格納されていない元素(例えばレニウムなど)に対しても,電子・陽電子・光子のみの輸送であれば計算可能としました。

タリー結果を図示した際に、その値の統計的不定性を誤差棒により表示する機能を追加しました。 各タリーセクションにおいて、epsout=2とすることで動作します。

EGS5を使用した状態で、[t-cross]により電子や陽電子をタリーした場合にこれらの粒子のエネルギーが増加するバグを修正しました。 また、[t-track]や[t-cross]を用いて真空中の電子フラックスを計算する場合に,本来とは異なるエネルギービンにスコアされてしまう不具合を修正しました。

[t-dchain]におけるデフォルト設定をoutput=cutoffに変更し、指定した領域で止まった粒子をタリーするようにしました。 従来のoutput=productでは、薄膜等で核反応により発生した重イオンがその領域に止まっていなくてもタリーされていたのでご注意ください。

インストールフォルダを指定するfile(1)パラメータを導入することにより,核データライブラリファイル名(xsdir.jnd)など各入力ファイル名を 指定する必要がなくなりました。 ただし,各ファイル名を直接指定した場合はそちらが優先されるので,基本的には従来インプットに変更の必要はありません。

核データを自動で設定するパラメータnucdataを導入することにより,eminやdmaxを指定することなく核データを利用可能としました。 ただし,eminやdmaxを直接指定した場合はそちらが優先されるので,基本的には従来インプットに変更の必要はありません。 また,そのデフォルト値を1とすることにより,初期設定で中性子の挙動が正しく模擬できるようになりました。

negsパラメータに新たなオプション(-1)を導入し,negs = -1とした場合は,従来PHITSアルゴリズムを用いて光子のみ輸送する設定に自動調 整するようにしました。 これに伴って,従来はeminやdmaxとnegsパラメータを組み合わせて光子・電子・陽電子の輸送を調整していましたが,今後は,遮蔽計算などで光子のみ輸送する場合はnegs=-1(デフォルト),医学物理計算などで電子・陽電子の輸送も必要な場合はnegs=1と設定すれば,それ以外の調整は不要となります。 ただし,eminやdmaxを直接指定した場合はそちらが優先されるので,基本的には従来インプットに変更の必要はありません。

idesパラメータのデフォルト値を1に変更し,初期設定で従来PHITSアルゴリズムを使って光子輸送を行う場合は,電子・陽電子は発生しないようにしました。 電子・陽電子を輸送する際は,EGS5モードをお使いください。

igammaパラメータの初期設定値を2に変更し,初期設定で核反応の脱励起から生じる光子を考慮するようにしました。

RI線源機能にβ線(オージェ電子含む)及びα線放出機能を追加しました。

低エネルギー電子・陽電子が引き起こす電離・励起・振動などの個々のイベントを正確に模擬する飛跡構造解析モードを追加しました

δ線放出に伴う荷電粒子の阻止能変化を,実際に放出されたδ線エネルギーの積分値ではなく制限付阻止能から自動で調整する機能(irlet=1)を加え,そちらをデフォルトとしました。

相対論効果を考慮できるように3GeV/u以上の重イオンに対する核反応シミュレーターJAMQMDを改良し,高エネルギー重イオン核反応の再現性を向上しました。

[t-dpa]を改良し,電子・陽電子・パイオンなどによるDPAを計算可能としました。

自発核分裂からの中性子線源(ispfs)で規格化が間違っていたバグを修正しました。

[source]セクションにおいて、エネルギー分布の有無でs-typeを変える仕様を変更しました。 線源が単色かエネルギー分布をもつかは、e0とe-typeのどちらが定義されているかによって判断します。 ただし、両方が定義されている場合は、従来のs-typeによる指定が優先されますので、ご注意ください。

新しいセクション[ww bias]と新しいタリー[t-wwbg]を導入し,特定の方向に粒子を多く誘導するよう[weight window]にバイアスをかけて シミュレーションすることが可能となりました。

itall=0(初期設定値)の場合でも,各バッチ終了時にタリー結果の数値データを出力するように変更しました。 この変更により,itall=1と0の違いは,EPSファイルの出力の有無のみになります。

icntlに依存して不要となるタリーは自動的にoffにするようにしました。 例えば,icntl=14の場合は[t-volume]以外のタリーは全てoffになり,逆にicntl≠14の場合は[t-volume]はoffになります。 また,offされたセクション内にsetやinflコマンドがある場合は,warningを出力するようにしました。

空間分布や時間分布を出力する際,軸の単位を調整するANGELパラメータを導入しました。 極めて小さい領域や大きい領域の結果を可視化したい場合に有効となります。

[parameters]セクションが2つ以上定義されている場合にエラーを出力するようにしました。

タリー出力において、原子核のエネルギーの単位をMeVからMeV/u(核子あたりのMeV)に変換するパラメータiMeVperuを導入しました。 [parameters]においてiMeVperu=1とすると、設定した全てのタリー結果が自動的にMeV/uの単位の量に変換されます。

[t-cross]でmesh=regとした場合のパラメータとして、r-from, r-toを導入しました。 これらはそれぞれr-in, r-outと同様の役割を果たします。

従来U(Z=92)までしか使用できなかった、阻止能計算モデルのオプションndedx=3の標的元素に関する適用範囲をBk(Z=97)まで拡張しました。

PHITSのインプットファイルにおいて、最初のセクションの前に$OMP=N(Nは使用するCPUコア数)を加えることで、メモリ共有型の並列計算(OpenMP)を実行できるようにしました。 また、infl:コマンドを使う場合に、インプットファイルの最初にfile=(インプットファイル名)を書く必要がなくなりました。 他、MacOSにおいて、Dockによるドラッグ&ドロップを用いた場合、ターミナルを立ち上げてPHITSを実行するようにしました。 ただし、Linuxなどで実行ファイルをコマンドラインで実行する場合は、これらの機能は使用できませんのでご注意ください。

原子核-原子核の反応モデルJQMDとJAMQMDの切り替えエネルギーejamqmdのデフォルト値を3GeVに変更しました。

原子核・原子核間の反応断面積モデルのデフォルトをKurotamaモデルに変更しました。

[t-dchain]によってDCHAIN-SPのインプットを作成する際に天然同位体比による展開を考慮できるよう改良しました。

【 phits288 】 2016/09/30
平均寿命886.7 秒で中性子が陽子,電子,反電子ニュートリノに崩壊する反応を考慮できるようにしました

EGS5 を用いて付与エネルギーを計算する場合に,ドップラー効果によるエネルギーの微妙なゆらぎを光子によるエネルギー付与とカウントしてしまうバグを修正しました。また,EGS5 を使って高エネルギー光子(約10MeV 以上)を輸送する際,ジオメトリを細かく区切ると光子の飛程が長くなってしまうバグを修正しました。

飛跡を計算する最小&最大エネルギーを指定するパラメータesmin とesmax の単位をMeV からMeV/uに変更しました。

標的中に1H が存在する際,負ミューオンが全て1H に捕獲されてしまうバグを修正しました。

阻止能計算モデルATIMA のアルゴリズムを改良し、高速化しました。この改良により、精度の高いATIMA を用いたPHITS シミュレーションが、SPAR を用いた場合とほぼ同程度の計算時間で実行できるようになりました。この改良により,デフォルトの阻止能計算モデルをSPARからATIMAに変更しました(ndedxパラメータの初期設定値を変更)。

3GeV/u 以上の重イオン核反応で使われるJAMQMD モデルを改良し,宇宙線輸送計算などの精度及び安定性を高めました。

1 つのインプットファイルで複数のsumtally サブセクションを定義できるようにしました。また,sumtallyに関するいくつかのバグを修正しました

パイオンの全反応断面積を改訂し、それをデフォルトで使用するようにしました。従来の幾何学的な断面積と比べて、入射エネルギー依存性を考慮しており、デルタ共鳴によるピーク構造を再現できるようになりました。

重陽子の全反応断面積を精度良く記述する新規の模型を導入しました。[parameters] セクションにおいてicrdm=1 とすることで利用できます。詳細はこちらの文献をご覧ください。

ミューオン核反応モデルを改良しました。詳しくは,こちらの文献 をご参照下さい。

マテリアルの核種ごとに核データライブラリー利用の上限エネルギーを設定できる[data max] セクションを追加しました。

[material] セクションで質量数を定義せずに元素を指定した際,天然同位体元素比に従って自動で各同位体に展開する機能を作成しました。ただし,JENDL-4.0 に含まれない核種に対しては展開されませんのでご注意下さい。

RI 線源発生機能を追加しました。この機能を使えば,放射性核種とその放射能を指定することにより,放射性核種の崩壊に伴って放出される粒子の線スペクトルを自動的に定義することができます。ただし、崩壊ガンマ線のみ扱えます。崩壊ガンマ線の線スペクトル計算には,放射性核種崩壊データベースDECDC (ICRP107と同等)を使用します。

現在のバッチ情報を出力するファイルの名前をbatch.now からbatch.out に変更し、[parameters] セクションにおいてfile(22) により指定できるようにしました。

3 次元可視化ソフトウェアParaView用の出力機能を作成しました。

新しいタリー[t-wwg] を導入しました。このタリーを使えば,Weight Window 機能が効果的に動作するパラメータ設定を自動で得ることができます。

[t-3dshow] でxyz 軸を出力可能としました。

ユーザー指定断面積の読み込み機能を拡張し、データが与えられていないエネルギー・角度領域に外挿を行って補間するオプションと微分断面積を与えない場合に核反応モデルにより核反応イベントを計算するオプションを追加しました。

【 phits282 】 2015/12/24
EGS5モードに関する次の改良を行い,本モードを使用した際に発生する幾つかのバグを修正しました。

  • ipegsパラメータを導入し,PEGS5のみ実行したり,PEGS5は実行せずにPHITSのみ実行したりすることを可能としました。
  • imsegsパラメータを導入し,物質が変わるたびに多重散乱を詳細に模擬するようにしました。
  • EGS5モードを使用したときに使える物質制限をなくしました。ただし,数100以上の物質を定義した場合は,メモリ不足により計算が実行できない場合があります。また,EGS5の仕様により,1つの物質に含まれる元素数の最大値は20となります。
  • 炭素からアルミまでの質量数に関するデータを修正しました。
荷電粒子のエネルギー分散計算方法を修正しました。この改良により,陽子や重イオンによるブラッグピーク付近の吸収線量がより精度よく再現可能となりました。

飛程に関するパラメータdeltc, deltmを物質の密度で割ることにより,気体中の計算時間を短縮しました。

ミューオンによる制動放射及び対生成を再現できるようにしました。また,ミューオン捕獲反応を記述するモデルを追加しました。

核共鳴散乱(NRF)計算機能を組み込みました。これにより,数MeV程度の光子照射による原子核の励起や核異性体の生成が再現できるようになりました。また,入射光子の偏光効果を考慮可能としました。

pnimulパラメータを導入し,光核反応を優先して引き起こす機能を追加しました。

[parameters]セクションに,中性子増倍効果を制御するパラメータを追加しました。この機能により,臨界解析コード等により別途評価した同体系における中性子増倍効率を加味した中性子線源を用いて,実質的な中性子透過問題の評価が行えるようになりました。

重陽子やアルファ粒子などの軽イオンが標的となる核反応を、逆運動学によって計算するようにしました。すなわち、これらの反応が起こった際、重イオンが入射粒子の場合でも、デフォルトの設定ではINCLが核反応モデルとして使用されます。

ミューオン核反応,光核反応,JQMD-2.0に関する軽微なバグを修正しました。

[source]セクションに,自発核分裂からの中性子線源を模擬するオプションと三角柱内に分布する線源を表現するオプションを加えました。また,任意の時間分布を指定可能としました。

Dump線源を使った繋ぎ計算時の統計誤差計算方法を改良しました。

連続四面体形状(ポリゴンの一種)の読み込み機能を組み込みました。本改良は,韓国Hanyang大学のHUREL研究所の協力の下,実施しました。

ユーザー指定断面積の読み込み機能を追加しました。

[counter]セクションに,核分裂のオプションを加えました。これにより,核分裂を経由して生成する粒子、特に核分裂の世代(回数)毎の情報を選択的にタリーすることが可能となりました。

ある点やリング状の線分上における中性子・光子フルエンスを効率的に計算するポイントタリーを導入しました。

[t-track]タリーでmesh = r-zの場合に,円面の角度に関するメッシュも定義可能としました。この機能により,扇形柱体における粒子フルエンスをタリーすることが可能となりました。

[t-deposit]タリーでoutput=depositとしてpartを指定した場合,各粒子の寄与を正しく計算できるようにしました。

[t-yield]タリーに,弾性散乱により反跳された標的核情報を出力するオプションを加えました。

[t-dpa]を使った再開始計算を可能としました。

[t-star]タリーに,標的核が核変換を起こした場合のstar densityを出力するオプションを加えました。

[t-dchain]で指定できる領域の最大数を100から500に拡張しました。また,[t-dchain]で継続行を正しく認識するようにしました。

Sum tally機能を拡張し,[t-dchain]以外の全てのタリーに対応しました。

[t-heat]においてmesh=r-zとした場合に起こるバグを修正しました。

[t-deposit]にてmesh=reg,output=depositで計算した際,デルタ線を生成した粒子のエネルギー付与量計算の誤りを修正しました。

[t-yield]の誤差計算方法のバグを修正しました。

makefileで依存関係を正しく記述するようにしました。この改良により,"make -j"オプションが使えるようになり,コンパイルが速くなりました。

utilityフォルダに,連続四面体(TetraGEOM), ポイントタリー(tpoint),ユーザー定義タリー(usrtally)の使用方法の解説を加えました。

【 phits276 】 2015/03/05
電子・陽電子・光子の輸送にEGS5のアルゴリズムが利用可能となりました。

Windows版のOpenMP用実行ファイルを64ビット対応にしました。今後,32bitのWindowsではシングル版しか動作しませんのでご注意ください。

ミューオンが仮想光子を介して引き起こす核反応モデルを組み込みました。また、負ミューオンが物質内で止まったときに起こるミューオン捕獲反応を考慮できるようになり、この反応で生成されるミューオニックアトムからの特性X 線の放出、及びその後に起こる核吸収反応も再現できるようになりました。

nspred = 2 として荷電粒子の角度分散を考慮する際、その分散の大きさを調整するパラメータを導入しました。

PHITS パッケージに含まれるDCHAIN-SP のバージョンをDCHAIN-SP2001 からDCHAIN-SP2014に変更しました。

複数のタリー結果を足し合わせる新しい機能“sum タリー” を追加しました(phits282以降では、[t-dchain]を除いた全てのタリーで有効となりました).

Kurotama モデルで、5GeV/n 以上の断面積を出力できるようにしました。

γ 脱励起に関するデータベースtrxcrd.dat をソースファイルに組み込みました。この改良により、e-mode=1 やigamma=1 のときにfile(14) を指定する必要がなくなりました。

光核反応によるπ生成や非共鳴領域の光核反応モデルを組み込むことにより、100GeV までの光核反応を再現可能としました。

核データライブラリに格納された荷電粒子放出断面積((n, p), (n, α) など)を読み込むようにイベントジェネレータモードver.2 を改良しました。この改良により、20MeV 以下の中性子核反応から放出される荷電粒子スペクトルが精度よく計算できるようになりました。

重イオン核反応モデルJQMD に相対論効果や初期状態安定アルゴリズムを組み込んだR-JQMD モデルを開発しました。

[t-deposit] でoutput=deposit としてイベント毎の付与エネルギーを計算する際、実測を再現するように意図的にエネルギー分解能を持たせる機能を追加しました。

領域エラーチェック機能を追加しました。ジオメトリを2 次元表示するタリーで自動的に実行され、2重定義や未定義の領域がある場合にその領域に色を付けて出力します。

s-type=18,19 とすることで、円錐形状の線源領域を指定できるようになりました。

PHITSで使えるメモリの上限を増やしました。この変更によりICRP ファントムなど詳細な人体ボクセルファントムが再コンパイルなしで扱えるようになりました。

DWBA(歪曲波ボルン近似)計算で求めた離散スペクトルを考慮する機能を追加しました。特定の標的原子核における陽子、重陽子入射反応を対象として、放出中性子や陽子のエネルギースペクトルに、DWBA によって計算した離散スペクトルを加えます。

[t-deposit] タリーを改良し、Gy の単位でdose 結果を出力できるようにしました。

【 phits264 】 2013/11/20
[t-heat] を使って以下の核種に対する中性子からの付与エネルギーを計算した場合に、結果がNaN となってしまうバグがありましたので、核データライブラリを修正しました。なお,カーマ近似を使わない場合の結果に影響はありません。
As075 Ba130 Ba132 Ba134 Ba135 Ba136 Ba137 Ba140 Br079 Br081 Cd106 Cd108
Cd110 Cd111 Cd112 Cd113 Cd114 Cd116 Ce141 Ce142 Ce143 Ce144 Cf250 Fe059
Ga069 Ga071 Hf174 Hf176 Hf177 Hf178 Hf179 Hf180 Hf181 Hf182 I_127 I_129
I_130 I_131 I_135 In113 In115 Kr078 Kr080 Kr082 Kr083 Kr084 Kr085 La138
La139 La140 Mo092 Mo094 Mo095 Mo096 Mo097 Mo098 Mo099 Mo100 Nb094 Nb095
Ni059 Pr141 Pr143 Rb085 Rb086 Rb087 Rh103 Rh105 Ru096 Ru098 Ru099 Ru100
Ru101 Ru102 Ru103 Ru104 Ru105 Ru106 Sb121 Sb123 Sb124 Sb125 Sb126 Se074
Se076 Se077 Se078 Se079 Se080 Se082 Sr084 Sr086 Sr087 Sr088 Sr089 Sr090
Tc099 Te120 Te122 Te123 Te124 Te125 Te126 Te127m Te128 Te129m Te130 Te132
Xe124 Xe126 Xe128 Xe129 Xe130 Xe131 Xe132 Xe133 Xe134 Xe135 Y_089 Y_090
Y_091 Yb168 Yb170 Yb171 Yb172 Yb173 Yb174 Yb176 Zr093 Zr095

核反応後に生成する残留核の脱励起をENSDF (Evaluated Nuclear Structure Data File) データベースに基づいて計算するモデル(EBITEM: ENSDF-Based Isomeric Transition and isomEr production Model) を導入しました。この改良により,不連続なピークを持つ即発γ 線のエネルギースペクトルを精度よく再現できるようになりました。また,このモデルを用いることで準安定核(アイソマー)の生成率を計算できるようになりました。

光子入射による準重陽子崩壊過程を組み込むことにより,140MeV までの光核反応を計算できるようにしました。また,6Li, 12C, 14N, 16O に対して,巨大共鳴が起きたときの蒸発過程にアイソスピン依存性を考慮するようにしました。この改良により,これらの核種からα 粒子の放出が抑えられ,より多くの中性子や陽子が生成されるようになりました。

電磁混合場における放射線挙動(電子除く)を模擬できるようにしました。

[source] セクションにおいてエネルギー分布を定義する際、エネルギー微分値、すなわち単位が[/MeV] で与えられた線源スペクトルをそのまま利用できるようになりました。また、エネルギー分布としてポイントワイズ、すなわち各点各点で与えられる不連続なものも定義できるようになりました。

いくつかのアルゴリズムを最適化して計算時間を短縮しました。特にメッシュ数の多いタリー計算で計算時間が短くなりました。また、タリー及びANGEL におけるメモリ使用方法を改善しました。

下記に示すバグ修正及び軽微な改良を行いました。

  • PHITS とINCL4.6 の参考文献を修正
  • [t-dchain] でタリー領域数の制限をなくし,Lattice に対応
  • JENDL-4.0 の更新に併せていくつかの核データを更新
  • 電子の最大エネルギー制限を1GeV から10GeV に変更
  • JAM,SMM でまれに発生するイベントによるバグを修正
  • δ 線生成に関するバグを修正
  • 電子のLost Particle が起きたときのバグを修正
  • 異常終了したときの結果からも再開始計算を可能とした
  • 物質の密度を乗じる新たなmultiplier function を追加
  • 7 桁のセル番号を使えるようにした
  • istdev = 2 でxyz-mesh タリーを使用した場合に計算時間が膨大になることを回避
  • 陽子の断面積ライブラリ読み込み時のバグを修正
  • 中性子のカーマ近似にかかるデータのバグを修正

【 phits252 】 2012/12/21
電子、陽電子、および光子の輸送について、新規のアルゴリズムを導入しました。電子と陽電子の阻止能をそれらの計算打切エネルギーに応じて変化させ、高エネルギー電子の挙動が計算打切エネルギーに依存しないようにしました。加えて、光子や電子の輸送計算でもイベントジェネレータとなるように改良しました。

DCHAIN-SP用のインプットファイルを作成することができる[t-dchain]タリーを新しく実装しました。DCHAIN-SPは放射線による物質の放射化の時間変化を調べることができるコードで、このタリーを用いることでphits とDCHAIN-SPの接続が容易になります。

新たなマクロボディーとして、楕円柱 REC (Right Ellliptical Cylinder)、カットされた円錐形TRC (Truncated Right-angle Cone)、楕円体ELL (Ellipsoid)、くさび形WED (Wedge)を追加しました。

【 phits250 】 2012/9/28
タリー出力の統計誤差が正しく計算できるようになりました。また、統計が十分でなかった場合などに対応するため、古い計算結果から次の初期乱数とタリー出力を読み込んで再開始計算を行う機能を実装しました。

メモリ共有型並列計算に対応させるため、ソースを大幅に書き換えました。ただし、メモリ共有型並列には、まだいくつかの制限がありますのでご注意下さい。また、それに伴い、古いコンパイラー(f77, g77など)ではコンパイルできなくなりました。

巨大共鳴反応断面積を評価済み核データである光子入射反応データ(JENDL-PD/2004)を使用するように変更しました。ただし、光核反応の中で現在のphits が取り扱うことのできる反応は巨大共鳴反応だけです。入射光子エネルギーが巨大共鳴領域より大きい場合(約20MeV以上)、phits の計算は過小評価します。ご注意ください。

蒸発モデルのGEMを拡張し、統計マルチフラグメンテーションモデル(SMM)を加えました。これにより、元の核から大幅に(60-90%程度)質量が減るような核の生成を正確に評価できるようになりました。

核子、パイオン、軽イオン入射反応を精密に記述するINCL(Intra-Nuclear Cascade of Liege)模型を核反応模型として組み込みました。本バージョン以降、これらの粒子が関与する反応では初期設定でINCLが選択されます。

最新の反応断面積模型であるKUROTAMA模型を組み込みました。天然に存在する安定核はもちろん不安定核種が関与する反応についても、非常に幅広いエネルギー領域に対して適用可能となっています。

核子入射反応において軽イオン生成過程を取り入れたINC-ELF(Intra-Nuclear Cascade with Emission of Light Fragment)模型を核反応模型として組み込みました。

ユーザーが任意の物理量を導出できるよう設定できるユーザー定義タリー[t-userdefined]を加えました。これにより、既存のタリーでは難しかったシミュレーション結果に対する詳細な分析が可能となります。ただし、ソースファイルのコンパイルが必要となります。

Cl-35など幾つかの核種に関して中性子のKerma factorを更新しました。また、光子-原子および電子-原子データライブラリーをそれぞれJENDL-4.0とリバモア評価済光子・電子データライブラリー(EPDL97,EEDL)を基にして新たに開発し、利用できるようにしました。

【 phits230 】 2011/9/06
材料損傷の指標である原子あたりのはじき出し数(Displacement Per Atom, DPA)導出の計算モデルにおいて、輸送荷電粒子のクーロン弾性散乱の寄与を含むように拡張しました。これにより従来よりもDPAの再現性が向上しました。

[multiplier]セクションを追加し、任意のエネルギー依存の係数を[t-track]タリーの結果に掛けることが可能となりました。

dumpallオプションと[t-cross], [t-time], [t-product]におけるdump機能がMPIによる並列計算でも利用できるようになりました。使用する並列PE (Processor Element)数-1個のファイルを作成し、PE毎にファイルを変えて各結果を書き出します。読み込みも同様で、各PEに対応したファイルの中身をそれぞれが読み込みます。

荷電粒子が物質中を通過する際に発生するδ線を2次粒子として実際に輸送させることができるようになりました。[delta ray]セクションを利用して領域毎にしきい値エネルギーを指定することにより、そのエネルギー以上のδ線を発生させます。