Skip to main content

Python package for loading and converting SPECS Phoibos analyzer data.

Project description

Documentation Status Ruff Coverage Status

specsanalyzer

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

Installation

Pip (for users)

  • 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 and specsscanin 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

Configuration and calib2d file

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.

For Contributors

To contribute to the development of specsanalyzer, you can follow these steps:

  1. Clone the repository:
git clone https://github.com/OpenCOMPES/specsanalyzer.git
cd specsanalyzer
  1. Check out test data (optional, requires access rights):
git submodule sync --recursive
git submodule update --init --recursive
  1. 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.

Poetry (for maintainers)

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 and jupyter:
    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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

specsanalyzer-0.3.1a1.tar.gz (39.6 kB view details)

Uploaded Source

Built Distribution

specsanalyzer-0.3.1a1-py3-none-any.whl (42.2 kB view details)

Uploaded Python 3

File details

Details for the file specsanalyzer-0.3.1a1.tar.gz.

File metadata

  • Download URL: specsanalyzer-0.3.1a1.tar.gz
  • Upload date:
  • Size: 39.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for specsanalyzer-0.3.1a1.tar.gz
Algorithm Hash digest
SHA256 6d9e0b3fbded2e2568da990a0dfc3c9eddb193cb1642482afb9a94bb930fe53e
MD5 9a5f1e8f8e74ffc8ce2327258911b906
BLAKE2b-256 1ed8c273a04a9c95c4631e2c0eb29854f8451b66303a7c519733b59e89b77fdb

See more details on using hashes here.

File details

Details for the file specsanalyzer-0.3.1a1-py3-none-any.whl.

File metadata

File hashes

Hashes for specsanalyzer-0.3.1a1-py3-none-any.whl
Algorithm Hash digest
SHA256 e182151636a6ab3a8a53373bfbc3cfde4fd420454af61213e52b33e9c9fa6a71
MD5 6601565fbefef6eafbeef8d1b4384fbf
BLAKE2b-256 0e8955b30bdf5f9db6de58dba990d02f78d2a219d00cd9552a4ac56a29acb403

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page