This is the package specsanalyzer
for conversion and handling of SPECS Phoibos analyzer data.
This package contains two modules:
specsanalyzer
is a package to import and convert MCP analyzer images from SPECS Phoibos analyzers into energy and emission angle/physical coordinates.
specsscan
is a Python package for loading Specs Phoibos scans acquired with the labview software developed at FHI/EPFL
Tutorials for usage and the API documentation can be found in the Documentation
- Create a new virtual environment using either venv, pyenv, conda, etc. See below for an example.
python -m venv .specs-venv
- Activate your environment:
source .specs-venv/bin/activate
- Install
specsanalyzer
from PyPI:
pip install specsanalyzer
-
This should install all the requirements to run
specsanalyzer
andspecsscan
in your environment. -
If you intend to work with Jupyter notebooks, it is helpful to install a Jupyter kernel for your environment. This can be done, once your environment is activated, by typing:
python -m ipykernel install --user --name=specs_kernel
The conversion procedures require to set up several configuration parameters in a config file. An example config file is provided as part of the package (see documentation). Configuration files can either be passed to the class constructors, or are read from system-wide or user-defined locations (see documentation).
Most importantly, conversion of analyzer data to energy/angular coordinates requires detector calibration data provided by the manufacturer. The corresponding *.calib2d file (e.g. phoibos150.calib2d) are provided together with the spectrometer software, and need to be set in the config file.
To contribute to the development of specsanalyzer
, you can follow these steps:
- Clone the repository:
git clone https://github.com/OpenCOMPES/specsanalyzer.git
cd specsanalyzer
- Check out test data (optional, requires access rights):
git submodule sync --recursive
git submodule update --init --recursive
- Install the repository in editable mode:
pip install -e .
Now you have the development version of specsanalyzer
installed in your local environment. Feel free to make changes and submit pull requests.
-
Prerequisites:
- Poetry: https://python-poetry.org/docs/
-
Create a virtual environment by typing:
poetry shell
-
A new shell will be spawned with the new environment activated.
-
Install the dependencies from the
pyproject.toml
by typing:
poetry install --with dev, docs
-
If you wish to use the virtual environment created by Poetry to work in a Jupyter notebook, you first need to install the optional notebook dependencies and then create a Jupyter kernel for that.
- Install the optional dependencies
ipykernel
andjupyter
:
poetry install -E notebook
- Make sure to run the command below within your virtual environment (
poetry run
ensures this) by typing:
poetry run ipython kernel install --user --name=specs_poetry
- The new kernel will now be available in your Jupyter kernels list.
- Install the optional dependencies