schrojunzhang/KarmaDock

Using KarmaDock for virtual screening

Closed this issue · 1 comments

Hi Xujun,

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

  • For virtual screening with 1 protein and a compound library, should I use the method listed in Demo1 or Demo2? My guess is Demo2 but just want to confirm.
  • For virtual_screening.py, we don't have any crystal ligand files, but we have an idea of where the binding pocket is. Is is possible to specify the binding pocket coordinates with out the need of --crystal_ligand_file?

Thanks,

Hien

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