Everything known to be wrong, surprising or missing, in one place: what it affects,
where it comes from, and where it is explained.
Most of these are ADFR's behaviour, which ADapt shares because it runs ADFR's own code; they
affect agfr and AGFRgui as well. The Origin column says which. Defects of ADFR
that ADapt corrects are listed on ADapt and AGFRgui instead.
| Issue | Effect | Origin | Details |
| Symmetry copies do not follow every choice | A copy made by crystal symmetry
follows its original chain for mutations and side-chain completion, but not for
receptor/ligand checkboxes or alternate locations: it keeps the defaults. Measured on 1HHP: with
A:ASP25 unchecked, the copy's ASP25 is still written. | ADFR | Biological assembly |
| Tied alternate locations | When two locations have the same occupancy, the
default one varies from run to run (Python's set order), so the same PDB file can give different
receptors. Common: all 7 altloc residues of 1FV1. Choose such residues explicitly; the
altlocs REMARK records what was used. | ADFR | Alternate locations |
| Unsupported atom types are dropped | Atoms outside the AutoDock 4.1 types
(copper, sodium, potassium, …) are left out of the receptor, with no substitution
offered. | ADFR | Unsupported
atoms |
| An FE2 ion stops the file from opening | A one-atom residue named
FE2 (iron(II), as many entries name it) makes loading fail with no ion charge
found for residue …. The ion is recognised by its element, but its default charge is looked
up by residue name, and ADFR's table has only FE. Reproduced on 6GGD with an FE2
added; MN3 probably fails the same way (not checked). | ADFR | Metals |
| A chloride ion is written with charge 0 | A chloride ion lands in
other, not manual charges: chloride (−1) is commented out of ADFR's table of manual
charges. Checked into the receptor, it is written with charge 0.00. Reproduced on 6GGD with a Cl⁻
added. | ADFR | Metals |
| Suspected: bonded Cl and Br may get no partial charge | Found by reading the
code, not yet reproduced on a molecule. Open Babel's Gasteiger charges are applied only to atoms
whose element is in a list written Cl, Br, while the receptor's elements
are CL, BR. A chlorine or bromine bonded in a residue kept in the receptor
(a cofactor, a modified residue) would then get no partial charge. | ADFR
(MolKit2) | |
| Suspected: ions in symmetry copies may lose their charge | Found by reading the
code, not yet tested. The manual charges are set again after reduce by selecting each
ion by chain identifier, but a copy's chain has been renamed (0, 1, …), so
the copy's ion would not be found and would keep charge 0. | ADFR | Biological assembly |
| Bromine's default charge is +1 | ADFR's table of manual charges gives Br +1;
a bromide ion would be −1. Check, and edit the charge if a Br is in your
receptor. | ADFR | Metals |
| The rotamer drop-down is a preview | The side chain written is always the
best-scoring rotamer, whatever the drop-down shows. | ADFR (as in AGFRgui) | Missing side chains |
| Issue | Effect | Origin | Details |
| No custom-charge REMARK from a Biomol tab | The custom charge
line is read from the asymmetric unit, so it is written only for receptors from an ASU or
ASU and Biomol N tab. From a Biomol N tab the ion's charge is in its atom record
only. | ADFR | Provenance |
--ionCharges is misreported by ADFR's command line | The atom
gets the requested charge, but the command line's own custom charge REMARK gives the
default (= 2.0000 for a zinc set to 1.5). ADapt's REMARK reports the charge
written. | ADFR (command line only) | Provenance |
| side chain completed lists other chains | The REMARK lists every
completion queued in the file, including those in chains the tab does not contain. | ADFR | Writing the files |
| Symmetry copies get new chain identifiers | In the receptor files a copy's
chain is renamed (0, 1, …), because reduce needs unique
chain names and ADFR does not rename them back. This holds for the PDBQT, and for the atoms and
the USER MOD lines of _rec_H.pdb. ADapt records each rename in
session.json (chain_renames). | ADFR | Biological assembly, the protonated
receptor |
| A ligand's atom records say chain A | The atom records of a ligand file
label the chain A whatever chain the ligand came from, and its source
line has no file name (REMARK 850 source .pdb). The coordinates are right, and ADapt
records the true origin in REMARK 850 AGFR ligand from B:EYB:402:_. | ADFR | Provenance |
| Some choices are recorded only in the session | Which hetero groups and waters
were kept, and ADapt's version, are not in the PDBQT header;
session.json has them. | ADapt | Provenance |
| Issue | Effect | Origin | Details |
| PDB format only | Entries the RCSB distributes only as mmCIF (the largest
assemblies) cannot be opened; Fetch from RCSB says so. | ADFR reads PDB files | Getting started |
| The PDB id comes from the file name | ADFR looks up an entry's known ligands
by its id, taken from the file name. Name files by their id (6ggd.pdb), or ligands
land in other. | ADFR | Ligands |
The agfr launcher splits quoted options | The
agfr / agfrgui scripts pass their arguments unquoted, so an option value
containing spaces (--heteroToKeep "chid B resnum 402") is split and rejected. Use
python -m ADFR.bin.runAGFR. | ADFR launcher | Writing the files |
| Needs the ADCP environment | ADapt runs ADFR from the ADCP distribution's
Python 3.7 environment (adcpsuite); it does not work without it. | ADapt | Getting started |