Skip to content

sandialabs/PyRIID

PyRIID

Python PyPI

Welcome to PyRIID! PyRIID is a Python package providing models and data synthesis utilities supporting machine learning-based research into radioisotope-related detection, identification, and quantification.

Installation

These instructions assume you meet the following requirements:

  • Python version: 3.8 to 3.10
  • Operating systems: Windows, Mac, or Ubuntu

A virtual environment is recommended.

Tests and examples are run via Actions on many combinations of Python version and operating system. You can verify support for your platform by checking the workflow files.

For Use

To use the latest version on PyPI (note: changes are slower to appear here), run:

pip install riid

For the latest features, run:

pip install git+https://github.com/sandialabs/pyriid.git@main

For Development

If you are developing PyRIID, clone this repository and run:

pip install -e ".[dev]"

If you have trouble with Pylance resolving imports for an editable install, try this:

pip install -e ".[dev]" --config-settings editable_mode=compat

Examples

Examples for how to use this package can be found here.

Tests

Unit tests for this package can be found here.

Run all unit tests with the following:

python -m unittest tests/*.py -v

You can also run one of the run_tests.* scripts, whichever is appropriate for your platform.

Docs

API documentation can be found here.

Build the docs with the following:

pip install -r pdoc/requirements.txt
pdoc riid -o docs/ --html --template-dir pdoc

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate and adhere to our code of conduct.

Contacts

Maintainers and authors can be found here.

Copyright

Full copyright details can be found here.

Acknowledgements

Thank you to the U.S. Department of Energy, National Nuclear Security Administration, Office of Defense Nuclear Nonproliferation Research and Development (DNN R&D) for funding that has led to version 2.x.

Additionally, thank you to the following individuals who have provided invaluable subject-matter expertise:

  • Paul Thelen (also an author)
  • Ben Maestas
  • Greg Thoreson
  • Michael Enghauser
  • Elliott Leonard