How to prepare a flexible residue file for AutoDock4
This How-to applies to:
This How-to is intended for: User
The receptor files contain one line for each
atom in the receptor to be used in an AutoDock experiment. Preparing
them involves ensuring that atoms conform to the AutoDock4
types by adding gasteiger charges if necessary, merging non-polar
hydrogens and detecting aromatic carbons and
writing a 'pdbqt' file.
If flexibility in the receptor is going to be included in the AutoDock4 experiment, the residues which are to be modelled as flexible must be written in a separate file from the one containing the residues to be modelled as rigid. These two distinct receptor files can be prepared interatively using AutoDockTools (ADT) or with prepare_flexreceptor4.py, a python script which can be found in AutoDockTools/Utilities24. Typing the name of a script in that directory at a shell prompt results in printing Usage: which is an overview of how to use the script.
prepare_flexreceptor4.py -r receptor_filename -s list_of_names_of_residues_to_move
Description of command...
-s list of names of residues to move
[-v] verbose output
[-N] type(s) of bonds to disallow:
[-P] pairs of atom names bonds between which to disallow:
[-g pdbqt_filename] (rigid output filename)
[-x pdbqt_filename] (flexible output filename)
Procedure1. Install MGLTools if you have not already done so. This will install the graphical user interface and the Python shell scripts for ADT (AutoDockTools). See also: How to setup ADT scripts.
2. In your working directory either copy 'prepare_flexreceptor4.py' from "MGLTools/MGLToolsPckgs/AutoDockTools/Utilities24", or make sure your path includes 'local_install', the directory where MGLTools is installed locally.
yourpath = local_install/MGLTools/MGLToolsPckgs/AutoDockTools/Utilities24
3. Run the script at the command prompt using the "pythonsh" script with the desired flags and arguments:
pythonsh [yourpath or .]/prepare_flexreceptor4.py -r receptor_filename [options]pythonsh [yourpath/ or './']prepare_flexreceptor4.py -r receptor.pdbqt [options]
InputThe receptor file should contain only one molecule, the one to be formatted as the receptor. It should already have all hydrogens added [see below].
OutputThe output filename defaults are the input file stem plus _rigid.pdbqt and _flex.pdbqt. For example, 'hsg1.pdb' by default is written to 'hsg1_rigid.pdbqt' and 'hsg1_flex.pdbqt'.
Options1. -N types of bonds to allow
(default is backbone allowed, amide and guanidinium disallowed)
2. -P pairs of names of atoms. All bonds between any pairs of atoms with these names will be disallowed.
The atom names should be separated by an underscore, the pairs separated by a colon.
For example, "CA_CB:CB_CG:C_CA"
3. -g output filename for rigid portion of the receptor.
(default is receptorname_rigid.pdbqt)
4. -x output filename for flexible portion of the receptor.
(default is receptorname_flex.pdbqt)
Known problems1. The AutoGrid calculation must use the file containing only the rigid portion of the receptor.
2. If the flexible residues have any atom types not present in the ligand, these types must be included in the ligand_types list in the grid parameter file.
3. The docking parameter file must include the keyword flexres followed by the name of the file
containing the flexible residues. For example, flexres hsg1_flex.pdbqt