Skip to main content

Automated fitting of XRD peaks using Pseudo-Voight fits

Project description

PyPI version Documentation Status DOI Binder .github/workflows/test_notebooks.yaml

Introduction

xrdfit is a Python package for fitting the diffraction peaks in synchrotron X-ray diffraction (SXRD) and XRD spectra. It is designed to be an easy to use tool for quick analysis of spectra. Features are included for automating fitting over many spectra to enable tracking of peaks as they shift throughout an experiment. xrdfit uses the Python module lmfit for the underlying fitting. xrdfit is designed to be accessible for all researchers who need to process SXRD spectra and so does not require a detailed knowledge of programming or fitting.

Installation

To install as a Python module, type

python -m pip install xrdfit

from the root directory. For developers, you should install in linked .egg mode using

python -m pip install -e .

If you are using a Python virtual environment, you should activate this first before using the above commands.

Documentation

Documentation including an API reference is provided at: https://xrdfit.readthedocs.io/en/latest/

The majority of the documentation is provided as example driven interactive Jupyter notebooks. These are included along with the source code in the "tutorial notebooks" folder. If this package was downloaded from pip, the source can be found on GitHub: https://github.com/LightForm-group/xrdfit

Try it out

You can try out xrdfit directly in your browser with Binder by clicking here.

Note that Tutorial Notebook 4 will not run correctly in Binder as it requires the download of a supplementary dataset which is not included in the source repository due to its size.

Compatibility

The code was developed and tested with Python version 3.8. The minimum required Python version is 3.6. If you install the dependencies of xrdfit using the specification in requirements.txt, this will use the same package versions used by the developers. While this is good for reproducibility, it is worth noting that if you are using a newer Python version (> 3.8), some of these packages may not have binary wheels for your version and may require compilation.

Required libraries

This module uses the Python libraries:

The following libraries are required to use the tutorial documentation workbooks:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xrdfit-1.2.0.tar.gz (3.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

xrdfit-1.2.0-py3-none-any.whl (30.6 kB view details)

Uploaded Python 3

File details

Details for the file xrdfit-1.2.0.tar.gz.

File metadata

  • Download URL: xrdfit-1.2.0.tar.gz
  • Upload date:
  • Size: 3.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.9.1

File hashes

Hashes for xrdfit-1.2.0.tar.gz
Algorithm Hash digest
SHA256 7f1597fc80fe95b4fd24dc7eec0716ae39119c992adf64c22aeb9f336b10e370
MD5 14bddc6bf43e1b0e5cb138f8feac800c
BLAKE2b-256 dfaae17b13259fca71bc811956c9bb32647d0c151ba3ce35c5bb2bcc10d16373

See more details on using hashes here.

File details

Details for the file xrdfit-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: xrdfit-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 30.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.9.1

File hashes

Hashes for xrdfit-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 817ca0e3d55b08f43e5c9d0d4ba746b42309995d01d49e3efe430d513a1b1428
MD5 a70c21deb57deaff6321ffb17e9bfe40
BLAKE2b-256 98b9f2c510563db7634673748a819a9a591a75cff8cf8b4405f2f1820219f011

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page