Skip to content

Repository files navigation

πŸ§ͺ diff-hdx: Differentiable HDX-MS Prediction in JAX

Tests License: MIT JAX

diff-hdx is a high-performance Python library for differentiable Hydrogen-Deuterium Exchange (HDX-MS) prediction. Built on JAX, it provides auto-differentiable kernels to bridge structural ensembles and experimental protection factors.


🎯 Features

  • Differentiable SASA Kernels: Hardware-accelerated approximations of Solvent Accessible Surface Area using Gaussian occlusion models.
  • Protection Factor Modeling: Implementations of LinderstrΓΈm-Lang models for H-exchange rates ($PF$).
  • Kinetic Simulation: Model time-dependent mass shifts using EX2 kinetics (Hvidt & Nielsen, 1966).
  • Gradient-Based Refinement: Optimize protein structures or ensembles directly against experimental HDX-MS time-curves.
  • Vectorized Execution: Native support for vmap to handle large conformational ensembles.

πŸ“š Tutorials

Experience diff-hdx directly in your browser:

  • Open In Colab HDX-MS Prediction & Kinetics β€” Learn how to simulate intrinsic rates, protection factors, and deuterium uptake curves.

πŸ—οΈ Technical Architecture

  • Backend: JAX (XLA-compiled) β€” supports CPU, GPU, and TPU.
  • Differentiability: Full support for forward and reverse-mode autodiff.
  • Integration: Compatible with biotite for structural parsing and diff-biophys for ensemble averaging.

πŸš€ Roadmap

  • Initial differentiable SASA and $ln P$ kernels.
  • Integration with JAX vmap for ensemble averaging.
  • Residue-specific intrinsic exchange rates (Bai et al. 1993) β€” all 20 amino acids.
  • Integration with MD trajectory loaders.

πŸš€ Installation

pip install diff-hdx

πŸ§ͺ Scientific Validation

  • Parity Checks: Kernels are validated against standard non-differentiable implementations (e.g., biotite SASA) to ensure physical accuracy.
  • Gradient Tests: All kernels are verified using JAX's gradcheck to ensure numerically stable derivatives across the full support.
  • Ensemble Consistency: Verified against diff-biophys ensemble averaging for IDP conformational ensembles.

πŸ”— Related Projects

diff-hdx is part of the differentiable biophysics ecosystem:

  • diff-biophys β€” Core differentiable biophysics engine.
  • diff-fret β€” Differentiable FRET modeling.
  • diff-epr β€” Differentiable EPR/DEER simulation.
  • synth-pdb β€” Synthetic structure generation.

πŸ“– Citation

@software{diff_hdx,
  author  = {Elkins, George},
  title   = {diff-hdx: Differentiable HDX-MS prediction in JAX},
  year    = {2026},
  url     = {https://github.com/elkins-lab/diff-hdx},
  version = {0.1.2}
}

βš–οΈ License

MIT