Learn R Programming

bio3d (version 2.3-3)

pdbfit: PDB File Coordinate Superposition

Description

Protein Databank Bank file coordinate superposition with the Kabsch algorithm.

Usage

pdbfit(...)

# S3 method for pdb pdbfit(pdb, inds = NULL, ...)

# S3 method for pdbs pdbfit(pdbs, inds = NULL, outpath = NULL, ...)

Arguments

pdb

a multi-model pdb object of class "pdb", as obtained from read.pdb.

pdbs

a list of class "pdbs" containing PDB file data, as obtained from read.fasta.pdb or pdbaln.

inds

a list object with a ‘xyz’ component with indices that selects the coordinate positions (in terms of x, y and z elements) upon which fitting should be based. This defaults to all equivalent non-gap positions for function pdbfit.pdbs, and to all calpha atoms for function pdbfit.pdb.

outpath

character string specifing the output directory for optional coordinate file output. Note that full files (i.e. all atom files) are written, seebelow.

extra arguments passed to fit.xyz function.

Value

Returns moved coordinates.

Details

The function pdbfit is a wrapper for the function fit.xyz, wherein full details of the superposition procedure are documented.

Input to pdbfit.pdbs should be a list object obtained with the function read.fasta.pdb or pdbaln. See the examples below.

For function pdbfit.pdb the input should be a multi-model pdb object with multiple (>1) frames in the ‘xyz’ component.

The reference frame for supperposition (i.e. the fixed structure to which others are superposed) is the first entry in the input "pdbs" object. For finer control use fit.xyz.

References

Grant, B.J. et al. (2006) Bioinformatics 22, 2695--2696.

Kabsch Acta Cryst (1978) A34, 827--828.

See Also

pdbaln, read.fasta.pdb, fit.xyz, rmsd, read.pdb

Examples

Run this code
# NOT RUN {
#files <- get.pdb(c("4q21","5p21"), URLonly=TRUE)
files <- get.pdb(c("4q21","5p21"), path=tempdir(), overwrite=TRUE)
pdbs <- pdbaln(files)
xyz <- pdbfit(pdbs)

# Superpose again this time outputing all-atom PDBs to disc
#xyz <- pdbfit( pdbs, outpath="fitted" )
# }

Run the code above in your browser using DataLab