[![Documentation Status](https://github.com/OpenCOMPES/specsanalyzer/actions/workflows/documentation.yml/badge.svg)](https://opencompes.github.io/specsanalyzer/)
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
![](https://github.com/OpenCOMPES/specsanalyzer/actions/workflows/linting.yml/badge.svg)
![](https://github.com/OpenCOMPES/specsanalyzer/actions/workflows/testing_multiversion.yml/badge.svg?branch=main)
![](https://img.shields.io/pypi/pyversions/specsanalyzer)
![](https://img.shields.io/pypi/l/specsanalyzer)
[![](https://img.shields.io/pypi/v/specsanalyzer)](https://pypi.org/project/specsanalyzer)
[![Coverage Status](https://coveralls.io/repos/github/OpenCOMPES/specsanalyzer/badge.svg?branch=main&kill_cache=1)](https://coveralls.io/github/OpenCOMPES/specsanalyzer?branch=main)
# 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 accquired with the labview software developed at FHI/EPFL
Tutorials for usage and the API documentation can be found in the [Documentation](https://opencompes.github.io/specsanalyzer/)
## Installation
### Pip (for users)
- Create a new virtual environment using either venv, pyenv, conda, etc. See below for an example.
```bash
python -m venv .specs-venv
```
- Activate your environment:
```bash
source .specs-venv/bin/activate
```
- Install `specsanalyzer` from PyPI:
```bash
pip install specsanalyzer
```
- This should install all the requirements to run `specsanalyzer` and `specsscan`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:
```bash
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 constructures, 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.calbid2d) 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:
```bash
git clone https://github.com/OpenCOMPES/specsanalyzer.git
cd specsanalyzer
```
2. Check out test data (optional, requires access rights):
```bash
git submodule sync --recursive
git submodule update --init --recursive
```
2. Install the repository in editable mode:
```bash
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)
- Prerequisites:
+ Poetry: https://python-poetry.org/docs/
- Create a virtual environment by typing:
```bash
poetry shell
```
- A new shell will be spawned with the new environment activated.
- Install the dependencies from the `pyproject.toml` by typing:
```bash
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`:
```bash
poetry install -E notebook
```
+ Make sure to run the command below within your virtual environment (`poetry run` ensures this) by typing:
```bash
poetry run ipython kernel install --user --name=specs_poetry
```
+ The new kernel will now be available in your Jupyter kernels list.
Raw data
{
"_id": null,
"home_page": "https://github.com/mpes-kit/specsanalyzer",
"name": "specsanalyzer",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.12,>=3.8",
"maintainer_email": null,
"keywords": "specs, phoibos, arpes",
"author": "Laurenz Rettig",
"author_email": "rettig@fhi-berlin.mpg.de",
"download_url": "https://files.pythonhosted.org/packages/77/f1/1fecc17823ee8ae3f8a2ef57a27036fb9a4a0d8638379a92c49831950279/specsanalyzer-0.2.0.tar.gz",
"platform": null,
"description": "[![Documentation Status](https://github.com/OpenCOMPES/specsanalyzer/actions/workflows/documentation.yml/badge.svg)](https://opencompes.github.io/specsanalyzer/)\n[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)\n![](https://github.com/OpenCOMPES/specsanalyzer/actions/workflows/linting.yml/badge.svg)\n![](https://github.com/OpenCOMPES/specsanalyzer/actions/workflows/testing_multiversion.yml/badge.svg?branch=main)\n![](https://img.shields.io/pypi/pyversions/specsanalyzer)\n![](https://img.shields.io/pypi/l/specsanalyzer)\n[![](https://img.shields.io/pypi/v/specsanalyzer)](https://pypi.org/project/specsanalyzer)\n[![Coverage Status](https://coveralls.io/repos/github/OpenCOMPES/specsanalyzer/badge.svg?branch=main&kill_cache=1)](https://coveralls.io/github/OpenCOMPES/specsanalyzer?branch=main)\n\n# specsanalyzer\nThis is the package `specsanalyzer` for conversion and handling of SPECS Phoibos analyzer data.\n\nThis package contains two modules:\n`specsanalyzer` is a package to import and convert MCP analyzer images from SPECS Phoibos analyzers into energy and emission angle/physical coordinates.\n`specsscan` is a Python package for loading Specs Phoibos scans accquired with the labview software developed at FHI/EPFL\n\nTutorials for usage and the API documentation can be found in the [Documentation](https://opencompes.github.io/specsanalyzer/)\n\n## Installation\n\n### Pip (for users)\n\n- Create a new virtual environment using either venv, pyenv, conda, etc. See below for an example.\n\n```bash\npython -m venv .specs-venv\n```\n\n- Activate your environment:\n\n```bash\nsource .specs-venv/bin/activate\n```\n\n- Install `specsanalyzer` from PyPI:\n\n```bash\npip install specsanalyzer\n```\n\n- This should install all the requirements to run `specsanalyzer` and `specsscan`in your environment.\n\n- 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:\n\n```bash\npython -m ipykernel install --user --name=specs_kernel\n```\n\n#### Configuration and calib2d file\nThe 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 constructures, or are read from system-wide or user-defined locations (see documentation).\n\nMost importantly, conversion of analyzer data to energy/angular coordinates requires detector calibration data provided by the manufacturer. The corresponding *.calib2d file (e.g. phoibos150.calbid2d) are provided together with the spectrometer software, and need to be set in the config file.\n\n### For Contributors\n\nTo contribute to the development of `specsanalyzer`, you can follow these steps:\n\n1. Clone the repository:\n\n```bash\ngit clone https://github.com/OpenCOMPES/specsanalyzer.git\ncd specsanalyzer\n```\n\n2. Check out test data (optional, requires access rights):\n\n```bash\ngit submodule sync --recursive\ngit submodule update --init --recursive\n```\n\n2. Install the repository in editable mode:\n\n```bash\npip install -e .\n```\n\nNow you have the development version of `specsanalyzer` installed in your local environment. Feel free to make changes and submit pull requests.\n\n### Poetry (for maintainers)\n\n- Prerequisites:\n + Poetry: https://python-poetry.org/docs/\n\n- Create a virtual environment by typing:\n\n```bash\npoetry shell\n```\n\n- A new shell will be spawned with the new environment activated.\n\n- Install the dependencies from the `pyproject.toml` by typing:\n\n```bash\npoetry install --with dev, docs\n```\n\n- 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.\n\n + Install the optional dependencies `ipykernel` and `jupyter`:\n\n ```bash\n poetry install -E notebook\n ```\n\n + Make sure to run the command below within your virtual environment (`poetry run` ensures this) by typing:\n\n ```bash\n poetry run ipython kernel install --user --name=specs_poetry\n ```\n\n + The new kernel will now be available in your Jupyter kernels list.\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Python package for loading and converting SPECS Phoibos analyzer data.",
"version": "0.2.0",
"project_urls": {
"Documentation": "https://github.com/mpes-kit/specsanalyzer/docs",
"Homepage": "https://github.com/mpes-kit/specsanalyzer",
"Repository": "https://github.com/mpes-kit/specsanalyzer"
},
"split_keywords": [
"specs",
" phoibos",
" arpes"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "757334b8d2652d1335fb90956ff45de31a6cc46d21b8134d1ae33d22430e81f7",
"md5": "5feae3bbad9f447a31cdca6c139c3413",
"sha256": "398e5ec478a76cac0a943471b52dfee610131f1a61b1e98c5831dff3c0009b6f"
},
"downloads": -1,
"filename": "specsanalyzer-0.2.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5feae3bbad9f447a31cdca6c139c3413",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.12,>=3.8",
"size": 42056,
"upload_time": "2024-04-19T20:35:28",
"upload_time_iso_8601": "2024-04-19T20:35:28.130974Z",
"url": "https://files.pythonhosted.org/packages/75/73/34b8d2652d1335fb90956ff45de31a6cc46d21b8134d1ae33d22430e81f7/specsanalyzer-0.2.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "77f11fecc17823ee8ae3f8a2ef57a27036fb9a4a0d8638379a92c49831950279",
"md5": "8293cbde943f547019f69bbb76e683af",
"sha256": "d935281f1d3188f4c080717e487e218ba7b4dc96e11d49bfdbc6bd1e25a8c6be"
},
"downloads": -1,
"filename": "specsanalyzer-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "8293cbde943f547019f69bbb76e683af",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.12,>=3.8",
"size": 39364,
"upload_time": "2024-04-19T20:35:30",
"upload_time_iso_8601": "2024-04-19T20:35:30.109330Z",
"url": "https://files.pythonhosted.org/packages/77/f1/1fecc17823ee8ae3f8a2ef57a27036fb9a4a0d8638379a92c49831950279/specsanalyzer-0.2.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-04-19 20:35:30",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "mpes-kit",
"github_project": "specsanalyzer",
"github_not_found": true,
"lcname": "specsanalyzer"
}