PDB_IO contains procedures for reading and writing coordinate files in PDB format.
This module is mentioned in chapter 2 of the book A Practical Introduction to the Simulation of Molecular Systems.
The PDB format used for input and output by this module for ATOM and HETATM lines is "(A6,I5,1X,A4,1X,A3,2X,I4,4X,3F8.3,2F6.2,6X,A4)". This basically follows the standard PDB format except that some single character fields denoting chain names have been omitted and a character field has been added at the end of the line to write out the subsystem name. The CHARMM option uses a slight modification to the format that allows four, as opposed to three, character residue names. The format is "(A6,I5,1X,A4,1X,A4,2X,I4,3X,3F8.3,2F6.2,6X,A4)".
Note that the PDB format has some limitations as far as normal DYNAMO usage is concerned. First, the fields for atom, residue and subsystem names are much shorter than those permitted by the DYNAMO library. Second, the PDB format contains no information about their elemental nature, i.e. whether they are carbons, etc.
Module | Variables |
---|---|
CONSTANTS | UNDEFINED |
DEFINITIONS | DP |
FILES | NEXT_UNIT |
IO_UNITS | INPUT, OUTPUT |
STATUS | ERROR |
ATOMS | Most public items in the module. |
SEQUENCE | Most public items in the module. |
SYMMETRY | Most public items in the module. |
None.
There are three public subroutines in this module.
Subroutine | Purpose |
---|---|
PDB_DEFINE | Read a PDB file and redefine the system. |
PDB_READ | Read a PDB file using an existing system definition. |
PDB_WRITE | Write a PDB file for the current system. |
Argument | Type | Intent | Optional | Purpose |
---|---|---|---|---|
FILE | Character ( Len = * ) | In | Yes | The PDB file name. |
CHARMM | Logical | In | Yes | A flag to use the CHARMM PDB format. |
Error | Meaning |
---|---|
I/O Error. | There is a problem with the PDB file. |
Error decoding line. | There is a format error in an ATOM or HETATM line. |
Duplicate subsystem names: XXX. | Two subsystems in the file have the same name. |
Duplicate atom name XXX in residue YYY. | There are two atoms with the same name in a residue. |
Argument | Type | Intent | Optional | Purpose |
---|---|---|---|---|
FILE | Character ( Len = * ) | In | Yes | The PDB file name. |
CHARMM | Logical | In | Yes | A flag to use the CHARMM PDB format. |
Error | Meaning |
---|---|
I/O Error. | There is a problem with the PDB file. |
Error decoding line. | There is a format error in an ATOM or HETATM line. |
Subsystem XXX not found. | A subsystem is missing from the file. |
Residue mismatch: XXX and YYY. | There is a mismatch in the residue sequence. |
Atom XXX not found in residue YYY. | There is an atom missing from a residue. |
Argument | Type | Intent | Optional | Purpose |
---|---|---|---|---|
FILE | Character ( Len = * ) | In | Yes | The PDB file name. |
CHARMM | Logical | In | Yes | A flag to use the CHARMM PDB format. |
Error | Meaning |
---|---|
I/O Error. | There is a problem with the PDB file. |
Stable.