5.4. [ Material ] セクション¶
このセクションでは体系を構成する物質を定義します。 ここで定義した物質は、[cell]セクションをはじめとする幾つかのセクションで参照されます。
書式は以下の通りです。物質番号の後に、物質を構成する元素(核種)とその組成比を交互に書きます。
[ Material ]
MAT[物質番号] 元素 組成比
元素 組成比
... ...
物質番号nは1から99999まで選択でき、MAT[n]あるいはMnの2種類の表現で指定することができます。 ただし、MAT[n]において、MATと[の間には空白文字を入れることができないのでご注意ください。
コメント文字として#, %, !, $の4文字が使用できます。 バージョン2.88までは行頭の c (直後に半角スペースがある場合)もコメント文字として使用することができていましたが、それより後のバージョンではデフォルトでは使用できなくなりました。 もし、コメント文字として使用したい場合は、[parameters]セクションにおいてicommat=1としてください。 また、ファイルのインクルード文、定数定義などは、セクションの途中でも用いることが出来ます。
5.4.1. 元素(核種)の定義¶
上記書式の元素の箇所には、定義したい物質の元素記号を書いてください。 核種を指定する場合は、質量数を加えた表式を書いてください。 208Pb, Pb-208, 82208のどの形式でも可能です。 例えば水素は、1H, H-1, 1001と指定します。 元素記号のみ、あるいは質量数をゼロにした場合(例えばPb, 82000)は、その元素の同位体を天然存在比で展開します。 ただし、JENDL-4.0に含まれない核種に関しては展開されませんのでご注意ください。
PHITSパッケージに含まれているJENDL-4.0以外の核データライブラリーを使用する場合は、断面積ディレクトリファイルfile(7) (D=xsdir)にそのライブラリ付属のxsdirの情報を追加してください。 もし、20MeV以下の中性子データライブラリーについて、JENDL-4.0以外のものを使用する場合は、物質番号毎にそのライブラリーのidを 表 5.4.3 のNLIBにより指定してください。 ライブラリーのidは、ライブラリー番号(2桁の数字)とデータのクラス(1文字のアルファベット)を組み合わせて定義されており、例えばJENDL-4.0の中性子ライブラリーであれば50cとなります。 中性子以外にも、PLIB, ELIB, HLIBを指定することで、それぞれ光子、電子、陽子のライブラリーを指定して利用することができます。 また、物質番号毎ではなく、核種毎に使用するデータライブラリーを指定する場合は、その核種の指定を208Pb.50c, Pb-208.50c, 82208.50cのような形式で行ってください。 ただし、基本的にPHITSでは、中性子などの入射粒子に対して各々1種類のライブラリーを指定するようにし、その指定はNLIB, PLIB, ELIB, HLIBにより行ってください。 もし、2種類目のライブラリーを指定したい場合は、中性子に関してのみ可能ですので、NLIBによる指定を行った上で、ライブラリーを変更したい核種を208Pb.50cのような形式で定義してください。 また、各物質の後に拡張子でライブラリを指定できるのは中性子のみです。 たとえば、\(\mathrm{^6Li}\) と \(\mathrm{^7Li}\) について、陽子のJENDL/4.0-HEライブラリを利用する場合、HLIBを用いて、
6Li 0.001
7Li 0.999
hlib=51h
としてください。 なお、idによるライブラリーの指定がない場合は、file(7)中のリストを上から検索し、その核種で最初に該当したライブラリーを使用します。 どの核データが使用されたのかを知りたい場合は、[parameters]においてkmout=1とすることで、サマリーの出力ファイルfile(6) (D=phits.out)にその情報が書き出されます。
準安定核種を指定する場合は、原子番号と質量数を並べた5桁の整数形式を使用してください。 ただし、質量数には50を加えます。 例えば、Am-244m を指定する場合は 95294 としてください。 対応する核種の核データライブラリが存在する場合は、それを参照します。
5.4.2. 物質組成比の定義¶
上記書式の組成比の箇所には、その物質番号で定義した物質に含まれる元素(核種)の組成比を書いてください。 正の数で書いた場合は原子数比、負の数で書いた場合は質量比の意味となります。 例えば、水( \(\mathrm{H_2O}\) )を定義したい場合は、
MAT[1] H 2 O 1
あるいは、
MAT[1] H -2/18 O -16/18
と指定します。 水の分子量がおよそ18であることから、水に含まれる水素と酸素の質量比がそれぞれ約2/18と16/18となるためです。
粒子輸送計算時に使用される物質の密度は、[cell]セクションで定義します。 ただし、[cell]セクションで物質密度を0と定義した場合や、[t-deposit], [t-deposit2], [t-let], [t-sed]セクションにおいてletmatを指定する場合は、本セクションの組成比の箇所で物質密度を定義する必要があります。 その際、正の数の場合は粒子密度(単位は[ \(10^{24}\,\mathrm{atoms/cm^3}\) ])、負の数の場合は質量密度(単位は[ \(\mathrm{g/cm^3}\) ])として定義します。
5.4.3. 物質パラメータ¶
核データライブラリを使う領域に関して、物質毎のパラメータをkeyword=valueの形で指定します。 挿入場所は、その物質番号のサブセクション中なら自由です。 指定できるパラメータとその意味は以下の通りです。
値 |
説明 |
(D=0)
|
電子の阻止能の密度効果。
|
=0
|
液体もしくは固体の計算に適する。
|
=1
|
気体の計算に適する。
|
値 |
説明 |
電子輸送のサブステップの数。
|
|
=n
|
サブステップの数をnにする。nがbuild-inのデフォルト値より小さい時は無視される。
|
値 |
説明 |
デフォルトの中性子ライブラリー番号。
|
|
=id
|
idをデフォルトの中性子ライブラリーとする。
|
値 |
説明 |
デフォルトの光子ライブラリー番号。
|
|
=id
|
idをデフォルトの光子ライブラリーとする。
|
値 |
説明 |
デフォルトの電子ライブラリー番号。
|
|
=id
|
idをデフォルトの電子ライブラリーとする。
|
値 |
説明 |
デフォルトの陽子ライブラリー番号。
|
|
=id
|
idをデフォルトの陽子ライブラリーとする。
|
値 |
説明 |
(D=0)
|
伝導体設定。
|
<0
|
絶縁体。
|
=0
|
1個でも絶縁体があれば絶縁体、それ以外は伝導体。
|
>0
|
1個でも伝導体があれば伝導体。
|
5.4.4. 阻止能の指定¶
PHITSでは、通常、物質の阻止能はndedxパラメータで指定するモデル(ATIMA、SPARなど)で計算します。 しかし、それらのモデルでは精度が十分ではない場合や、ICRU90で定義した阻止能を使いたい場合は、阻止能のデータベースを直接読み込ませることができます。
その指定方法は
dedxfile = ファイル名
で指定できます。 この阻止能データベースファイルは、file(29)で指定したフォルダ(初期設定はfile(1)/data/dedx)に格納しておく必要があります。 また、様々な物質に対する陽子及び \(\alpha\) 粒子に対してPSTAR及びASTAR [1] で計算した阻止能データベースを上記フォルダに格納していますので、必要に応じて指定してご使用ください。 なお、本機能はATIMAで阻止能を計算する放射線に対してのみ有効となります。 また、エネルギー分散(nedisp)や角度分散(nspred)は、従来と同様に機能します。
5.4.4.1. 阻止能データベースファイルのフォーマット¶
dedxfileで指定する阻止能データベースファイルでは、$と#がコメントとして利用できます。 また、PHITS入力ファイルとほぼ同じく大文字小文字の区別はありません。 指定できるパラメータはunitとkfのみで、それぞれ阻止能を与えるエネルギーの単位と放射線の種類を表します。
unit = 1: MeV (全運動エネルギー、デフォルト)
= 2: MeV/u(atomic mass unitあたりの運動エネルギー)
= 3: MeV/n(核子あたりの運動エネルギー)
unitは、最初のkfコードを指定する前に指定してください。 kfは対象となる粒子のkfコードを指定し、その後に阻止能データベースを
エネルギー 阻止能
順にエネルギーの昇順で定義してください。 ここで、エネルギーはunitで指定した単位、阻止能は \(\mathrm{MeV\,g^{-1}\,cm^{2}}\) の単位で与えてください。 阻止能の単位は変更できませんのでご注意ください。 指定したエネルギー範囲外の放射線やkfコードを指定しなかった放射線に対しては、ATIMAで計算した値がそのまま利用されます。 複数の放射線に対する阻止能を定義する場合は、1つのデータベースファイルにまとめてください。 複数用意したデータベースファイルを1つの物質に対して使用することはできません。
5.4.5. \(S(\alpha,\beta)\) の指定¶
低エネルギー中性子の輸送の際、熱中性子散乱データ \(S(\alpha,\beta)\) のライブラリーが必要になる場合があります。 特に、熱エネルギー付近で挙動が大きく変わりますのでご注意ください。 \(S(\alpha,\beta)\) ライブラリーは、
MTn 物質ID
で指定できます。 ここで、nはその物質の物質番号です。 物質IDは、xsdirに書かれているID番号(lwtr.20tなど)です。 例えば、常温の水の場合は、
M1 H 2.0
O 1.0
MT1 lwtr.20t
のように指定します。 各データの物質や温度情報は/XS/tsl/tsl-tableに書かれていますので、そちらをご参照下さい。
5.4.6. 飛跡構造解析計算用の化学形の指定¶
飛跡構造解析計算を行う場合、物質の化学形が重要です。 電子の飛跡構造解析や、KURBUCを用いた陽子や炭素の飛跡構造解析は、水の断面積を密度によって規格化することによって物質の断面積を計算しますので、化学形の指定は不要です。 しかし、ITSART (Ion Track Structure calculation model for Arbitrary Radiation and Targets)を用いた陽子・イオンの飛跡構造解析の場合、構成元素をもとに断面積やイオン化ポテンシャルを計算することに加え、以下の物質はさらに化合物であることを考慮できます。
\(\mathrm{H_2O, CO_2, NH_2, NH_3, SF_6, TeF_6, CH_4, CH_3, }\) \(\mathrm{C_2H_2, C_2H_4, C_2H_6, C_6H_6,(CH_3)_2NH}\)
化合物としての化学形を考慮する場合、
M1 H 2.0 O 1.0
chem = H2O
のように表記します。 化合物や純物質の混合物の場合、物質量(モル)の比で
M1 H 1.62 O 0.01 N 1.6 C 0.4 Ar 0.1
chem = H2O 0.01 N2 0.8 CH4 0.4 Ar 0.1
のように表記します。 Chem内の物質量比は自動で規格化されるので、絶対値は重要ではありません。
5.4.7. 例題¶
幾つかの例題を下に示します。
[material]セクションの例題(1)
[ Material ]
MAT[ 1 ]
1H 1.0000000E-04
208Pb 1.7238000E-02
204Pb 4.6801000E-04
206Pb 7.9430000E-03
207Pb 7.2838000E-03
MAT[ 2 ]
1H 1.0000000E-09
14N 4.6801000E-05
16O 7.9430000E-06
元素(核種)と組成比の順番は、元素-組成比がデフォルトで、これを逆にしたいときは、
[material]セクションの例題(2)
[ Material ]
den nuc
MAT[ 1 ]
1.0000000E-04 1H
1.7238000E-02 208Pb
4.6801000E-04 204Pb
7.9430000E-03 206Pb
7.2838000E-03 207Pb
MAT[ 2 ]
1.0000000E-09 1H
4.6801000E-05 14N
7.9430000E-06 16O
のように、den nuc を入れて定義します。
[material]セクションの例題(3)
[ Material ]
m1 80196.49c 5.9595d-5
80198.49c 3.9611d-3
80199.49c 6.7025d-3
80200.49c 9.1776d-3
80201.49c 5.2364d-3
80202.49c 1.1863d-2
80204.49c 2.2795d-3
$ ...Be...
m3 4009.37c 1.2362E-1
mt3 be.01
$ ...h2o (25C)...
m4 1001.37c 6.6658d-2 8016.37c 3.3329d-2
mt4 lwtr.01
$ ...b4c (natural boron; 25%-density)...
m5 6012.37c 6.8118d-3
5011.37c 2.1825d-2
$ ...liquid-h2 (20K)...
m6 1001.49c 3.1371d-2 1011.49c 1.0457d-2
mt6 orthoh.00 parah.00
5.4.8. 既定物質を用いた定義方法¶
Version 3.37より、dataフォルダに含まれるpredefined_material.datから既定物質を選択して定義できるようになりました。 [material] セクションで既定物質そのものを展開する場合は、alias名を @ で挟んで指定します。その書式は以下の通りです。
[ Material ]
MAT[物質番号] @物質名@
@物質名@のところには、predefined_material.dat に書かれた alias 名が入ります。
1つの物質に対して複数の alias 名を定義されている場合もあり、例えば水の場合は
@WATER@, @H2O@, @WATER_LIQUID@, @LIQUID_WATER@,
@276_WATER_LIQUID_H2O@, @WATER_WATERDB_H2O_ICRU-276@ などが定義されています。
既定物質の一覧表は、 data フォルダにある predefined_material_index.csv 、または
13.4 既定物質 をご参照ください。
初期設定では、Flair [2] の物質リストに含まれている 641 物質及び日米3種類の標準コンクリート [3] [4] が定義されており、
各物質の []で定義された名前やname パラメータも alias 名として登録されています。
ただし、alias 名に空白文字(スペース)は使えないため、
スペースは _ に置換されます。
既定物質データベースは、ユーザーが編集することも可能です。
Okuno et al., Japanese Concrete Composition Standard for Shielding Calculation, RADIOISOTOPES 75, S-01 (2026).
Argonne National Laboratory, Reactor Physics Constants, 2nd ed., ANL-5800, July 1963.
使用例を以下に示します。
[ Material ]
MAT[1] @DRY_AIR@
m2 @iodine@
このように記述すると、 @DRY_AIR@ や @iodine@ は、データベースに登録された物質組成(materialパラメータ)へ自動的に展開されます。
例えば、上記サンプルは、概念的には次のような内容へ展開されます。
MAT[1] C -1.503641e-07 N -0.0009099761 O -0.0002792591 Ar -1.545449e-05 gas=1
dedxfile = air_icru90.txt
m2 I -4.93
ただし、実際のインプットエコーでの表示形式はPHITSの通常の [material] セクションの形式に従います。
既定物質データベースファイルは、初期設定では %PHITSPATH%/data/predefined_material.dat が参照されます。
別のデータベースファイルを使用したい場合は、最初に既定物質を使う行より前に、次のように記述してください。
set:%predefined_material.dat%[d:/test/predefined_material.dat]
既定物質を [material] セクションで展開すると、そのalias名は対応する物質番号を表すユーザー定義文字列としても自動登録されます。このとき、以後のセクションでは、その物質番号を表す文字列として % で挟んだ形式を用います。 例えば、
[material]
m1 @WATER@
とすると、以後のセクションでは %WATER% を物質番号1として使用できます。
従って、 [cell] セクションでは
[cell]
100 %WATER% 0.0 -10
のように書くことができ、これは
[cell]
100 1 0.0 -10
と同等です。したがって、既定物質を使うためには、 [material] セクションは [cell] セクションやその他の物質番号を参照するセクションよりも先に定義する必要があります。なお、既定物質の密度はデータベースに含まれているため、 [cell] セクションでは、密度を0( [material] セクションで定義した密度をそのまま使う)に指定することを奨励します。
predefined_material.dat に \(S(\alpha,\beta)\) データ名が定義されている場合は、対応する MT 行も自動的に追加されます。
例えば、データベース内で sab = lwtr.20t と定義されている物質を展開した場合は、対応する MTn lwtr.20t が自動的に挿入されます。
一方、sab項目が空であれば MT 行は追加されません。
また、predefined_material.dat に dedxfile が定義されている場合は、対応する dedxfile 行も自動的に追加されます。
例えば、 @DRY_AIR@ を展開した場合は、
MAT[1] C -1.503641e-07 N -0.0009099761 O -0.0002792591 Ar -1.545449e-05 gas=1
dedxfile = air_icru90.txt
のように展開されます。一方、 @iodine@ のように dedxfile が定義されていない物質を展開した場合は、 dedxfile 行は追加されません。
dedxfile は、 data/dedxfile フォルダに登録されているものが対象となっており、詳細は 阻止能の指定 セクションを参照してください。
この機能を使う際の注意点を以下にまとめます。
既定物質のaliasは [material] セクションで
@WATER@のように @ で挟んで書きます。[cell] セクションなどで
%WATER%のような文字列を物質番号として使うためには、それより前に [material] セクションで対応する物質番号との対応付けを定義しておく必要があります。set:%predefined_material.dat%[...]によるデータベースファイル指定は、最初の既定物質使用より前に書く必要があります。predefined_material.dat の alias は大文字・小文字を区別せず検索されます。ただし、ユーザー定義文字列として使う場合は、大文字・小文字を揃えてください。例えば、
@WATER@と定義した場合は%WATER%とし、@Water@と定義した場合は%Water%としてください。
以下、この機能を使った入力の例です。
[ Material ]
mat[1] @polyethylene@
mat[2] @Fe@
mat[3] @WATER@
[ Cell ]
101 %Fe% 0.0 -10
102 %polyethylene% 0.0 -11 10
103 %WATER% 0.0 -12 11
...
[ Mat Name Color ]
mat name color
%polyethylene% Polyethylene yellow
%Fe% iron black
%WATER% water red