10.2.3. Topology attribute objects — MDAnalysis.core.topologyattrs
¶
Common TopologyAttr
instances that are used by most topology
parsers.
TopologyAttrs are used to contain attributes such as atom names or resids. These are usually read by the TopologyParser.
-
class
MDAnalysis.core.topologyattrs.
Angles
(values, types=None, guessed=False, order=None)[source]¶ Angles between three atoms
Initialise with a list of 3 long tuples E.g., [(0, 1, 2), (1, 2, 3), (2, 3, 4)]
These indices refer to the atom indices.
-
class
MDAnalysis.core.topologyattrs.
AtomAttr
(values, guessed=False)[source]¶ Base class for atom attributes.
-
get_residues
(rg)[source]¶ By default, the values for each atom present in the set of residues are returned in a single array. This behavior can be overriden in child attributes.
-
-
class
MDAnalysis.core.topologyattrs.
Atomindices
[source]¶ Globally unique indices for each atom in the group.
If the group is an AtomGroup, then this gives the index for each atom in the group. This is the unambiguous identifier for each atom in the topology, and it is not alterable.
If the group is a ResidueGroup or SegmentGroup, then this gives the indices of each atom represented in the group in a 1-D array, in the order of the elements in that group.
-
class
MDAnalysis.core.topologyattrs.
Atomnames
(values, guessed=False)[source]¶ Name for each atom.
-
chi1_selection
()[source]¶ AtomGroup corresponding to the chi1 sidechain dihedral N-CA-CB-CG.
Returns: - AtomGroup – 4-atom selection in the correct order. If no CB and/or CG is found
then this method returns
None
. - .. versionadded:: 0.7.5
- AtomGroup – 4-atom selection in the correct order. If no CB and/or CG is found
then this method returns
-
omega_selection
()[source]¶ AtomGroup corresponding to the omega protein backbone dihedral CA-C-N’-CA’.
omega describes the -C-N- peptide bond. Typically, it is trans (180 degrees) although cis-bonds (0 degrees) are also occasionally observed (especially near Proline).
Returns: 4-atom selection in the correct order. If no C’ found in the previous residue (by resid) then this method returns None
.Return type: AtomGroup
-
-
class
MDAnalysis.core.topologyattrs.
Bfactors
(values, guessed=False)[source]¶ Crystallographic B-factors in A**2 for each atom
-
class
MDAnalysis.core.topologyattrs.
Bonds
(values, types=None, guessed=False, order=None)[source]¶ Bonds between two atoms
Must be initialised by a list of zero based tuples. These indices refer to the atom indices. E.g., ` [(0, 1), (1, 2), (2, 3)]`
Also adds the bonded_atoms, fragment and fragments attributes.
-
class
MDAnalysis.core.topologyattrs.
ChainIDs
(values, guessed=False)[source]¶ ChainID per atom
Note
This is an attribute of the Atom, not Residue or Segment
-
class
MDAnalysis.core.topologyattrs.
Charges
(values, guessed=False)[source]¶ -
get_residues
(rg)[source]¶ By default, the values for each atom present in the set of residues are returned in a single array. This behavior can be overriden in child attributes.
-
-
class
MDAnalysis.core.topologyattrs.
Dihedrals
(values, types=None, guessed=False, order=None)[source]¶ A connection between four sequential atoms
-
class
MDAnalysis.core.topologyattrs.
Impropers
(values, types=None, guessed=False, order=None)[source]¶ An imaginary dihedral between four atoms
-
class
MDAnalysis.core.topologyattrs.
Masses
(values, guessed=False)[source]¶ -
align_principal_axis
(axis, vector)[source]¶ Align principal axis with index axis with vector.
Parameters: - axis ({0, 1, 2}) – Index of the principal axis (0, 1, or 2), as produced by
principal_axes()
. - vector (array_like) – Vector to align principal axis with.
Notes
To align the long axis of a channel (the first principal axis, i.e. axis = 0) with the z-axis:
u.atoms.align_principal_axis(0, [0,0,1]) u.atoms.write("aligned.pdb")
- axis ({0, 1, 2}) – Index of the principal axis (0, 1, or 2), as produced by
-
asphericity
(pbc=None)[source]¶ Asphericity.
See [Dima2004b] for background information.
Parameters: pbc (bool, optional) – If True
, move all atoms within the primary unit cell before calculation. IfNone
use value defined in MDAnalysis.core.flags[‘use_pbc’]Note
The
MDAnalysis.core.flags
flag use_pbc when set toTrue
allows the pbc flag to be used by default.References
[Dima2004b] Dima, R. I., & Thirumalai, D. (2004). Asymmetry in the shapes of folded and denatured states of proteins. J Phys Chem B, 108(21), 6564-6570. doi:10.1021/jp037128y New in version 0.7.7.
Changed in version 0.8: Added pbc keyword
-
center_of_mass
(pbc=None)[source]¶ Center of mass of the Group.
Parameters: pbc (bool, optional) – If True
, move all atoms within the primary unit cell before calculation. [False
]Returns: center – center of group given masses as weights Return type: ndarray Note
The
MDAnalysis.core.flags
flag use_pbc when set toTrue
allows the pbc flag to be used by default.Changed in version 0.8: Added pbc parameter
-
get_residues
(rg)[source]¶ By default, the values for each atom present in the set of residues are returned in a single array. This behavior can be overriden in child attributes.
-
get_segments
(sg)[source]¶ By default, the values for each atom present in the set of residues are returned in a single array. This behavior can be overriden in child attributes.
-
moment_of_inertia
(**kwargs)[source]¶ Tensor moment of inertia relative to center of mass as 3x3 numpy array.
Parameters: pbc (bool, optional) – If True
, move all atoms within the primary unit cell before calculation. [False
]Note
The
MDAnalysis.core.flags
flag use_pbc when set toTrue
allows the pbc flag to be used by default.Changed in version 0.8: Added pbc keyword
-
principal_axes
(pbc=None)[source]¶ Calculate the principal axes from the moment of inertia.
e1,e2,e3 = AtomGroup.principal_axes()
The eigenvectors are sorted by eigenvalue, i.e. the first one corresponds to the highest eigenvalue and is thus the first principal axes.
Parameters: pbc (bool, optional) – If True
, move all atoms within the primary unit cell before calculation. IfNone
use value defined in setup flags.Returns: axis_vectors – 3 x 3 array with v[0]
as first,v[1]
as second, andv[2]
as third eigenvector.Return type: array Note
The
MDAnalysis.core.flags
flag use_pbc when set toTrue
allows the pbc flag to be used by default.Changed in version 0.8: Added pbc keyword
-
radius_of_gyration
(**kwargs)[source]¶ Radius of gyration.
Parameters: pbc (bool, optional) – If True
, move all atoms within the primary unit cell before calculation. [False
]Note
The
MDAnalysis.core.flags
flag use_pbc when set toTrue
allows the pbc flag to be used by default.Changed in version 0.8: Added pbc keyword
-
shape_parameter
(**kwargs)[source]¶ Shape parameter.
See [Dima2004a] for background information.
Parameters: pbc (bool, optional) – If True
, move all atoms within the primary unit cell before calculation. [False
]Note
The
MDAnalysis.core.flags
flag use_pbc when set toTrue
allows the pbc flag to be used by default.References
[Dima2004a] Dima, R. I., & Thirumalai, D. (2004). Asymmetry in the shapes of folded and denatured states of proteins. J Phys Chem B, 108(21), 6564-6570. doi:10.1021/jp037128y New in version 0.7.7.
Changed in version 0.8: Added pbc keyword
-
-
class
MDAnalysis.core.topologyattrs.
Molnums
(values, guessed=False)[source]¶ Name of the molecule type
Two molecules that share a molecule type share a common template topology.
-
class
MDAnalysis.core.topologyattrs.
Moltypes
(values, guessed=False)[source]¶ Name of the molecule type
Two molecules that share a molecule type share a common template topology.
-
class
MDAnalysis.core.topologyattrs.
RecordTypes
(values, guessed=False)[source]¶ For PDB-like formats, indicates if ATOM or HETATM
Defaults to ‘ATOM’
-
get_residues
(rg)[source]¶ By default, the values for each atom present in the set of residues are returned in a single array. This behavior can be overriden in child attributes.
-
-
class
MDAnalysis.core.topologyattrs.
ResidueAttr
(values, guessed=False)[source]¶
-
class
MDAnalysis.core.topologyattrs.
Resindices
[source]¶ Globally unique resindices for each residue in the group.
If the group is an AtomGroup, then this gives the resindex for each atom in the group. This unambiguously determines each atom’s residue membership. Resetting these values changes the residue membership of the atoms.
If the group is a ResidueGroup or SegmentGroup, then this gives the resindices of each residue represented in the group in a 1-D array, in the order of the elements in that group.
-
class
MDAnalysis.core.topologyattrs.
Resnames
(values, guessed=False)[source]¶ -
sequence
(**kwargs)[source]¶ Returns the amino acid sequence.
The format of the sequence is selected with the keyword format:
format description ‘SeqRecord’ Bio.SeqRecord.SeqRecord
(default)‘Seq’ Bio.Seq.Seq
‘string’ string The sequence is returned by default (keyword
format = 'SeqRecord'
) as aBio.SeqRecord.SeqRecord
instance, which can then be further processed. In this case, all keyword arguments (such as the id string or the name or the description) are directly passed toBio.SeqRecord.SeqRecord
.If the keyword format is set to
'Seq'
, all kwargs are ignored and aBio.Seq.Seq
instance is returned. The difference to the record is that the record also contains metadata and can be directly used as an input for other functions inBio
.If the keyword format is set to
'string'
, all kwargs are ignored and a Python string is returned.Example: Write FASTA file
Use
Bio.SeqIO.write()
, which takes sequence records:import Bio.SeqIO # get the sequence record of a protein component of a Universe protein = u.select_atoms("protein") record = protein.sequence(id="myseq1", name="myprotein") Bio.SeqIO.write(record, "single.fasta", "fasta")
A FASTA file with multiple entries can be written with
Bio.SeqIO.write([record1, record2, ...], "multi.fasta", "fasta")
Parameters: - format (string, optional) –
"string"
: return sequence as a string of 1-letter codes"Seq"
: return aBio.Seq.Seq
instance"SeqRecord"
: return aBio.SeqRecord.SeqRecord
instance
Default is"SeqRecord"
- id (optional) – Sequence ID for SeqRecord (should be different for different sequences)
- name (optional) – Name of the protein.
- description (optional) – Short description of the sequence.
- kwargs (optional) – Any other keyword arguments that are understood by class:Bio.SeqRecord.SeqRecord.
Raises: ValueError
if a residue name cannot be converted to a1-letter IUPAC protein amino acid code; make sure to only
select protein residues.
TypeError
if an unknown format is selected.New in version 0.9.0.
- format (string, optional) –
-
-
class
MDAnalysis.core.topologyattrs.
Segindices
[source]¶ Globally unique segindices for each segment in the group.
If the group is an AtomGroup, then this gives the segindex for each atom in the group. This unambiguously determines each atom’s segment membership. It is not possible to set these, since membership in a segment is an attribute of each atom’s residue.
If the group is a ResidueGroup or SegmentGroup, then this gives the segindices of each segment represented in the group in a 1-D array, in the order of the elements in that group.
-
class
MDAnalysis.core.topologyattrs.
SegmentAttr
(values, guessed=False)[source]¶ Base class for segment attributes.
-
class
MDAnalysis.core.topologyattrs.
Tempfactors
(values, guessed=False)[source]¶ Tempfactor for atoms
-
class
MDAnalysis.core.topologyattrs.
TopologyAttr
(values, guessed=False)[source]¶ Base class for Topology attributes.
Note
This class is intended to be subclassed, and mostly amounts to a skeleton. The methods here should be present in all
TopologyAttr
child classes, but by default they raise appropriate exceptions.-
attrname
¶ str – the name used for the attribute when attached to a
Topology
object
-
singular
¶ str – name for the attribute on a singular object (Atom/Residue/Segment)
-
per_object
¶ str – If there is a strict mapping between Component and Attribute
-
top
¶ Topology – handle for the Topology object TopologyAttr is associated with
-
classmethod
from_blank
(n_atoms=None, n_residues=None, n_segments=None, values=None)[source]¶ Create a blank version of this TopologyAttribute
Parameters:
-
is_guessed
¶ Bool of if the source of this information is a guess
-