Lesson 13 of 14 · 12 min
Putting predicted structures to work
A predicted model is a hypothesis, not an experimental coordinate set. Once you have one, the useful question is what it lets you do: annotate function, find and characterize pockets, dock ligands, search for structural homologs, prioritize mutations, phase a diffraction dataset, or seed a simulation. Every one of these tasks is only as trustworthy as the confidence of the regions you feed it.
Confidence-aware preparation
AlphaFold and ESMFold write per-residue pLDDT (on a 0-100 scale) into the B-factor column of the PDB file. The bands matter: above 90 is very high confidence, 70-90 is confident, 50-70 is low, and below 50 usually marks disordered tails or loops that were never really placed. For docking, pocket detection, or molecular replacement, trim down to the confident core -- keeping pLDDT >= 70 is a safe default, and you should never retain anything below 50. The predicted aligned error matrix (PAE) is orthogonal: it tells you which domains are confidently positioned relative to each other, so you can decide whether to treat a multidomain model as one rigid body or split it.
# pLDDT lives in the B-factor field (columns 61-66) of AlphaFold PDBs.
# Keep only residues with pLDDT >= 70; pass TER/HETATM lines through unchanged.
awk '/^ATOM/ { if (substr($0,61,6)+0 >= 70) print; next } { print }' \
model.pdb > trimmed.pdb
# Sanity-check how much low-confidence structure was removed
grep -c '^ATOM' model.pdb trimmed.pdbWhere models get used
Function annotation is often transfer-by-similarity: search the trimmed model against PDB or the AlphaFold DB and inherit GO terms or EC numbers from confident structural matches. Pocket detection with fpocket flags druggable cavities on the confident core, and those pockets define the search box for docking with AutoDock Vina or a diffusion docker. For mutagenesis, use the model to pick residues lining a pocket or interface, but treat predicted side-chain rotamers as approximate and refine before scoring. For crystallography, phenix.process_predicted_model trims by pLDDT and splits domains by PAE to build a molecular-replacement search model, and the same core is a sensible starting structure to relax and seed molecular dynamics.
Warning: never dock into or refine against pLDDT < 50 regions, and never run molecular replacement with an untrimmed model. Low-confidence tails introduce phantom pockets and bias the rotation and translation searches. Use the PAE, not pLDDT, to decide which domains should move as independent rigid bodies.
Foldseek structural search
Foldseek encodes each residue's tertiary neighborhood into a 20-letter 3Di structural alphabet, then runs the search as a fast amino-acid-style comparison. This makes all-vs-database structural homology search orders of magnitude faster than TM-align while staying sensitive to remote folds, which is exactly what you want for annotating a fresh prediction. The easy-search workflow accepts a raw PDB or mmCIF query directly.
# One-time: download and format the PDB target database
foldseek databases PDB pdb tmp
# Search the trimmed model; report TM-score, LDDT and homology probability.
# --alignment-type 1 runs TMalign, which is what populates alntmscore.
foldseek easy-search trimmed.pdb pdb result.m8 tmp \
--format-output query,target,evalue,alntmscore,lddt,prob \
--alignment-type 1
# Rank hits by structural similarity (column 4 = alntmscore)
sort -grk4 result.m8 | head -n 4trimmed 6xyz-A 2.104E-38 0.9312 0.8815 1.000
trimmed 3ab1-B 7.550E-25 0.7841 0.7203 0.998
trimmed 1u3w-A 4.902E-14 0.6127 0.5988 0.981
trimmed 5t2c-C 3.311E-08 0.4419 0.4712 0.762
Try it yourself: fetch an AlphaFold model (curl -O https://alphafold.ebi.ac.uk/files/AF-P0DTC2-F1-model_v4.pdb), trim residues with pLDDT < 70 using the awk filter above, then run foldseek easy-search against the PDB database. Sort by alntmscore and inspect the top hit: does a TM-score above 0.5 (the fold-conservation threshold) point to a plausible function you could not have inferred from sequence identity alone?