Skip to main content

pyRUMP

PyPI License: MIT

Measured spectrum compared against a pyRUMP simulation, showing a Si / Ru / Mn2.74Pt1 / Ru stack Measured data (black) vs. a pyRUMP simulation (red) of a Si / Ru / Mn2.74Pt1 / Ru stack.

A clean Python reimplementation of RUMP, the Rutherford backscattering spectrometry (RBS) simulation and analysis package originally written by L. R. Doolittle and M. O. Thompson at Cornell.

The original is ~22k lines of unmaintained C from the late 1980s, with no active support. This reimplementation is written using Claude Code and reproduces RUMP's physics as a tested, importable Python library, with both a batch CLI and RUMP's own interactive shell. It runs on Windows, macOS, and Linux.

Quick start

pip install pyrump

Requires Python 3.9+; numpy, scipy, and matplotlib are installed automatically, along with the physics data tables pyRUMP needs at runtime.

pyrump                         # the interactive shell, from any directory
Your wish? cd examples
Your wish? xeq MnPt.RBS         /* load the measured spectrum, above    */
Your wish? sim get MnPt.lcm     /* load its 5-layer sample description  */
Your wish? compare              /* data vs. simulation, with residuals  */

Buffer 0 is always the simulation and recomputes itself when the sample or the active buffer's parameters change — there is no "simulate" command, exactly as in the original.

Or drive it as one-off batch commands:

pyrump simulate sample.lcm --energy 2.0 --beam 4He -o out.rbs
pyrump fit sample.lcm measured.rbs --vary thickness:0 --window 190 226
pyrump plot measured.rbs --compare out.rbs -o comparison.png
pyrump convert measured.rbs measured.dat

Documentation

The full manual — interactive shell reference, CLI and Python API, worked examples, the physics writeup, and the list of RUMP quirks and defects found while porting — is at https://ikost.github.io/pyRUMP/.

Contributing

pip install -e ".[dev]"
pytest              # unit tests, no external dependencies
ruff check .

Oracle-comparison tests (pytest -m oracle) need the RUMP C source, which isn't redistributed here — see Design and validation. They skip cleanly when it's absent, so it's not needed for everyday development.

Licensing and provenance

pyRUMP is MIT licensed, and an independent reimplementation: it is not affiliated with, endorsed by, or derived from the RUMP source distribution. See Licensing and provenance for the full story, including bundled data-table provenance.

Release files for pyrump 1.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyrump 1.3.0
File Size Uploaded
pyrump-1.3.0.tar.gz 176.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyrump 1.3.0
File Interpreter ABI Platform
pyrump-1.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 379.9 kB

Release files / pyrump-1.3.0.tar.gz

Download URL pyrump-1.3.0.tar.gz
Size 176.1 kB
Tags Source
SHA-256 checksum
How to use checksums
c2621f6ae6473e202ca3809eeeead51de7f3cabd2a09d377c3dc4aa090483ec4
BLAKE2b-256 checksum
How to use checksums
4a74ecf0aa4e333458e26a2efa5298967d929e9082e1ae91cc5293c8811a1e81
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / pyrump-1.3.0-py3-none-any.whl

Download URL pyrump-1.3.0-py3-none-any.whl
Size 203.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bfa204be7b8eb255ffd109623217ea1f730175e39a7de3e400889f8752a76688
BLAKE2b-256 checksum
How to use checksums
64d80acfa1910029ef4ecb9b277e8c176b8f12fdf73220679c310d50cdbc119d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release history Release notifications | RSS feed

1.4.0

2 release files

This release

1.3.0 This release

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page