Hotspot Docking API

The hotspots.hs_docking module contains functionality which faciliates the automatic application of insights from Fragment Hotspot Maps to docking.

This module is designed to extend the existing CSD python API

More information about the CSD python API is available:
  • The Cambridge Structural Database C.R. Groom, I. J. Bruno, M. P. Lightfoot and S. C. Ward, Acta Crystallographica Section B, B72, 171-179, 2016 [DOI: 10.1107/S2052520616003954]

  • CSD python API 2.0.0 documentation

More information about the GOLD method is available:
  • Development and Validation of a Genetic Algorithm for Flexible Docking G. Jones, P. Willett, R. C. Glen, A. R. Leach and R. Taylor, J. Mol. Biol., 267, 727-748, 1997 [DOI: 10.1006/jmbi.1996.0897]

class hotspots.hs_docking.DockerSettings(_settings=None)[source]

A class to handle the integration of Fragment Hotspot Map data with GOLD

This class is designed to mirror the existing CSD python API for smooth integration. For use, import this class as the docking settings rather than directly from the Docking API.

>>> from ccdc.docking import Docker
>>> from ccdc.protein import Protein
>>> from hotspots.calculation import Runner
>>> from hotspots.hs_docking import DockerSettings
>>> protein = Protein.from_file("1hcl.pdb")
>>> runner = Runner()
>>> hs = runner.from_protein(protein)
>>> docker.settings.add_protein_file("1hcl.pdb")
>>> docker.settings.add_ligand_file("dock_me.mol2", ndocks=25)
>>> constraints = docker.settings.HotspotHBondConstraint.from_hotspot(protein=docker.settings.proteins[0], hr=hs)
>>> docker.settings.add_constraint(constraints)
>>> docker.dock()
>>> docker.Results(docker.settings).ligands
class HotspotHBondConstraint(atoms, weight=5.0, min_hbond_score=0.001, _constraint=None)[source]

A protein HBond constraint constructed from a hotspot Assign Protein Hbond constraints based on the highest scoring interactions.

Parameters
  • atoms (list) – list of ccdc.molecule.Atom instances from the protein. NB: The atoms should be donatable hydrogens or acceptor atoms.

  • weight – the penalty to be applied for no atom of the list forming an HBond.

  • min_hbond_score – the minimal score of an HBond to be considered a valid HBond.

static create(protein, hr, max_constraints=2, weight=5.0, min_hbond_score=0.001, cutoff=10)[source]

creates a hotspots.hs_docking.HotspotHBondConstraint

Parameters
  • protein (ccdc.protein.Protein) – the protein to be used for docking

  • hr (hotspots.calculation.Result) – a result from Fragment Hotspot Maps

  • max_constraints (int) – max number of constraints

  • weight (float) – the constraint weight (default to be determined)

  • min_hbond_score (float) – float between 0.0 (bad) and 1.0 (good) determining the minimum hydrogen bond quality in the solutions.

  • cutoff – minimum score required to assign the constraint

Return list

list of hotspots.hs_docking.HotspotHBondConstraint

generate_fitting_points(hr, volume=400, threshold=17, mode='threshold')[source]

uses the Fragment Hotspot Maps to generate GOLD fitting points.

GOLD fitting points are used to help place the molecules into the protein cavity. Pre-generating these fitting points using the Fragment Hotspot Maps helps to biast results towards making Hotspot interactions.

Parameters
  • hr (hotspots.result.Result) – a Fragment Hotspot Maps result

  • volume (int) – volume of the occupied by fitting points in Angstroms ^ 3

  • threshold (float) – points above this value will be included in the fitting points

  • mode (str) – ‘threshold’- assigns fitting points based on a score cutoff or ‘bcv’- assigns fitting points from best continuous volume analysis (recommended)