as.pdb.Rd
Convert Tripos Mol2 format, or Amber parameter/topology and coordinate data to PDB format.
as.pdb(...) # S3 method for mol2 as.pdb(mol, ...) # S3 method for prmtop as.pdb(prmtop, crd=NULL, inds=NULL, inds.crd=inds, ncore=NULL, ...) # S3 method for default as.pdb(pdb=NULL, xyz=NULL, type=NULL, resno=NULL, resid=NULL, eleno=NULL, elety=NULL, chain=NULL, insert=NULL, alt=NULL, o=NULL, b=NULL, segid=NULL, elesy=NULL, charge=NULL, verbose=TRUE, ...)
... | arguments passed to and from functions. |
---|---|
mol | a list object of type |
prmtop | a list object of type |
crd | a list object of type |
inds | a list object of type |
inds.crd | same as the ‘inds’ argument, but pointing to the atoms in CRD object to convert. By default, this argument equals to ‘inds’, assuming the same number and sequence of atoms in the PRMTOP and CRD objects. |
ncore | number of CPU cores used to do the calculation.
|
pdb | an object of class ‘pdb’ as obtained from
|
xyz | a numeric vector/matrix of Cartesian coordinates. If
provided, the number of atoms in the new PDB object will be set to
If |
type | a character vector of record types, i.e. "ATOM" or "HETATM",
with length equal to |
resno | a numeric vector of residue numbers of length equal to
|
resid | a character vector of residue types/ids of length equal to
|
eleno | a numeric vector of element/atom numbers of length equal to
|
elety | a character vector of element/atom types of length equal to
|
chain | a character vector of chain identifiers with length equal to
|
insert | a character vector of insertion code with length equal to
|
alt | a character vector of alternate record with length equal to
|
o | a numeric vector of occupancy values of length equal to
|
b | a numeric vector of B-factors of length equal to |
segid | a character vector of segment id of length equal to
|
elesy | a character vector of element symbol of length equal to
|
charge | a numeric vector of atomic charge of length equal to
|
verbose | logical, if TRUE details of the PDB generation process is printed to screen. |
This function converts Tripos Mol2 format, Amber formatted parameter/topology (PRMTOP) and coordinate objects, and vector data to a PDB object.
While as.pdb.mol2
and as.pdb.prmtop
converts specific
objects to a PDB object, as.pdb.default
provides basic
functionality to convert raw data such as vectors of e.g. residue numbers,
residue identifiers, Cartesian coordinates, etc to a PDB object. When
pdb
is provided the returned PDB object is built from the input
object with fields replaced by any input vector arguments.
e.g. as.pdb(pdb, xyz=crd)
will return the same PDB object, with
only the Cartesian coordinates changed to crd
.
Returns a list of class "pdb"
with the following components:
a data.frame containing all atomic coordinate ATOM data, with a row per ATOM and a column per record type. See below for details of the record type naming convention (useful for accessing columns).
a numeric matrix of ATOM coordinate data of class xyz
.
logical vector with length equal to nrow(atom)
with TRUE values indicating a C-alpha “elety”.
the matched call.
Grant, B.J. et al. (2006) Bioinformatics 22, 2695--2696. http://ambermd.org/FileFormats.php
Lars Skjaerven
## Vector(s) to PDB object pdb <- as.pdb(resno=1:6, elety="CA", resid="ALA", chain="A")#> #> Summary of PDB generation: #> .. number of atoms in PDB determined by 'resno' #> #> .. 00000006 atom(s) from 'string' selection #> .. 00000006 atom(s) in final combined selection #> #> .. number of atoms in PDB: 6 #> .. number of calphas in PDB: 6 #> .. number of residues in PDB: 6 #>pdb#> #> Call: as.pdb.default(resno = 1:6, resid = "ALA", elety = "CA", chain = "A") #> #> Total Models#: 1 #> Total Atoms#: 6, XYZs#: 18 Chains#: 1 (values: A) #> #> Protein Atoms#: 6 (residues/Calpha atoms#: 6) #> Nucleic acid Atoms#: 0 (residues/phosphate atoms#: 0) #> #> Non-protein/nucleic Atoms#: 0 (residues: 0) #> Non-protein/nucleic resid values: [ none ] #> #> Protein sequence: #> AAAAAA #> #> + attr: atom, xyz, calpha, callif (FALSE) { ## Read a PRMTOP file prmtop <- read.prmtop(system.file("examples/crambin.prmtop", package="bio3d")) ## Read Amber coordinates crds <- read.crd(system.file("examples/crambin.inpcrd", package="bio3d")) ## Atom selection ca.inds <- atom.select(prmtop, "calpha") ## Convert to PDB format pdb <- as.pdb(prmtop, crds, inds=ca.inds) ## Read a single entry MOL2 file ## (returns a single object) mol <- read.mol2( system.file("examples/aspirin.mol2", package="bio3d") ) ## Convert to PDB pdb <- as.pdb(mol) }