Skip to main content

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.

Metadata

Release files for specsanalyzer 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for specsanalyzer 1.2.0
File Size Uploaded
specsanalyzer-1.2.0.tar.gz 44.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for specsanalyzer 1.2.0
File Interpreter ABI Platform
specsanalyzer-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 95.8 kB

Release files / specsanalyzer-1.2.0.tar.gz

Download URL specsanalyzer-1.2.0.tar.gz
Size 44.9 kB
Tags Source
SHA-256 checksum
How to use checksums
8cdddeba4c0a82249b630c3579ed85f2aba025e16cc7f0ac403e180cd093a2a3
BLAKE2b-256 checksum
How to use checksums
4813e5a09712319b0976f07c2f76f39d39a720740210243bc7673a73e6cd9e54
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 4, 2025.

Transparency log

Release files / specsanalyzer-1.2.0-py3-none-any.whl

Download URL specsanalyzer-1.2.0-py3-none-any.whl
Size 50.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
728806c5ec579a14ac52a5b9fce575af222f8d9c8208b05cd808f2b9c828b3ef
BLAKE2b-256 checksum
How to use checksums
cacada33008a5594aa4b7de3f9f5feb830fad22e2d3d6848db89a488e360aefc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 4, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.0

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page