Metadata-Version: 2.5
Name: easyreflectometry
Version: 1.9.0
Summary: Reflectometry data analysis
Project-URL: Documentation, https://easyscience.github.io/reflectometry-lib
Project-URL: Release Notes, https://github.com/easyscience/reflectometry-lib/releases
Project-URL: Source Code, https://github.com/easyscience/reflectometry-lib
Project-URL: Issue Tracker, https://github.com/easyscience/reflectometry-lib/issues
Author: EasyScience contributors
License-Expression: BSD-3-Clause
License-File: LICENSE
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.11
Requires-Dist: asteval
Requires-Dist: bumps
Requires-Dist: easyscience<3,>=2.5.1
Requires-Dist: h5py
Requires-Dist: orsopy>=1.2
Requires-Dist: plotly
Requires-Dist: pooch
Requires-Dist: refl1d>=1.0.0
Requires-Dist: refnx
Requires-Dist: scipp
Requires-Dist: scipy
Requires-Dist: svglib<1.6; platform_system == 'Linux' or sys_platform == 'darwin'
Requires-Dist: xhtml2pdf
Provides-Extra: dev
Requires-Dist: arviz; extra == 'dev'
Requires-Dist: build; extra == 'dev'
Requires-Dist: copier; extra == 'dev'
Requires-Dist: docstripy; extra == 'dev'
Requires-Dist: format-docstring; extra == 'dev'
Requires-Dist: gitpython; extra == 'dev'
Requires-Dist: interrogate; extra == 'dev'
Requires-Dist: jinja2; extra == 'dev'
Requires-Dist: jupyterquiz; extra == 'dev'
Requires-Dist: jupytext; extra == 'dev'
Requires-Dist: mike; extra == 'dev'
Requires-Dist: mkdocs; extra == 'dev'
Requires-Dist: mkdocs-autorefs; extra == 'dev'
Requires-Dist: mkdocs-jupyter; extra == 'dev'
Requires-Dist: mkdocs-markdownextradata-plugin; extra == 'dev'
Requires-Dist: mkdocs-material; extra == 'dev'
Requires-Dist: mkdocs-plugin-inline-svg; extra == 'dev'
Requires-Dist: mkdocstrings-python; extra == 'dev'
Requires-Dist: nbmake; extra == 'dev'
Requires-Dist: nbqa; extra == 'dev'
Requires-Dist: nbstripout; extra == 'dev'
Requires-Dist: plopp; extra == 'dev'
Requires-Dist: plotly; extra == 'dev'
Requires-Dist: pre-commit; extra == 'dev'
Requires-Dist: pydoclint; extra == 'dev'
Requires-Dist: pytest; extra == 'dev'
Requires-Dist: pytest-cov; extra == 'dev'
Requires-Dist: pytest-xdist; extra == 'dev'
Requires-Dist: pyyaml; extra == 'dev'
Requires-Dist: radon; extra == 'dev'
Requires-Dist: ruff; extra == 'dev'
Requires-Dist: spdx-headers; extra == 'dev'
Requires-Dist: validate-pyproject[all]; extra == 'dev'
Requires-Dist: versioningit; extra == 'dev'
Description-Content-Type: text/markdown

<p>
  <picture>
    <!-- light mode logo -->
    <source media='(prefers-color-scheme: light)' srcset='https://raw.githubusercontent.com/easyscience/assets-branding/refs/heads/master/easyreflectometry/logos/light.svg'>
    <!-- dark mode logo -->
    <source media='(prefers-color-scheme: dark)' srcset='https://raw.githubusercontent.com/easyscience/assets-branding/refs/heads/master/easyreflectometry/logos/dark.svg'>
    <!-- default logo == light mode logo -->
    <img src='https://raw.githubusercontent.com/easyscience/assets-branding/refs/heads/master/easyreflectometry/logos/light.svg' alt='EasyReflectometry'>
  </picture>
</p>

**EasyReflectometry** is a Python library for simulating reflectometry
profiles from layered sample models and refining their parameters
against experimental data.

It supports multiple contrasts and simultaneous fitting, polarised
reflectometry channels, Bayesian (MCMC) analysis, ORSO data and model
import/export, and a choice of calculation engines (refnx or refl1d).

<!-- HOME REPOSITORY SECTION -->

**EasyReflectometry** is built on the
[EasyScience framework](https://easyscience.org) and maintained by the
[European Spallation Source (ESS)](https://ess.eu).

## Installation

**EasyReflectometry** requires Python 3.11–3.13 and is available on
PyPI:

```bash
pip install easyreflectometry
```

The `dev` extra is only needed if you want to contribute to the library
or build the documentation. It adds the tooling for testing (pytest),
linting and formatting (ruff, pre-commit), building the docs (mkdocs)
and running the tutorial notebooks. To install it from PyPI:

```bash
pip install 'easyreflectometry[dev]'
```

See the
[Installation & Setup](https://easyscience.github.io/reflectometry-lib/latest/installation-and-setup)
guide for the recommended Pixi-based setup.

License:
[BSD 3-Clause](https://github.com/easyscience/reflectometry-lib/blob/master/LICENSE)

## Useful Links

### For Users

- 📖
  [Documentation](https://easyscience.github.io/reflectometry-lib/latest)
- 🚀
  [Getting Started](https://easyscience.github.io/reflectometry-lib/latest/installation-and-setup)
- 🧪
  [Tutorials](https://easyscience.github.io/reflectometry-lib/latest/tutorials)
- 💬
  [Get in Touch](https://easyscience.github.io/reflectometry-lib/latest/introduction/#get-in-touch)
- 🧾
  [Citation](https://easyscience.github.io/reflectometry-lib/latest/introduction/#citation)

### For Contributors

- 🧑‍💻 [Source Code](https://github.com/easyscience/reflectometry-lib)
- 🐞
  [Issue Tracker](https://github.com/easyscience/reflectometry-lib/issues)
- 💡
  [Discussions](https://github.com/easyscience/reflectometry-lib/discussions)
- 🤝
  [Contributing Guide](https://github.com/easyscience/reflectometry-lib/blob/master/CONTRIBUTING.md)
- 🛡
  [Code of Conduct](https://github.com/easyscience/.github/blob/master/CODE_OF_CONDUCT.md)
