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.0.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.0.0-py3-none-any.whl (42.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: xrheed-2.0.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.7

File hashes

Hashes for xrheed-2.0.0.tar.gz
Algorithm Hash digest
SHA256 bce2f0d79e96e8dd110b7c65426374ac9eb9423a48de2a7a75c533ed1f9d5459
MD5 2f79f6742dd25944728be3a77e020df6
BLAKE2b-256 873c42368a05284f29559fa4cf1a61156a96699289f1e832b239d79bb23013dc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: xrheed-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 42.7 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4d8b839ca5cd3a4d7448ed244f142ef7a3818247a36acd6620fd2e3a3919fa26
MD5 66c6f37b8c6d26161688bd220664d3ae
BLAKE2b-256 593eb1cb6319ed6488ed4eb9b09c154ef05f8f13584577f5fbd2e116a7e6f10d

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