Skip to content
This repository was archived by the owner on Feb 23, 2026. It is now read-only.

Releases: TKanX/potentials

v0.1.0

15 Jan 10:42
5e2eedb

Choose a tag to compare

🚀 Features

  1. Comprehensive Potential Library

    • 7 Pair Potentials: Lennard-Jones, Mie (n-m), Buckingham, Coulomb, Yukawa, Gaussian, Soft sphere
    • 6 Bond Potentials: Harmonic, GROMOS96, Morse, FENE, Cubic, Quartic
    • 5 Angle Potentials: Harmonic, Cosine, Linear, Urey-Bradley, Cross term
    • 4 Torsion Potentials: Periodic cosine, OPLS Fourier, Ryckaert-Bellemans, Harmonic
    • 3 Improper Potentials: Harmonic, Cosine, Distance-based
    • 2 H-Bond Potentials: DREIDING 12-10, LJ-Cosine
    • 6 Meta Wrappers: Cutoff, Shift, Switch, Softcore, Scaled, Sum
  2. High-Performance Architecture

    • Zero Heap Allocation: All computations on the stack, suitable for tight loops and embedded systems.
    • Branchless Kernels: Mask-based conditionals for vectorization-friendly code.
    • Optimized Algorithms: Precomputed coefficients, shared subexpressions, Horner's method, Chebyshev recursion.
    • ~650M interactions/sec: LJ energy+force throughput on modern CPUs.
  3. Physically Accurate

    • Analytically Correct: All formulas verified against literature; numerical derivative validation for every potential.
    • CODATA 2018 Constants: SI-compliant physical constants with unit conversion utilities.
    • Force Field Compatible: Supports AMBER, CHARMM, OPLS, GROMOS, and DREIDING conventions.
  4. Portability & Usability

    • no_std Support: Fully compatible with embedded devices, kernels, and WASM (via libm).
    • Generic Precision: Unified API for both f32 and f64 via the Vector trait.
    • Dual API: High-level structural API for safety, low-level trait API for raw performance.

New Contributors

Full Changelog: https://github.com/TKanX/potentials/commits/v0.1.0