schrojunzhang / KarmaDock

https://www.nature.com/articles/s43588-023-00511-5
Apache License 2.0
92 stars 12 forks source link

Using KarmaDock for virtual screening #2

Closed Le-Phung-Hien closed 1 year ago

Le-Phung-Hien commented 1 year ago

Hi Xujun,

Thanks for the great work. I want to try using KarmaDock for my virtual screening, Just has a few questions:

Thanks,

Hien

schrojunzhang commented 1 year ago

Dear Hien,

Thank you for reaching out and your interest in using KarmaDock.

  1. You're right. For virtual screening with 1 protein and a compound library, you should utilize the method highlighted in Demo2.

  2. If you do not have a crystal ligand file but are aware of the binding pocket's location, there are a couple of feasible solutions:

    • Solution 1: One straightforward method is to dock a ligand to the known binding site using conventional docking tools, such as AutoDock Vina. Once docked, you can then use the docked ligand as your crystal ligand file.

    • Solution 2: Directly modify the virtual_screening.py. Specifically, on lines 72-75:

      cry_lig_pos = get_mol2_xyz_from_cmd(args.crystal_ligand_file)
      pocket_center = cry_lig_pos.mean(axis=0)
      if not os.path.exists(pocket_file):
       get_pocket_pure(args.protein_file, somepoint=cry_lig_pos, out_file=pocket_file)

      Here, you'll need to provide the pocket center coordinates and utilize them as somepoint. Furthermore, make sure you adjust the get_pocket_pure function to use a larger pocket radius. The reason for this adjustment is that the previous 'some point' was determined by the positions of the crystal ligand atoms, which provided a more specific boundary of the binding pocket. Now that you are using a single point (the pocket center) as a reference, using the default radius of 12Å might result in a pocket that's too small or might not capture the entire binding site effectively. Thus, expanding the radius can ensure that you are covering the entire potential binding region.

Hope this clarifies your concerns. Please let me know if you have any more questions or need further assistance.

Best regards,

Xujun