Skip to main content

3D X-ray and electron scattering calculator using Debye equation

Project description

Debye3D

3D scattering calculator using the Debye equation for X-ray and electron scattering.

Description

debye3d is a Python package for computing 2D projections of 3D scattering patterns from atomic structures using the Debye scattering equation. It supports GPU (PyTorch) and CPU (Numba) acceleration for high-performance calculations.

Installation

Installation from PyPI

pip install debye3d

Installation with GPU acceleration

pip install debye3d[gpu]

Installation with all features

pip install debye3d[full]

Installation from source (development)

git clone https://github.com/nicoratel/Debye3D.git
cd Debye3D
pip install -e .

Dependencies

Required

  • numpy >= 1.20.0
  • scipy >= 1.7.0
  • matplotlib >= 3.3.0
  • ase >= 3.22.0
  • pyyaml >= 5.4.0
  • tqdm >= 4.60.0

Optional

  • GPU: torch >= 1.9.0
  • CPU acceleration: numba >= 0.54.0
  • Detectors: pyFAI >= 0.20.0
  • DebyeCalculator: debyecalculator >= 1.0.0

Usage

Refer to Jupyter notebooks for application examples

Key Features

  • 🔬 3D scattering calculation using Debye equation
  • ⚡ GPU support (PyTorch) and CPU acceleration (Numba)
  • 🎯 Atomic form factors (Cromer-Mann and Lobato parametrizations)
  • 🌐 Orientation averaging with adaptive Fibonacci grid
  • 📊 Integration with pyFAI for detector simulations
  • 💾 Utilities for saving and visualizing data

Package Structure

debye3d/
├── debye3d.py                          # Main Debye calculation functions
├── compute_f0.py                       # Atomic form factors
├── lobato_scattering.py                # Lobato parametrizations
├── adaptative_fibonacci.py             # Adaptive Fibonacci grid
├── generate_paracrystal_assembly.py    # Supercell generation
├── utilities.py                        # Utilities (I/O, visualization)
└── elements_info.yaml                  # Element database

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

debye3d-0.1.1.tar.gz (55.8 kB view details)

Uploaded Source

Built Distribution

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

debye3d-0.1.1-py3-none-any.whl (55.0 kB view details)

Uploaded Python 3

File details

Details for the file debye3d-0.1.1.tar.gz.

File metadata

  • Download URL: debye3d-0.1.1.tar.gz
  • Upload date:
  • Size: 55.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for debye3d-0.1.1.tar.gz
Algorithm Hash digest
SHA256 eea5f3af15c02bcb290e7b3348a8d366a721c4afd52bc21a7835742040587553
MD5 392516bbf804f3cfe8e65deed8cc01e0
BLAKE2b-256 34cae1085ca0fa42ddf5324255e4589b4ba5122ee88ef890b018ae1f76112a21

See more details on using hashes here.

File details

Details for the file debye3d-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: debye3d-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 55.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for debye3d-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 187f635d2c04a3d2c8eadc92362f2888b4a60d8207b16aaff7e28790476160d7
MD5 baa3a7a635a3edcd62e8d4ce6cdf1e62
BLAKE2b-256 c4484f9734ae0379e37f15cc1823e91da785b6b326cd12bc95ad11fb5a9f1898

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