-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Protein/Ligand Preparation for Docking #368
Comments
These are good questions to consider and would make dc.dock more readily usable.
|
Expanding on 3) 3.1) Protonation states will require a pKa predictor of some form. Worse yet, you probably care about not just the solvent-phase protonation state but also the active-site protonation state (which requires a protein pKa predictor). 3.2) Tautomerization is really hard. Internally we have LigPrep (but obv it's a proprietary rule-based solution, which is less than ideal for an open-source package like DeepChem). 3.3) Another item to be aware of is different resonance structures of conjugated systems (which many tools probably doesn't do well on) that are not simple aromatic rings. @ptosco submitted a great PR to RDKit which can enumerate all resonance structures of a given mol, it can also rank them by stability using again, a rule-based heuristic: http://www.rdkit.org/Python_Docs/rdkit.Chem.rdchem.ResonanceMolSupplier-class.html |
Are there open source solutions to 3.1? More generally, are there
components, like implementations of propka, of ```LigPrep``` and ```Protein
Prep Wiz``` that can be open sourced?
…On Wed, Jan 25, 2017 at 12:36 PM, Yutong Zhao ***@***.***> wrote:
Expanding on 3)
3.1) Protonation states will require a pKa predictor of some form. Worse
yet, you probably care about not just the solvent-phase protonation state
but also the active-site protonation state (which requires a protein pKa
predictor).
3.2) Tautomerization is really hard. Internally we have LigPrep (but obv
it's a proprietary rule-based solution, which is less than ideal for an
open-source package like DeepChem).
3.3) Another item to be aware of is different resonance structures of
conjugated systems (which many tools probably doesn't do well on) that are
not simple aromatic rings. @ptosco <https://github.com/ptosco> submitted
a great PR to RDKit which can enumerate all resonance structures of a given
mol, it can also rank them by stability using again, a rule-based
heuristic: http://www.rdkit.org/Python_Docs/rdkit.Chem.rdchem.
ResonanceMolSupplier-class.html
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#368 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ABre1rYsJz9gRr13MyHXgm16nI_GYXipks5rV7I_gaJpZM4LqMcv>
.
|
We might have to implement our own open source variants for DeepChem. Luckily, we can leverage the existing code in PDBFixer, MolVS, and RDKit to get a nice head start here. |
PRs that improve the state of our protein-ligand docking would be welcome! I've marked this PR a "Good Intermediate Contribution." That is, you should already be comfortable contributing to DeepChem, since this PR might require some in-depth code changes. I've also marked this PR, "Scientific Knowledge Required" since you should have an understanding (or be willing to learn about) the science of preparing a ligand molecule for docking with a protein. |
I would like to work on this, but unsure of where to start from, or what references to use. Any suggestions? |
I'd recommend taking a look at some docking best practices guides. For example, perhaps this one: Making progress here basically requires us to implement these best practices guides in DeepChem. |
Closing this old issue. Let's continue the discussion in deepchem/deepdock#3 |
@bowenliu16 raised a number of interesting questions about protein preparation on the gitter which don't have great solutions within deepchem yet. I'm starting this thread to copy over the questions and discuss potential solutions:
dc.feat.hydrogenate_and_compute_partial charges
is the current extent of protein cleanup. I don't believe we handle water/ion removal. Also, no handling of missing protein residues/loops. https://github.com/pandegroup/pdbfixer by @peastman handles many of these issues, so the right answer might be to use PDBFixer to handle these issues.dc.feat.hydrogenate_and_compute_partial_charges
is the only ligand processing right now. It partially handles protonation, but I'd wager it doesn't do an excellent job. We don't handle tautomers yets.I'd love to hear suggestions on good ways to handle pdb-cleanup, protonation, and tautomers with existing open source tools :-)
CC @peastman, @joegomes, @evanfeinberg
The text was updated successfully, but these errors were encountered: