-
Notifications
You must be signed in to change notification settings - Fork 8
04.5 Preparing Files for Molecular Docking Experiments
4.5 Preparing Files for Molecular Docking Experiments
In order to perform docking experiments in Jupyter, you will need 3 separate pdb files:
-
A pdb file of your target protein AND a bound ligand
-
A pdb file of your target protein ONLY
-
A pdb file of the ligand ONLY
You will already have a pdb file of your target protein and a bound ligand from your previous analysis in PyMOL, in order to create the other files, you will need to extract the ligand from the binding site. It is important that you only use optimised pdb files for your docking experiments, as unoptimised files can include multiple issues and inaccuracies.

The difference between an unoptimised and optimised version of the same pdb file can be seen above. Other issues you may have noticed when looking at an unoptimised file are residues appearing twice, in slightly different conformations, and loop breaks. Residues appearing multiple times in the same structure is due to these residues having fractional occupancies within the crystal structure, proteins are not static, and this is an artifact of the side chains ability to occupy different conformations within the protein. Loop breaks occur when there are gaps in the sequence, leading to certain residues being missing from the structure. As mentioned earlier another obvious difference is the missing hydrogen atoms in the unoptimised structure. In order to optimise your files, there are some open-source programmes you can try out such as H++/Propka (for adding the hydrogens) and Modeller (for loop breaks and missing residues). Alternatively, Dr Chris Swain can help by using his pipeline for these issues in MOE to optimise a file for you.
Pdb file formats do not contain bond orders so these are inferred from the interatomic distances, you will want to check these are correct (in your ligand and in any important residues). Similarly, when analysing a crystal structure, it is important to check the tautomers of the imidazole rings in histidine side chains and check the positioning of atoms in certain residues such as asparagine and glutamine (as it can be difficult to differentiate between the N and O of these side chains). Essentially optimisation is just something that needs to be done to a pdb file if you wish to use it for docking experiments (and for full analysis of ligand interactions). It is technically possible to display the hydrogens in an unoptimised file, however for all the reasons stated above this is not advisable. The hydrogens may not be in the right place and any water molecules will not be orientated correctly in an unoptimised file.
Once you have your optimised pdb file containing your target protein and a ligand, load up the pdb file and rename the PyMOL entry on the side menu as “protein and ligand”. To save this entry as a pdb file click file, then export molecule…
Make sure the selection is the correct entry that you want to save (use the dropdown menu), and then click save. When naming your file you may wish to be more specific about which ligand is docked in this structure (for example if you are going to dock a series of compounds against multiple different reference ligands then you should be clear which pdb file contains which ligand – for example here this ligand was named 2646).
Ensure you have saved the file as a .pdb file and put it somewhere convenient for docking. It is a good idea to have all of your docking filles saved in the same folder, so that you can easily access them when uploading them to Jupyter for docking (see later).
Next you will need to make a pdb file of just your ligand, to do this select the ligand click on the action menu, then click extract to object.
You will now see PyMOL has created a new object entry, you can rename this “ligand” (PyMOL will replace the previous selection name with this object). Clicking on the ligand entry will cause the ligand to disappear from view separately to the protein now it has now been extracted from the rest of the structure. Save this ligand as a separate pdb file in the same way you saved your protein and ligand file, click file, export molecule…, then select the ligand entry from the drop-down menu. Save your “ligand only” pdb file in the same docking folder as before.
Finally, to make your protein only file you can delete the ligand object entry from the side menu, to do this click on the action menu, and then select delete object. You can now save the remaining entry as your protein only pdb file (file, export molecule…).
You should check all of your pdb files before using them for docking to make sure everything is correct (ligand file only contains the ligand etc.). For example the new protein only file is shown opened below:
**
**