# PDBFile Class Reference

PDBFile parses a Protein Data Bank (PDB) file and constructs a Topology and a set of atom positions from it. More...

List of all members.

## Public Member Functions
def | __init__
| Load a PDB file.
def | getTopology
| Get the Topology of the model.
def | getNumFrames
| Get the number of frames stored in the file.
def | getPositions
| Get the atomic positions.
def | writeFile
| Write a PDB file containing a single model.
def | writeHeader
| Write out the header for a PDB file.
def | writeModel
| Write out a model to a PDB file.
def | writeFooter
| Write out the footer for a PDB file.
## Public Attributes
| topology
| The Topology read from the PDB file.
| positions
| The atom positions read from the PDB file.

## Detailed Description

PDBFile parses a Protein Data Bank (PDB) file and constructs a Topology and a set of atom positions from it.

This class also provides methods for creating PDB files. To write a file containing a single model, call writeFile(). You also can create files that contain multiple models. To do this, first call writeHeader(), then writeModel() once for each model in the file, and finally writeFooter() to complete the file.

## Member Function Documentation

def __init__ | ( |  | self,
|  |  | file |
| ) |  |  |

Load a PDB file.

The atom positions and Topology can be retrieved by calling getPositions() and getTopology().

Parameters:

  | file | (string) the name of the file to load

def getNumFrames | ( |  | self | ) |

Get the number of frames stored in the file.

def getPositions | ( |  | self,
|  |  | asNumpy = `False`,
|  |  | frame = `0` |
| ) |  |  |

Get the atomic positions.

Parameters:

  | asNumpy | (boolean=False) if true, the values are returned as a numpy array instead of a list of Vec3s
  | frame | (int=0) the index of the frame for which to get positions

def getTopology | ( |  | self | ) |

Get the Topology of the model.

def writeFile | ( |  | topology,
|  |  | positions,
|  |  | file = `sys.stdout`,
|  |  | modelIndex = `None` |
| ) |  |  |

Write a PDB file containing a single model.

Parameters:

  | topology | (Topology) The Topology defining the model to write
  | positions | (list) The list of atomic positions to write
  | file | (file=stdout) A file to write to

def writeFooter | ( |  | topology,
|  |  | file = `sys.stdout` |
| ) |  |  |

Write out the footer for a PDB file.

Parameters:

  | topology | (Topology) The Topology defining the molecular system being written
  | file | (file=stdout) A file to write the file to

def writeHeader | ( |  | topology,
|  |  | file = `sys.stdout` |
| ) |  |  |

Write out the header for a PDB file.

Parameters:

  | topology | (Topology) The Topology defining the molecular system being written
  | file | (file=stdout) A file to write the file to

def writeModel | ( |  | topology,
|  |  | positions,
|  |  | file = `sys.stdout`,
|  |  | modelIndex = `None` |
| ) |  |  |

Write out a model to a PDB file.

Parameters:

  | topology | (Topology) The Topology defining the model to write
  | positions | (list) The list of atomic positions to write
  | file | (file=stdout) A file to write the model to
  | modelIndex | (int=None) If not None, the model will be surrounded by MODEL/ENDMDL records with this index

## Member Data Documentation

positions

The atom positions read from the PDB file.

If the file contains multiple frames, these are the positions in the first frame.

topology

The Topology read from the PDB file.

The documentation for this class was generated from the following file:

- pdbfile.py