This plugin reads and writes molecular coordinate data stored in the RCSB Protein Data Bank PDB file format.


Support for non-standard PDB files The PDB plugin will accept a number of variations of the PDB file format which are technically violations of the specification. These include files containing more than 99,999 ATOM/HETATM records, ATOM records with serial number fields extending into the space reserved for record keywords, and various other transgressions.

ATOM, HETATM records The PDB plugin processes all fields in the ATOM and HETATM records.

CONECT records VMD reads all CONECT records and treats them as an indication of "special" bonds that are noteworthy beyond the obvious ones that a simple distance based search would find. VMD reads all of the bonds from the CONECT records, and then adds the bonds found by an automatic distance search, skipping any duplicates.

HEADER record The PDB header accession code, data, and classification information information are read from the header, but only the accession code and date are returned by the plugin.

REMARK records All REMARK records are read and returned to VMD by the plugin.

Alternate Location Identifiers Some PDB files contain ATOM records with non-empty alternate location identifiers (AltLoc) which indicate alternative conformations for parts of the structure. VMD 1.8.4 and above reads the AltLoc fields and uses them to prevent generation of spurious bonds between conformations of the structure, and to allow differet conformations to be selected using the "altloc" atom selection keyword.

Interpretation of atom serial numbers
Since PDB files can only store 99,999 atoms without overrunning the columns designated for atom indices etc, the PDB plugin doesn't directly use the atom indices specified in the PDB file as its own indices, instead it keeps its own independent atom index counter, allowing it to read files containing millions of atoms. The atom index field for atoms beyond 99,999 may contain alphanumeric characters, or some other unique string scheme, as has commonly been used in software such as X-PLOR/CNS, and other packages.

Unit Cell
The PDB plugin reads in the CRYST1 unit cell information for use with periodic image display when available.

Multi-structure PDB files The PDB plugin reads multi-structure PDB files and treats them as an trajectory of atom positions, if each structure contains the same number of atoms. If the subsequent structures have mismatched atom counts, only the first structure is returned.

Unused data
Various PDB record types and fields are ignored by VMD, in general VMD doesn't do anything with the sequence data or crystallography-specific fields in the format presently.
All unused PDB records are returned as remark data by the PDB plugin, allowing this information to be parsed and accessed by plugins. While somewhat hackish and generally not how we'd prefer to do things, much of the information provided in PDB files is fairly free format, or provided in REMARK lines anyway, so this provides a means of getting at it, for plugins that are crafty enough to read this information.