Skip to main content

An xarray-based toolkit for RHEED image analysis

Project description

xRHEED

📡 An xarray-based toolkit for RHEED image analysis.


CI Documentation Status PyPI version License: MIT Linter: ruff Package manager: uv DOI


🚧 Under construction!

The main version of this repository is under extensive development now towards the next major release v2.0.

Please use the last stable release.

🔬 What is RHEED?

Reflection High-Energy Electron Diffraction (RHEED) is an experimental technique used to monitor and control the quality of crystal surfaces.
A high-energy electron beam (∼20 keV) strikes the surface at a grazing angle (< 5°), making the method highly surface-sensitive and probing only a few atomic layers.


🎯 Project Goals

xRHEED provides a flexible and extensible Python toolkit for RHEED image analysis:

  • 🖼️ Load and preprocess RHEED images
  • 📈 Generate and analyze intensity profiles
  • ✨ Overlay predicted diffraction spot positions (kinematic theory & Ewald construction)
  • 🔄 Transform RHEED images into kx–ky space
  • 🔍 Search for reconstruction lattice constants and rotations by calculating the matching coefficient between predicted and experimental data

👉 Note: xRHEED is not a GUI application. It is designed as an xarray accessory library, intended for use in interactive environments such as Jupyter notebooks.


Installation

Using PyPI

pip install xrheed

Using pip (editable install for development)

git clone https://github.com/mkopciuszynski/xrheed
cd xrheed
pip install -e .

Using uv (with virtual environment)

  1. Install uv.
  2. Clone the repository:
git clone https://github.com/mkopciuszynski/xrheed
cd xrheed
  1. Create and activate a virtual environment.
  2. Sync dependencies:
uv sync

🚀 Quick Usage

import matplotlib.pyplot as plt
import xrheed

# Load a RHEED image
rheed_image = xrheed.load_data("rheed_image.raw", plugin="dsnp_arpes_raw")

# Show image with auto-adjusted levels
rheed_image.ri.plot_image(auto_levels=2.0)
plt.show()

# Get intensity profile and plot its origin
profile = rheed_image.ri.get_profile(center=(0, -5), width=40, height=4,
                                     show_origin=True)

📖 Citation

If you use xRHEED in your research, please cite it:

Kopciuszynski, M. ORCID (2025). xRHEED: An xarray-based toolkit for RHEED image analysis.
GitHub. https://github.com/mkopciuszynski/xrheed
DOI: 10.5281/zenodo.17099751


📚 👉 See the full documentation for tutorials and advanced examples.

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

xrheed-2.0.0a0.tar.gz (42.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

xrheed-2.0.0a0-py3-none-any.whl (42.2 kB view details)

Uploaded Python 3

File details

Details for the file xrheed-2.0.0a0.tar.gz.

File metadata

  • Download URL: xrheed-2.0.0a0.tar.gz
  • Upload date:
  • Size: 42.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for xrheed-2.0.0a0.tar.gz
Algorithm Hash digest
SHA256 3881c1eea734a61a19497847d0fdcd74aed86568077573f2dc98aff59b39bd6f
MD5 8ea5dd0a03836b2e719b3b4528fec38f
BLAKE2b-256 c08085039707d4581a15714df743fc0fb7eaf5d9c68f96f983277d0133c9a559

See more details on using hashes here.

File details

Details for the file xrheed-2.0.0a0-py3-none-any.whl.

File metadata

  • Download URL: xrheed-2.0.0a0-py3-none-any.whl
  • Upload date:
  • Size: 42.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for xrheed-2.0.0a0-py3-none-any.whl
Algorithm Hash digest
SHA256 bdbb0cc6a2713795df68b17e97c5139511857d7773d4fb039c831ff24dfa21ea
MD5 ad3249bbe96467514eb25ae5a7d7050b
BLAKE2b-256 8858e7f96be417f208bda10cc8800edb7319b39fe655f1803316bf0519992a06

See more details on using hashes here.

Supported by

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