Skip to main content

Time-Resolved Ensemble Generator using Coarse-Grained ENM Langevin Dynamics

Project description

synth-dynamics: Time-Resolved Ensemble Generator

synth-dynamics is a fast, lightweight molecular dynamics engine designed to generate meaningful conformational ensembles of proteins. Unlike full-atom simulations (like GROMACS or Amber), synth-dynamics uses a Coarse-Grained Anisotropic Network Model (ANM) and Langevin dynamics to capture the essential global motions of proteins with minimal computational overhead.

This tool is designed to bridge the gap between static structures and time-averaged experimental observables, such as NMR relaxation parameters, SAXS Kratky plots, or FRET efficiency distributions.

Key Features

  • Coarse-Grained Simulation: Models proteins using C-alpha atoms and harmonic "spring" networks.
  • Fast Langevin Engine: Propagates coordinates using a stable, overdamped Langevin integrator.
  • Experimental Integration: Perfect for generating the structural ensembles needed for synth-nmr or synth-saxs.
  • Easy to Use: Simple API for loading PDBs, configuring forcefields, and running simulations.
  • Extensively Tested: 100% test coverage ensuring reliability and correctness.

Installation

synth-dynamics requires Python 3.10+ and the following dependencies:

pip install numpy MDAnalysis scipy

To install the documentation theme:

pip install sphinx_rtd_theme

Quick Start

Running a simulation is straightforward:

from synth_dynamics import System, ANMForceField, LangevinIntegrator, Simulation

# 1. Load the system (automatically filters for C-alpha atoms)
system = System("protein.pdb")

# 2. Define the Anisotropic Network Model forcefield
# Cutoff (15A) and spring constant determine the flexibility
ff = ANMForceField(system.equilibrium_coords, cutoff=15.0, spring_constant=1.0)

# 3. Initialize the Langevin integrator (dt in fs, T in Kelvin)
integrator = LangevinIntegrator(dt=0.1, temperature=300.0, friction=1.0)

# 4. Run and save the trajectory
sim = Simulation(system, ff, integrator)
sim.run(n_steps=1000, output_path="trajectory.dcd", stride=10)

Documentation

Full API documentation and usage guides are available in the docs/ directory. You can build the HTML documentation locally:

cd docs
sphinx-build -b html . _build/html

Testing

To run the test suite and verify coverage:

PYTHONPATH=. pytest --cov=synth_dynamics tests/

License

This project is licensed under the MIT License - see the LICENSE file for details (if applicable).

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

synth_dynamics-0.1.0.tar.gz (7.7 MB view details)

Uploaded Source

Built Distribution

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

synth_dynamics-0.1.0-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for synth_dynamics-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f5e6d7b7519c6c5acee3a35c14fef373ed3e612fcecca3985a36ce59405078bc
MD5 fe1c5a2602f56d41c39218413885a00e
BLAKE2b-256 3c3c9ba3bc765ec878863394f64308bba10474494750c1d0f8e85205ca2ab676

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for synth_dynamics-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ace460ef14269d5ceef8e169401b9faac80187a35be7933675190f380b3b2953
MD5 4a2ae56df2d8cb99b7372b5dbb0ab3f8
BLAKE2b-256 2bea0f286e8249938ecc0b0bd0d3484a6f8989f7f45afd10ac17acb8ff87b55a

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