An easy to use docking library.
Project description
docking itself through university
Introduction
dockerasmus is a version-agnostic Python module that was created to quickly solve docking problems, as part of a Python assignment from the M1 BIBS of the Université Paris-Saclay.
dockerasmus provides a generic implementation of a scoring function, which can be used with several components to compute the score of a docking conformation involving two proteins. It is backend agnostic, and every scoring component can be rewritten with any library supporting numpy arrays.
Example
Use dockerasmus to compute the score of the barnase-barstar complex using the scoring function defined by Cornell et al:
from dockerasmus.pdb import Protein
from dockerasmus.score import ScoringFunction, components
# Import the pdb files (supports gzipped files or plain .pdb)
barnase = Protein.from_pdb_file("tests/data/barnase.native.pdb.gz")
barstar = Protein.from_pdb_file("tests/data/barstar.native.pdb.gz")
# Create a scoring function with two components
scoring_function = ScoringFunction(components.LennardJones,
components.Coulomb)
# Call the scoring function on the barnase (receptor)
# and the barstar (ligand)
scoring_function(barnase, barstar) # -84.94...
API
dockerasmus provides several submodules:
a parser & object model for the Protein Data Bank (dockerasmus.pdb)
a scoring library (dockerasmus.score)
a soft 3D engine for spatial transformations (dockerasmus.spatial)
See the API reference from the online documentation to get more details.
License
dockerasmus is fully open-source and is released under the GPLv3.