I have only one ligand molecules, but I have a set of protein molecules (few are present in pdb database, few are generated with homology modeling). My task is to dock all these protein molecules to the single ligand molecule (which I have selected) and filter out proteins which are binding effectively to the ligand. (There are many tutorials available for docking multiple ligands to single protein, but not the other way around (which is what I need)).
I want to automate this process, because, I have nearly 100+ protein molecules, also, if I have to change the ligand molecule in future, the set of proteins will also change completely.
Currently, I'm using ADFRSuite's prepare_receptor and prepare_ligand tools to prepare ligand and set of receptors (convert them from pdb to pdbqt format) and I'm doing molecular docking with AutoDock Vina. But, I'm getting the docking result in pdbqt file, also the resulting file contains only the list of best conformation of ligand molecule in pdbqt format, but not protein information. I need to combine both the protein.pdbqt file and ligand_best_confirmation.pdbqt file into a single file in pdb format (for each protein-ligand set).
Could anyone please guide me how to combine ligand.pdbqt and protein.pdbqt file and convert that to pdb format (because, my further analysis requires the file to be in pdb format). Please suggest me any command line tool, or tools that can be incorporated into my pipeline (because, I can not do the conversion for all the 100+ proteins manually in GUI interface).
First, I thought of converting both protein and ligand pdbqt file to pdb file with MGL Tools, and combining the resulting file, but it's working only for protein.pdbqt, but not for ligand.pdbqt. When I tried to convert ligand.pdbqt file with MGL Tools, I got the following error.
/home/josh/MGLTools-1.5.7/bin/pythonsh /home/josh/MGLTools-1.5.7/MGLToolsPckgs/AutoDockTools/Utilities24/pdbqt_to_pdb.py -f /home/josh/docking/example/1iep_best_ligand.pdbqt -o /home/josh/docking/example/1iep_final_ligand.pdb Traceback (most recent call last): File "/home/josh/MGLTools-1.5.7/MGLToolsPckgs/AutoDockTools/Utilities24/pdbqt_to_pdb.py", line 69, in <module> mols = Read(pdbqt_filename) File "/home/josh/MGLTools-1.5.7/MGLToolsPckgs/MolKit/__init__.py", line 55, in Read molecules = parser.parse() File "/home/josh/MGLTools-1.5.7/MGLToolsPckgs/MolKit/pdbParser.py", line 851, in parse self.pdbRecordParser[record](records) File "/home/josh/MGLTools-1.5.7/MGLToolsPckgs/MolKit/pdbParser.py", line 2180, in parse_PDB_ROOT self.mol.torTree = TorTree(self) File "/home/josh/MGLTools-1.5.7/MGLToolsPckgs/MolKit/torTree.py", line 35, in __init__ self.rootNode = self.__makeTree(parser.allLines) File "/home/josh/MGLTools-1.5.7/MGLToolsPckgs/MolKit/torTree.py", line 183, in __makeTree nodeStack[-1].atomList.append(atomIndex) IndexError: list index out of range
Please guide me what I can do.