「空蟬」ポータルサイト
What's New
- 2024.10.17 空蟬各種インストーラ更新
- 2024.08.30 空蟬各種インストーラ更新
(中略)
- 2017.08.22 公開開始
インストール
空蟬のインストールや必要なファイル等に関する情報は、以下の専用ポータルサイトを利用してください。
- 空蟬インストールポータル(別サイト)
Windows及びmacOSのバイナリインストーラとUbuntu linux用Debianパッケージ、Ubuntu Linux用のインストールパッケージが準備されており、マニュアルともども参照できます。
なお、RedHat系Linux用のインストールパッケージは存在しませんが、Ubuntu Linux用のファイルを利用してインストールする方法はあります(上記ポータル参照)。
ドキュメンテーション
空蟬更新履歴
マニュアル
空蟬を使用するためのマニュアル類です(作成中、随時公開)。
空蟬4 オンラインマニュアル
万葉ライブラリ オンラインマニュアル
空蟬が使用しているデータの入れ物(コンテナ)は万葉ライブラリというフレームワークを使用しています。データコンテナの使用方法は以下のマニュアルを参照してください。
開発者向け情報
開発用の情報です。空蟬環境の構造や環境変数、空蟬のヒストグラム化の概要について触れています。
ライセンス
オープンソース( LICENCE )ですので、自由に使用・配布していただいて結構です。
問い合わせ先
開発担当:稲村泰弘 (JAEA J-PARCセンター)
- 質問・ご意見など
- 主にインストールに関わるところ、ソフトウェア動作バグに関しては、稲村まで。
- その他の質問は、それぞれのビームライン担当者まで。
- 近い将来にメーリングリストなどの利用を考え中。
「空蟬」紹介
空蟬(参考文献1)は、J-PARC, MLFで使用されているDAQミドルウェアのMLFコンポーネントが出力するイベントデータのデータリダクション、可視化や補正を行うためのコード群である。MLFで開発が進められている解析環境フレームワークである万葉ライブラリ(参考文献2)を利用し、柔軟なヒストグラム化、特に試料環境や装置状態を加味したデータ分別機能を使用した高度な解析を目指す。 また、測定中のデータを安全に解析できる Live Data Reduction のMLFでの実用化も目指している。
現在すでに多くの装置に導入が進み、MLFにおける解析ソフトウェアのフレームワーク的な役目を担う。
何ができるか
MLFにおける多くの装置では、核破砕型中性子源から発生した中性子(入射中性子)を測定試料に照射し、試料内で原子分子と相互作用して出てきた中性子(散乱中性子)を検出器にて検知・収集する。これらの装置を利用したいわゆる中性子散乱測定では、散乱中性子のエネルギーや散乱による軌道の変化を捉える必要があるが、軌道の変化は検出器の位置情報を用いて、エネルギーは飛行時間法(Time-Of-Flight法:発生中性子のエネルギーを距離と時間で分別する手法)を用いて知ることができる。この散乱中性子の検出された時間と位置情報はイベント記録方式で保存(イベントデータ)されるが、このデータを柔軟に変換して処理することにより試料内部の情報(原子分子の構造や振動状態など)を得ることが、空蟬の主要な目的である。 それに加えいくつかのデータ補正機能や可視化機能が搭載されている。
主な機能
- MLFのイベントデータのヒストグラム化機能
- DAQミドルウェアが出力するイベントデータをヒストグラム化
- ヒストグラムの横軸単位:TOF, λ, Q(momentum transfer), Energy, EnergyTransfer, d値
- フィルタリングの使用:時間分解、TrigNETを使用したデータ分別
- DAQミドルウェアが出力するイベントデータをヒストグラム化
- 汎用的なコマンドシーケンス実行ソフトウェア(SequenceEditor)
- スクリプトはコマンドラインでも実行可能
- データ処理・可視化機能
- 万葉ライブラリを用いたデータコンテナの演算
- 簡単な補正(Solid angle, ki/kf, 検出器効率補正など)
- 汎用的な可視化ソフトウェア
- 1次元プロッタ(夕顔:MPlot)
- 2次元プロッタ(夕顔:M2Plot+)
- ディテクタマッププロッタ(DetectMap)
- 非弾性散乱測定のデータ可視化処理機能
- 単結晶測定の可視化(VisualContM)
- 多次元測定の可視化(D4MatSlicer, D4Mat2Slicer)
対応する中性子検出用モジュール
様々な検出器からのシグナルは、それぞれ専用の機器(モジュール)を通すことでイベントデータ化される。MLFのイベントデータはモジュールごとに少しフォーマットが異なるため、その対応状況を示す。
対応検出器 | モジュール名 | モジュールの説明 |
---|---|---|
PSD(一次元位置敏感型検出器) | NEUNET | 1次元型の検出器用のモジュール |
窒素モニター | GATENET | 0次元型の検出器用のモジュール |
汎用シグナル | TrigNET | シグナルによって同時に測定されている中性子イベントを分別し、個別に解析するために使用 |
γ線検出器 | APV8008 | |
1次元シンチレーションカウンター,2次元系検出器 | Readout, ReadoutGate | 2次元系検出器(WLSF,MWPC,RPMT)にも対応 |
導入されているMLFのビームライン
BL | 名前 | コード | 使用形態 |
---|---|---|---|
BL01 | 四季 | SIK | 空蟬コア |
BL02 | DNA | DNA | 空蟬コア+DNA用拡張 |
BL11 | PLANET | HPN | 空蟬コア+HPN用ソフトウェア |
BL14 | アマテラス | AMR | 空蟬コア |
BL15 | 大観 | SAS | 空蟬コア+SAS用拡張 |
BL17 | 写楽 | NVR | 空蟬コア |
BL19 | 匠 | ENG | 空蟬コア+ENG用ソフトウェア |
BL21 | NOVA | NVA | 空蟬コア(一部) |
開発情報
空蟬4に関して
本来の空蟬自身のコードは2007年頃から開発がスタートしており、当時の古いPythonスクリプトをベースに開発されているため、最新の計算機の環境、特にOS(LinuxやWindows, MacOS)などの環境にそぐわなくなってきた。そこでこの数年ほどかけてPythonの新しいバージョン(Python 3)で動作するように対応させてきた。特に汎用データプロッタの部分を分離し「夕顔」と呼ばれる汎用データプロッタソフトウェア群に含めて役割分担を明確にすることで、空蟬の構造がよりシンプルとなり、開発のみならずユーザーから見た使い勝手の向上を狙う。
主な仕様(4.0)
- Python3の環境のみ(Python2でも動作可能かもしれないがサポートしない)
- 空蟬0.3.7で動作していた関数は、基本4.0でも動作する
- 汎用的なプロッターを分離し「夕顔」を利用(MPlot, M2Plot+)
- 全データ処理過程をコマンドにて実行可能
- 対応OS
- Ubuntu Linux 20.04, (22.04)
- Windows 10(64bit) バイナリ版のみ
- MacOS X 10.13 以降 バイナリ版のみ
- 対応BL : BL01, BL02, BL11, BL14, BL15, BL17
4.2 構想
- 空蟬としてインストールされるファイル・フォルダ構造をLinuxの様式( python3.x/site-packages or python3.x/dist-packages )に従わせる
- Pythonから呼び出されるC++クラス名の簡略化
- すべてのクラス名に Utsusemi がついているのを無くす
- 逆にC++コード内では名前空間 Utsusemi を使用
- 古いクラス名のいくつかはWarning付きで使用可能。
- Debianバイナリパッケージ、rpmバイナリパッケージの用意
開発環境 4.x
項目 | 使用 |
---|---|
開発言語 | C++(gcc), Python(3.6, 3.8) |
メイン開発環境 | Linux ( Ubuntu 20.04 ) |
利用外部ライブラリ(C++) | 万葉ライブラリ関連(gsl, Boost, HDF5, NeXus, MiniXML) |
利用外部ライブラリ(Python) | numpy, scipy, matplotlib, Qt for Python (PySide2, PySide6), pyqtgraphなど |
動作確認環境 | Linux (Ubuntu 20.04, 18.04(64bit), CentOS 7.x, Windows 10 (64bit), MacOS X (intel): (10.13, 10.14, 10.15, 11.x), macOS 11, 12 (m1) |
最近の開発トピックス(近い将来の機能追加など)
- Live Data Reduction機能 - PubSubモデルを利用したデータ収集系システムとの結合を行うことで、安全性の高い方法で、測定中のデータをほぼリアルタイムに処理・可視化する機能の開発。
バージョン履歴
その他
開発の歴史的経緯
もともとチョッパー型非弾性散乱装置で使用するプログラム群と定義していたため装置を制御するソフトウェアやコードも含めていた。しかしヒストグラム化機能などが他の装置でも導入が進んだため、その汎用性を高めるために、装置制御用コードとは分離・独立させた。
名前の由来
UTility Software for USer analysis Environment of MLF Instruments
- ロゴイメージは源氏物語に登場する女性「空蝉」から(源氏物語 第3帖)
ロゴ
参考文献
-
Development status of software ‘Utsusemi’ for Chopper Spectrometers at MLF, J-PARC.
Y. Inamura, T. Nakatani, J. Suzuki, T. Otomo, J. Phys. Soc. Jpn. 2013, 82, SA031-1 - SA031-9 -
Object-oriented data analysis framework for neutron scattering experiments J. Suzuki, T. Nakatani, T. Ohhara, Y. Inamura, M. Yonemura, T. Morishima, T. Aoyagi, A. Manabe, T. Otomo, Nuclear Inst. and Meth. Phys. Res. 2009, 600, 123, .