空蝉環境構築#

  • 万葉ライブラリのインストール(コア、空蟬用)

  • 空蟬実行に必要なPythonパッケージ

  • 空蟬Pythonコードの配置

  • 環境設定

概要#

空蝉は、MLFデータ解析基盤ソフトウェアである「万葉ライブラリ」をベースにして構築されれている。よって空蝉環境(開発環境も)を構築する場合は、構築環境は万葉ライブラリの環境に加えて、空蝉内のPythonによる実装(可視化やGUI)に必要な環境も必要となる。それらの構築方法を示す。

万葉ライブラリのインストール#

必要なPythonパッケージ#

空蟬を動作させるのに必要なパッケージは以下の通りである。

Python packages required for Utsusemi environment#

パッケージ

必要なバージョン

Python関連

(GUI関連)

Numpy

1.6.x以降

Scipy

0.10.x以降

matplotlib

1.2.x以降

PySide2 / PySide6

5.x以降

上記のPython関連パッケージは全てdnfにてパッケージによるインストールも可能であるが、一部挙動がおかしい部分があるのでpipを用いて最新のパッケージをインストールする。

下記の例ではユーザー領域にインストールしているが、やり方は自由である。必要に応じて venv などで仮想化しても良いだろう。

$ sudo apt install python3-pip # Ubuntu
$ sudo dnf install python3-pip # AlmaLinux9
$ sudo dnf install python3.11-pip # AlmaLinux8
$ sudo python3 -m pip install -U pip
$ python3 -m pip install --user numpy scipy matplotlib PySide6

PySide, numpy, scipy, matplotlibの動作確認#

$ python3
>>> import numpy
>>> import scipy
>>> import PySide

空蟬Pythonコードの配置#

Installation path for Utsusemi environment#

Path

1

${MLFSOFT_PATH}/manyo

万葉ライブラリに関連するライブラリやモジュールが配置される

2

${MLFSOFT_PATH}/python-utsusemi

空蝉に関連するモジュールが配置される(utsusemi, uGaoなど)。 PYTHONPATHにはこのパスを通す。

1は先に述べた「万葉ライブラリのインストール」によって作成・構築されている。 2には空蝉に関するPythonコードやモジュールが配置される。空蝉のPythonコードの配置はこのフォルダを構築することである。

utsusemi/
├─ ana <- 空蝉におけるデータ処理・解析関連のモジュール
├─ bin <- 空蝉環境でのバイナリコード
├─ facade
├─ __init__.py
├─ vis
├─ SIK
│   ├─ ana
│   │   ├─ Reduction
│   │   └─ xml
│   ├── facade
│   │   ├── Cmm.py
│   │   ├── DR.py
│   │   ├── __init__.py
│   │   ├── Sequencer_facades.py
│   │   └── VisualModule.py
│   └── __init__.py
└─ XXX

実際には所定のフォルダをコピーするだけである。

$ mkdir -p ${MLFSOFT_PATH}/python-utsusemi/utsusemi
$ cp -r Utsusemi/python-utsusemi/* ${MLFSOFT_PATH}/python-utsusemi/utsusemi/
$ ls -F ${MLFSOFT_PATH}
manyo/ python-utsusemi/
$ ls -F ${MLFSOFT_PATH}/python-utsusemi
utsusemi/
$ ls -F ${MLFSOFT_PATH}/python-utsusemi/utsusemi
__init__.py ana/ bin/ facade/ scripts/ vis/

次に、それぞれの装置における固有の関数が必要となる。それぞれの装置に対して、その装置コードのフォルダが準備されている。このフォルダを utsusemi フォルダ( ${MLFSOFT_PATH}/python-utsusemi/utsusemi )の直下にコピーする。

$ cp -r Utsusemi/python-utsusemi/SIK ${MLFSOFT_PATH}/python-utsusemi/utsusemi/

この準備されている装置コードのフォルダは以下の場所にあるので、必要に応じてコピーする。

Installation paths of python codes specialized to beam lines#

BL(CODE)

Pythonコード

Pythonコードのコピー先

BL01(SIK)

Utsusemi/python-utsusemi-SIK

python-utsusemi/utsusemi/SIK

BL02(DNA)

Utsusemi-DNA/python-utsusemi-DNA

python-utsusemi/utsusemi/DNA

BL11(HPN)

Utsusemi/python-utsusemi-HPN

python-utsusemi/utsusemi/HPN

BL14(AMR)

Utsusemi/python-utsusemi-AMR

python-utsusemi/utsusemi/AMR

BL15(SAS)

Utsusemi-SAS/python-utsusemi-SAS

python-utsusemi/utsusemi/SAS

BL17(VNR)

Utsusemi/python-utsusemi-VNR

python-utsusemi/utsusemi/VNR

BL19(ENG)

Utsusemi-ENG/python-utsusemi-ENG

python-utsusemi/utsusemi/ENG