Skip to main content

Differentiable EPR distance distribution modeling in JAX

Project description

📻 diff-epr: Differentiable EPR/DEER Simulation in JAX

Tests License: MIT JAX

diff-epr provides differentiable kernels for simulating EPR distance distributions (DEER/PELDOR) from structural ensembles and spin-label rotamers.


🎯 Features

  • Spin-Label Modeling: Differentiable distance calculations between paramagnetic centers.
  • Orientation Selection: Support for the Polyhach 5-angle formula (Polyhach et al., 2007) to model relative domain orientations.
  • Time-Domain Simulation: Simulate DEER modulation traces $V(t)$ with parameterizable background decay and modulation depth.
  • Rotamer Library Integration: Support for weighted rotamer averages in distance distribution calculations.
  • Hardware Acceleration: GPU-optimized distance kernels via JAX.

🏗️ Technical Architecture

  • Backend: JAX (XLA-compiled).
  • Physics: Dipolar coupling frequency ($\omega$) based kernels.
  • Performance: $O(N)$ scaling for distance distribution integration.

🚀 Roadmap

  • Core DEER trace simulation kernels.
  • Background decay and modulation depth parameters.
  • Integration with MMM (Multi-Scale Modeling of Macromolecules) rotamer libraries.
  • Full orientation-dependence support.

🚀 Installation

pip install diff-epr

🧪 Scientific Validation

  • Dipolar Frequency Parity: Coupling frequencies verified against the Pake pattern $1/r^3$ dependence.
  • Time-Domain Accuracy: DEER traces validated for parity against standard simulation tools (e.g., DeerAnalysis/MMM).
  • Auto-Diff Gradients: Differentiable distance-to-signal kernels verified with JAX grad.

🔗 Related Projects

diff-epr is part of the differentiable biophysics ecosystem:


📖 Citation

@software{diff_epr,
  author  = {Elkins, George},
  title   = {diff-epr: Differentiable EPR/DEER simulation in JAX},
  year    = {2026},
  url     = {https://github.com/elkins/diff-epr},
  version = {0.1.0}
}

⚖️ License

MIT

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

diff_epr-0.1.0.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

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

diff_epr-0.1.0-py3-none-any.whl (5.6 kB view details)

Uploaded Python 3

File details

Details for the file diff_epr-0.1.0.tar.gz.

File metadata

  • Download URL: diff_epr-0.1.0.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for diff_epr-0.1.0.tar.gz
Algorithm Hash digest
SHA256 eca30ba3542600205dddb0af9eede9def357a41a7dbc552f518d6428802a2199
MD5 56a2f39f299bceb6ad7fe7a94956d922
BLAKE2b-256 c3508169b73168aae1dc0fcd8854d4889ec5b0e2cee68db198cfa4dd881abc46

See more details on using hashes here.

File details

Details for the file diff_epr-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: diff_epr-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for diff_epr-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b65213c6ed3bf934df959de012bd9ea8403ab7c9234615f0e42d1bb3afa402c1
MD5 414ddb3fdae4de18ca4a215eb4c39a40
BLAKE2b-256 656c1b1795bc107b35895a460ee309be60f13c78df829b81d6445ab606350ef9

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