Write PDB Format Coordinate File
Write a Protein Data Bank (PDB) file for a given ‘xyz’ Cartesian coordinate vector or matrix.
write.pdb(pdb = NULL, file = "R.pdb", xyz = pdb$xyz, 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, append = FALSE, verbose = FALSE, chainter = FALSE, end = TRUE, sse = FALSE, print.segid = FALSE)
pdb |
a PDB structure object obtained from
|
file |
the output file name. |
xyz |
Cartesian coordinates as a vector or 3xN matrix. |
type |
vector of record types, i.e. "ATOM" or "HETATM", with length equal to length(xyz)/3. |
resno |
vector of residue numbers of length equal to length(xyz)/3. |
resid |
vector of residue types/ids of length equal to length(xyz)/3. |
eleno |
vector of element/atom numbers of length equal to length(xyz)/3. |
elety |
vector of element/atom types of length equal to length(xyz)/3. |
chain |
vector of chain identifiers with length equal to length(xyz)/3. |
insert |
vector of insertion code with length equal to length(xyz)/3. |
alt |
vector of alternate record with length equal to length(xyz)/3. |
o |
vector of occupancy values of length equal to length(xyz)/3. |
b |
vector of B-factors of length equal to length(xyz)/3. |
segid |
vector of segment id of length equal to length(xyz)/3. |
elesy |
vector of element symbol of length equal to length(xyz)/3. |
charge |
vector of atomic charge of length equal to length(xyz)/3. |
append |
logical, if TRUE output is appended to the bottom of an existing file (used primarly for writing multi-model files). |
verbose |
logical, if TRUE progress details are printed. |
chainter |
logical, if TRUE a TER line is inserted at termination of a chain. |
end |
logical, if TRUE END line is written. |
sse |
logical, if TRUE secondary structure annotations are written. |
print.segid |
logical, if FALSE segid will not be written. |
Only the xyz
argument is strictly required. Other arguments
assume a default poly-ALA C-alpha structure with a blank chain id,
occupancy values of 1.00 and B-factors equal to 0.00.
If the input argument xyz
is a matrix then each row is assumed
to be a different structure/frame to be written to a
“multimodel” PDB file, with frames separated by “END”
records.
Called for its effect.
Check that:
(1) chain
is one character long e.g. “A”, and
(2) resno
and eleno
do not exceed “9999”.
Barry Grant with contributions from Joao Martins.
Grant, B.J. et al. (2006) Bioinformatics 22, 2695–2696.
For a description of PDB format (version3.3) see:
http://www.wwpdb.org/documentation/format33/v3.3.html.
# PDB server connection required - testing excluded # Read a PDB file pdb <- read.pdb( "1bg2" ) # Renumber residues nums <- as.numeric(pdb$atom[,"resno"]) nums <- nums - (nums[1] - 1) # Write out renumbered PDB file outfile = file.path(tempdir(), "eg.pdb") write.pdb(pdb=pdb, resno = nums, file = outfile) invisible( cat("\nSee the output file:", outfile, sep = "\n") )
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.