RIBF施設共用促進事業

python版 SRIMfit ( pySRIMfit )

pySRIMfit の構造

pySRIMfit は、Excel の ワークブック、ワークシートを模倣した構造にしてあります。 ブックの中に、多数のシートがあり、それぞれのシートには、SRIM-2013 で計算した E-LET-Rangeテーブル等が書き込んである というイメージです。

Excel版 SRIMfit では、SRIM-2013 の計算結果を Excelブック(MySRIMwb.xlsx) で保管していました。 この手法は、複雑な構造体データを、綺麗に保守性良く管理する点に於いて優れていたので、 コレを模倣して、python版に書き換えました。
● class sirmWB()   多数の srimWS() を読み込んだ object 
 ユーザーは通常、この object を操作します。
 Excel版と同じ関数名を、メソッドとして提供します。
 その引数で、参照する ワークシート名 (WS名) を指定します。
● class sirmWS()   SRIM-2013の計算結果を読み込んだ object 
 1つの srimWS() には Beam vs Target で計算した結果が格納されています
 それらの数値は、プロパティとして参照可能です。
MySRIMwb.pickle 多数の srimWS() のバイナリーイメージ 
 srimWB().loadWS() / .saveWS() メソッドで読み書きされます。
 従来の MySRIMwb.xlsx から .pickle への変換 utilityも用意してあります。
● python コンソール より 
 import 後に srimWB() のインスタンスを生成し .pickle を load して使用します