Skip to main content

An xarray-based toolkit for RHEED image analysis

Project description

xRHEED

📡 A versatile Python toolkit for RHEED image analysis


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


🔬 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: A versatile Python 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.2.0.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.2.0-py3-none-any.whl (50.1 kB view details)

Uploaded Python 3

File details

Details for the file xrheed-2.2.0.tar.gz.

File metadata

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

File hashes

Hashes for xrheed-2.2.0.tar.gz
Algorithm Hash digest
SHA256 d902c72a321e7f1b612e8e0447cb3a9f01cb60e31b9a7663ec43d0b947cc7e1c
MD5 39b52ce2d4640575b7c47ce3f7829a5c
BLAKE2b-256 bf50bdab8f03ad333d99c807b129815cbbfc5aac03d8a6db1469065562cb4604

See more details on using hashes here.

File details

Details for the file xrheed-2.2.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for xrheed-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 633d1cc0c7daf31cd4985c0fdd2a497db5e1ac84905e36b0b105ad8f6cbcccdc
MD5 ab8c9ea6a10b524551914631a003ab82
BLAKE2b-256 c536978eb92d0586ca827d3382deb091fd832469111871cff4590f66f0be8936

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