Tutorial of Preparing Flexible Residue Files in AUTODOCK

This tutorial explains how to use the pthon script "prepare_flexreceptor4.py" to create two AutoDock 4 input files, one of which contains rigid residues and the other contains flexible residues. The input file of this script should be in pdbqt format, and the output file should also be in pdbqt format. The pdpqt format is the latest file format adopted by AutoDock 4. The flex file contains special keywords for establishing torsional flexibility. Optional parameter items can be used to prohibit rotation between specified bonds and specified atoms.


For each atom in the receptor, there is a special line describing it in the receptor file to carry out the simulation calculation of AutoDock. Preparing the receptor file includes adding gasteiger charges to ensure that the atoms follow the atom type in AutoDock 4, fusing non-polar hydrogen and detecting aromatic carbon, and outputting a pdpqt file. If you need to introduce flexible conditions into the receptor, you need to output the rigid part and the flexible part of the receptor in separate files. These two receptor files can be prepared by AotuDockTools through the visual interface or the python script "prepare_flexreceptor4.py" in the command prompt interface. The python script "prepare_flexreceptor4.py" is stored under the path AutoDockTools/Utilities24. Navigate to this directory in the command line interface and enter the file name of the script to get the basic usage of this script (Usage).

prepare flexreceptor4.py -r receptor_ filename- 3 list _of names_of reaidue3_ to move
Description of command. . .
-r receptor_ filename
-3 list of name of residues to move
Optional parameters:
[-v] verbose output
[-N] type (3) of bonds to disallow:
[-P] pairs of atom names bonds between which to disallow:
[-g pdbat_ filename] (rigid output filename)
[-x pdbgt_ filename] (flexible output fi1ename)


1. If MGLTools is not installed, please install it first. MGLTools provides the graphical user interface and scripts required by ADT'.

2. Copy prepare_ligand4.py in the "MGLTools/MGLToolsPckgs/AutoDockTools/Utilities24" directory to your working directory, or make sure that your environment variables include yourpath, yourpath = local_install/MGLTools/MGLToolsPckgs/AutoDockTools/Utilities24, which is the installation of MGLTools table of Contents.

3. Use the pythonsh command in the command line interface to run the "prepare_flexreceptor4.py" script.
pythonsh Iyourpath or . ] /prepare_flexreceptor4.py-r receptor_ filename [options]
pythonsh [yourpath/ or './']prepare_flexreceptor4.py -r receptor.pdbqt [options]
[yourpath/ or './'] indicates your installation path


The imported receptor file should only contain one receptor molecule, and in this receptor file, it is necessary to ensure that all hydrogen atoms have been added.


The output file name, by default, is the main part of the input file name plus _rigid.pdbqt and _flex.pdbqt. For example, "hsg1.pdpqt" will output two files "hsg1_rigid.pdbqt" and "hsg1_flex.pdbqt" by default.
Optional parameter item
-N: keys that allow rotation
-P: Atom name pair

All bonds between atom pairs are not allowed to rotate. The atom names in the atom pairs should be separated by underscores, and the atom pairs should be separated by colons. For example, "CA_CB:CB_CG:C_CA".

-G: The output file name of the rigid part in the receptor.
-x: the output file name of the flexible part in the receptor


  1. AutoGrid calculation must use a file containing only the rigid part of the receptor.
  2. If there are any atom types in the flexible residue that are not included in the ligand, these atom types must be referenced in the ligand_types list in the grid parameter file.
  3. The name of the docking parameter file must include the keyword flexres at the beginning of the file name of the flexible residue, for example, flexres hsg1_flex.pdbqt
* For Research Use Only.