No project description provided
Project description
MDRestraintsGenerator
MDRestraintsGenerator
A framework for generating restraints for MD simulations (from MD simulations).
The code currently only looks at BoreschRestraints, but we aim to extend to:
- Hardwall restraints
- Harmonic restraints
- Attach Pull Restraint style restraints
- Complex multidimensional restraints
Note: This is non-mature code, a lot is left to do and major changes will happen at any time.
Installation
Installation is currently only possible from source. This can be done in the following manner:
git clone https://github.com/bigginlab/MDRestraintsGenerator.git
cd MDRestraintsGenerator
pip install .
How to use
The code currently only implements a means of deriving Boresch restraints for GROMACS simulations. To achieve this, the following underlying methods are provided:
- A function to pick stable points in ligands for restraint attachment
(
search.find_ligand_atoms
). - A class for picking host restraint addition points (
search.FindHostAtoms
). - A class for analysing a list of possible Boresch restraints over a given MD simulation and
finding the most stable choice of restraint atoms (
restraints.FindBoreschRestraint
).
Boresch restraints are implemented under the BoreschRestraint class. When using
restraints.FindBoreschRestraint
, once run (using the run()
method), the preffered restraint
will be stored as such an object under the restraint
attribute. The BoreschRestraint class
offers three useful methods:
- The
plot()
function which outputs images of the distributions for the each component of the Boresch restraint (one bond, two angles, three dihedrals). In addition to the histograms, indicating both the mean and the picked frame positions, Q Q plots are also given to show how close to normality the distribution is. The latter can be useful when trying to work out if the chosen variable may occupy different binding orientations. - The
write()
function, which writes out theClosestRestraint.gro
andBoreschRestraint.top
files. These are based on the "picked frame", either user supplied or, in most cases, automatically obtained via theFindBoreschRestraint
routine as the "frame closest to the mean across all bond/angle/dihedral distributions". This.gro
file outputs the system at that frame, and the.top
file contains the "intermoecular_interactions" section of a GROMACS.top
file. This can then be pasted into an existing.top
file to apply the restraint. - The
standard_state
function, which currently resturns the analytical standard state correction for the restraint addition.
An example use script is provided under scripts.BoreschRestraintGMX.py
. Documentation docstrings
are provided for all functions and classes. These can be accessed by calling help(function)
.
Testing
A set of unit tests are provided under MDRestraintsGenerator.tests
. To run these you will need
to have pytest
installed. The tests can be run in the following manner:
pytest -v MDRestraintsGenerator.tests
Dependencies
- MDAnalysis
- NumPy
- SciPy
- Matplotlib
Copyright
Copyright (c) 2020, Irfan Alibay
Acknowledgements
Project based on the Computational Molecular Science Python Cookiecutter version 1.3.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file MDRestraintsGenerator-0.2.0.tar.gz
.
File metadata
- Download URL: MDRestraintsGenerator-0.2.0.tar.gz
- Upload date:
- Size: 7.6 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9158fb33e8fdffd35b8e8b54e71991d4bd690bc4b43b0d8f7b5cb178ad438a1c |
|
MD5 | 242e0256e063272fb15ffcf25182d367 |
|
BLAKE2b-256 | f550df7ef3a12a7c9733904aa073a37856752608bb6f33ea11e018c6d01f2547 |
Provenance
File details
Details for the file MDRestraintsGenerator-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: MDRestraintsGenerator-0.2.0-py3-none-any.whl
- Upload date:
- Size: 7.6 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7a00dd0dbd2c4aacd1e70b4aec63ec96715dcc48ff25efcc93947a95ac06307b |
|
MD5 | f1d514dbad628f47b3e9532bc015c826 |
|
BLAKE2b-256 | 8265ac77e8de9faab0e06f5d3554dd95c0ccf17222a0d5ceaff7310471f7d6d7 |