xRHEED
📡 A versatile Python toolkit for RHEED image analysis
🔬 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)
- Install
uv. - Clone the repository:
git clone https://github.com/mkopciuszynski/xrheed
cd xrheed
- Create and activate a virtual environment.
- 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.
Release files for xrheed 2.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| xrheed-2.3.0.tar.gz | 42.4 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| xrheed-2.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size:42.4 MB
Release files / xrheed-2.3.0.tar.gz
| Download URL | xrheed-2.3.0.tar.gz |
|---|---|
| Size | 42.4 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
88a60a6fc9a0ee20655f57b50658639e7394646058671fa7c3ae8ce6c06d3d63
|
|
BLAKE2b-256 checksum How to use checksums |
f1509ea521823045922e9a54895e68428c9cdb9083d29b3d1820e82e624181e3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Release files / xrheed-2.3.0-py3-none-any.whl
| Download URL | xrheed-2.3.0-py3-none-any.whl |
|---|---|
| Size | 51.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
241438c73e3b64024c96f3ddeac9359f4679c33cc62d0f35761c5b60fa285f60
|
|
BLAKE2b-256 checksum How to use checksums |
354fbd2bbc21f5c5a82077508a1b32fb49cd9f976e4c2ae5364db5d5854d7523
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|