Skip to content

OlaKenji/ARpest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ARpest

Angle Resolved Photoemission Electron Spectroscopy Tool

A modern, interactive GUI application for analysing ARPES (Angle-Resolved Photoemission Spectroscopy) data from multiple synchrotron beamlines. Coding or scripting is not needed.

Python PyQt5 License

Features

Core Capabilities

  • Multi-beamline support: Load data from Diamond Light Source (I05) and MAX IV (Bloch)
  • Multiple file formats: .nxs, .zip, .ibw
  • 2D, 3D & 4D visualisation: Single cuts and photon energy/deflector angle scans
  • Interactive visualisation: Real-time cursor tracking with live EDC/MDC updates
  • Proces the data: Convert to k-space, correct the Fermi level based on a reference measurent etc.
  • State management: Undo/redo functionality with complete processing history
  • Analyse the data: Fit the process data
  • Tabbed interface: Work with multiple datasets simultaneously
  • Save dataset: Save and comeback where you where

Performance

  • Optimized rendering for smooth visualisation
  • Fast numpy slicing for data extraction
  • In-place data updates

🎥 Live Demo

Watch real-time interaction with a 3D ARPES dataset: ➡️ https://youtu.be/LxjP9kRJ8GY


Installation

Requirements

  • Python 3.7 or higher
  • PyQt5
  • NumPy
  • SciPy
  • h5py
  • igor
  • matplotlib
  • pyqtgraph

Quick Install

# Install ARpest from PyPI
pip install arpest

# Launch the GUI
arpest

Usage

Basic Workflow

  1. Launch the application:

    arpest
  2. Configure settings:

    • Click ⚙️ Settings to set default data directory
    • Choose preferred colormap
    • Settings persist between sessions
  3. Load data:

    • Click the 📂 Open File button in the toolbar
    • Select your ARPES data file (.nxs, .h5, .zip, or .ibw)
  4. Interactive visualisation:

    • Click & drag: Continuously update cuts in real-time
    • 3D data: Use energy slider to navigate through different energy slices
  5. Analyse and process the data:

    • Apply data processing: Convert to k-space, correct the Fermi level based on a reference measurent and more
    • Analyse by fitting the processed data: Fit EDC/MDC curves

Supported Beamlines

Diamond Light Source - I05

MAX IV - Bloch

Roadmap

  • Additional beamline support (SLS, SOLEIL, etc.)
  • Additional analysis methods

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License.


Citation

If you use ARpest in your research, please cite:

@article{ARpest2025,
title = {ARpest: A GUI-driven ARPES analysis platform},
journal = {SoftwareX},
volume = {34},
pages = {102573},
year = {2026},
issn = {2352-7110},
doi = {https://doi.org/10.1016/j.softx.2026.102573},
url = {https://www.sciencedirect.com/science/article/pii/S2352711026000671},
author = {Ola Kenji Forslund},
}

Screenshots

3D Fermi Surface Mapping

3D Analysis

Fermi surface with momentum cuts. Data from Phys. Rev. Lett. 134, 126602 (https://doi.org/10.1103/PhysRevLett.134.126602).


About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages