cbouy / ProLIF

Protein-Ligand Interaction Fingerprints
https://github.com/chemosim-lab/ProLIF
Apache License 2.0
19 stars 11 forks source link

Reference File #2

Closed abhinavmittra closed 4 years ago

abhinavmittra commented 5 years ago

I apologise for the clumsiness but I'm new to using Prolif and I have to use it to generate an interaction fingerprint. Can you kindly explain the input parameters if possible? I can't understand what is to be input as the reference file.

Thank You.

cbouy commented 5 years ago

Hi, What I call the "reference" is typically a ligand that was co-cristallized with the protein you're interested in, or a docking pose of a ligand that is known to interact with your protein. This reference is used for 2 things here:

For example, if you're interested in this protein, the isobutyryl-CoA could be used as your reference. The resulting command would be something like

prolif  --protein 6MFD_protein.mol2 \
    --reference 6MFD_isobutyryl-CoA.mol2 \
    --ligand 6MFD_docking-output/*.mol2

If you're only interested in generating an IFP and not in the similarity score, you can use the following python code to get an IFP:

from prolif.ligand import Ligand
from prolif.protein import Protein
from prolif.fingerprint import Fingerprint

# create the fingerprint generator
fp = Fingerprint()
# load your protein
protein = Protein('my_protein.mol2', residueList=['C12', 'E29', 'K88'])
# load a ligand
molecule = Ligand('my_ligand.mol2')
# generate the IFP
fp.generateIFP(molecule, protein)
print(molecule.IFP)

If needed you can customize which type of interactions you want for your IFP, and also provide custom parameters to optimize the way these interactions are detected. This is done by calling fp = Fingerprint(json_file='your_parameters.json', interactions=['HBdonor','HBacceptor']). The default JSON parameters file is here.

Please keep in mind that this is a work in progress, so I haven't got the time to fully optimize the parameters or run extensive tests yet.

Don't hesitate if you have other questions. Cédric

abhinavmittra commented 5 years ago

Thank you so much, I'm just interested in generating the IFP for now. I tried running the code that you provided to me for a "1hyv.mol2" protein and "tta.mol2" ligand but however I'm getting a 0 length IFP returned with a message saying Set centroid to 6.352 46.005 -10.864 Capture

How do I set the ligand centroid to the expected values? I'm a bit new to mol2 formats.

cbouy commented 5 years ago

"Set centroid" is just a bad phrasing from my part. I replaced it to "Ligand centroid was detected as" in the current GitHub version, and did a few bugfixes as well. You can install the current github version with pip install git+https://github.com/cbouy/ProLIF.git

Here the problem is that the ligand you're using is quite special. The phenyl rings don't have other aromatic residues to interact with, and for the arsenic atom you would probably have to compute accurate charges if you want to see some electrostatic interactions. The parameters for ionic and metallic interactions might also have to be tweaked as I said previously. 1hyv