Skip to content

A Python package for the quantitative analysis of the interaction of x-rays with matter.

Notifications You must be signed in to change notification settings

ehsteve/roentgen

Repository files navigation

Overview

docs Documentation Status
build status Build Status Black linting Test coverage on codecov
package PyPI Package latest release PyPI Package monthly downloads PyPI Wheel

A Python package for the quantitative analysis of the interaction of energetic x-rays with matter. This package is named after one of the discoverers of X-rays, Wilhelm Röntgen. This is a SunPy-affiliated package though it does not depend on the sunpy package. We appreciate their support!

Installation

To install this package:

pip install roentgen

To install this package for development:

pip install -e .'[dev]'

Documentation

Our documentation is hosted on readthedocs.

Graphical User Interface

This package provides a GUI interface to quickly investigate the absorption and transmission of x-rays through different materials. This tool is similar to that provided the Center for X-ray Optics. To install the dependencies to use the GUI:

pip install -e .'[gui]'

You can then run it locally with the following command:

bokeh serve --show <roengten_directory>/gui

An online version of this tool (usually) working at https://roentgen-069cf7954bb2.herokuapp.com/gui.

Data Sources

This package includes on a number of data files which were translated and imported from a few sources. The package developers would like to thank the following data providers

  • The U.S National Institute of Standards and Technology (NIST)
  • The Center for X-ray Optics and Advanced Light Source at the Lawrence Berkeley National Laboratory

For more information see the README in the data directory.

You can find a comparison of the output of this package with that provided by the Center for X-ray Optics on our documentation.

Contributing

Contributions are welcome, and they are greatly appreciated! Every little bit helps, and credit will always be given. Have a look at the great guide from the sunpy project which provides advice for new contributors.

Code of Conduct

When you are interacting with members of this community, you are asked to follow the SunPy Code of Conduct.