Closed lancelot-droid closed 3 years ago
That means those residues are listed in the SEQRES section of the input file. You tell it to add missing residues, so it does. It has no idea what their conformation should be, so it just adds them sticking outward in a direction that won't clash with anything else. When there are missing residues at the end of a chain, that often means they're flexible and couldn't be resolved in the electron density.
Thanks for clarifying. I'll just download structures as PDB and filter out non ATOM and HETATM records.
See the manual for information about this. If you don't want to add missing residues, remove the call to findMissingResidues()
and replace it with
fixer.missingResidues = {}
There's also an example that shows how to add missing residues in the middle of the chain but not at the ends.
Awesome. Thanks. I'll spend some more time with the manual.
Hello there!
I am trying to run PDBFixer on structure PDB ID 2a07 using the following commands:
from simtk.openmm.app import from simtk.openmm import from simtk.unit import * from sys import stdout from pdbfixer.pdbfixer import PDBFixer
fixer = PDBFixer(pdbid='2a07') fixer.findMissingResidues() fixer.findNonstandardResidues() fixer.replaceNonstandardResidues() fixer.removeHeterogens(keepWater=False) fixer.findMissingAtoms() fixer.addMissingAtoms() fixer.addMissingHydrogens(pH=7.0)
The output structure contains several new residues, arranged in a linear chain, added to protein termini. I have traced the bug to addMissingAtoms() but cannot explain this behavior.
I welcome your guidance.
PS. You can compare the input (top image) and output (bottom image) structures below to see the linear chain of new residues added to the protein's termini.