Learn R Programming

bio3d (version 2.4-4)

mask: Mask a Subset of Atoms in a DCCM Object.

Description

Produce a new DCCM object with selected atoms masked.

Usage

mask(...)

# S3 method for dccm mask(dccm, pdb = NULL, a.inds = NULL, b.inds = NULL, ...)

Value

Returns a matrix list of class "dccm" with the indices/atoms not corresponding to the selection masked.

Arguments

dccm

a DCCM structure object obtained from function dccm.

pdb

a PDB structure object obtained from read.pdb. Must match the dimensions of dccm.

a.inds

a numeric vector containing the indices of the elements of the DCCM matrix in which should not be masked. Alternatively, if pdb is provided a selection object (as obtained from atom.select) can be provided.

b.inds

a numeric vector containing the indices of the elements of the DCCM matrix in which should not be masked.

...

arguments not passed anywhere.

Author

Lars Skjaerven

Details

This is a basic utility function for masking a DCCM object matrix to highlight user-selected regions in the correlation network.

When both a.inds and b.inds are provided only their intersection is retained. When only a.inds is provided then the corresponding region to everything else is retained.

Note: The current version assumes that the input PDB corresponds to the input DCCM. In many cases this will correspond to a PDB object containing only CA atoms.

References

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

See Also

dccm, atom.select

Examples

Run this code
## Calculate DCCM
pdb <- read.pdb( system.file("examples/1hel.pdb", package="bio3d") )
cij <- dccm(nma(pdb))

## Mask DCCM matrix according to matrix indices
cijm <- mask(cij, a.inds=40:50, b.inds=80:90)
plot(cijm)

## Retain only 40:50 to everything else
cijm <- mask(cij, a.inds=40:50)
plot(cijm)


## Mask DCCM matrix according PDB selection
pdb.ca <- trim(pdb, "calpha")
a.inds <- atom.select(pdb.ca, resno=40:50)
b.inds <- atom.select(pdb.ca, resno=80:90)

# Provide pdb object correspoding to input dccm
cijm <- mask(cij, pdb.ca, a.inds, b.inds)
plot(cijm)

Run the code above in your browser using DataLab