Skip to main content

📏 diff-fret: Differentiable FRET Modeling in JAX

Tests License: MIT JAX

diff-fret provides high-performance, auto-differentiable kernels for modeling Fluorescence Resonance Energy Transfer (FRET) observables from structural ensembles.


🎯 Features

  • Differentiable Distance Distributions: Compute donor-acceptor distance distributions ($P(r)$) from atomic coordinates.
  • Förster Theory Integration: Map distances to FRET efficiency ($E$) using parameterizable Förster distances ($R_0$).
  • Orientation Uncertainty: Calculate bounds for the orientation factor $\kappa^2$ using fluorescence anisotropy (Dale, Eisinger, & Blumberg, 1979).
  • Ensemble Averaging: Native support for JAX vmap to average efficiency across conformational ensembles.
  • Hardware Acceleration: Optimized for GPU/TPU execution via XLA.

📚 Tutorials

Experience diff-fret directly in your browser:

  • Open In Colab FRET Efficiency & Accessible Volumes — Learn how to simulate Förster curves and perform AV simulations for flexible dyes.

🏗️ Technical Architecture

  • Backend: JAX (XLA-compiled).
  • Kernels: Vectorized distance and efficiency functions.
  • Differentiability: Support for gradient descent refinement of probe positions or protein conformations.

🚀 Roadmap

  • Core Förster efficiency kernels.
  • Ensemble averaging support.
  • Orientation factor ($\kappa^2$) modeling (Dale–Eisinger–Blumberg bounds).
  • Integration with dye rotamer libraries.

🚀 Installation

pip install diff-fret

🧪 Scientific Validation

  • Förster Limit: Efficiency kernels are verified to match the $1/(1 + (r/R_0)^6)$ analytical solution.
  • Auto-Diff Stability: Reverse-mode gradients are tested for stability in the $r \approx R_0$ region.
  • Ensemble Benchmarks: Average efficiency calculation validated against Monte Carlo simulations.

diff-fret is part of the differentiable biophysics ecosystem:


📖 Citation

@software{diff_fret,
  author  = {Elkins, George},
  title   = {diff-fret: Differentiable FRET modeling in JAX},
  year    = {2026},
  url     = {https://github.com/elkins-lab/diff-fret},
  version = {0.1.2}
}

⚖️ License

MIT

Metadata

Release files for diff-fret 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for diff-fret 0.1.2
File Size Uploaded Provenance Actions
diff_fret-0.1.2.tar.gz 7.9 kB With provenance Details for diff_fret-0.1.2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for diff-fret 0.1.2
File Interpreter ABI Platform Actions
diff_fret-0.1.2-py3-none-any.whl Python 3 none any Details for diff_fret-0.1.2-py3-none-any.whl

Total release size: 13.6 kB

Release files / diff_fret-0.1.2.tar.gz

Download URL diff_fret-0.1.2.tar.gz
Size 7.9 kB
Tags Source
SHA-256 checksum
How to use checksums
4fd0794931968f89f51bbe78524f93bb8b66dc263e81fdf748014fd66f1c4122
BLAKE2b-256 checksum
How to use checksums
b167d0609dc080a528dd50526dece589684b4afee8dd727c24f36449aade748f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 2, 2026.

Transparency log

Release files / diff_fret-0.1.2-py3-none-any.whl

Download URL diff_fret-0.1.2-py3-none-any.whl
Size 5.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
82ae83b2fd14b229bd2b6647a0704394951f282506de33b331426768addc9cd5
BLAKE2b-256 checksum
How to use checksums
573dbe7c42c61ba9fa2c19368a913f97ec965bdf745b97e0eb3a6dacc426c43a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 2, 2026.

Transparency log

Security for diff-fret 0.1.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for diff_fret-0.1.2.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 2, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page