BALL::ResidueRotamerSet Class Reference
[Rotamers]

#include <BALL/STRUCTURE/residueRotamerSet.h>

List of all members.

Classes

struct  RotamerProbabilityGreaterThan_

Public Types

Type definitions

typedef std::vector< Rotamer >
::const_iterator 
ConstIterator
typedef std::vector< Rotamer >
::const_iterator 
const_iterator
typedef std::vector< Rotamer >
::iterator 
Iterator
typedef std::vector< Rotamer >
::iterator 
iterator

Public Member Functions

Constructors and Destructors

 ResidueRotamerSet ()
 ResidueRotamerSet (const ResidueRotamerSet &rotamer_set)
 ResidueRotamerSet (const Residue &residue, Size number_of_torsions)
virtual ~ResidueRotamerSet ()
External Iteration

Iterator begin ()
Iterator end ()
ConstIterator begin () const
ConstIterator end () const
Assignment

const ResidueRotamerSetoperator= (const ResidueRotamerSet &residue_rotamer_set)
 The assignment operator.
Accessors

const StringgetName () const
 Get the name of the ResidueRotamerSet.
bool isValid () const
 Find out if the class instance is valid.
Size getNumberOfRotamers () const
 Return the number of rotamers from this residue rotamer set.
Size getNumberOfTorsions () const
void setNumberOfTorsions (Size number_of_torsions) throw (Exception::IndexOverflow)
const Rotameroperator[] (Position index) const throw (Exception::IndexOverflow)
 Random access operator for single rotamers.
bool hasTorsionPhi () const
Angle getTorsionPhi () const
void setTorsionPhi (const Angle &phi)
bool hasTorsionPsi () const
Angle getTorsionPsi () const
void setTorsionPsi (const Angle &psi)
Rotamer Assignment

bool setTemplateResidue (const Residue &residue, Size number_of_torsions)
 Set the template residue, name, base coordinates ...
bool setRotamer (Residue &residue, const Rotamer &rotamer)
Rotamer getRotamer (const Residue &residue) const
const RotamergetRotamer (Position index) const
void setName (const String &name)
 Assign a new name.
void addRotamer (const Rotamer &rotamer)
 Add a rotamer to the current set.
void deleteRotamer (Iterator loc)
 Delete the Rotamer at the given iterator location.
void deleteRotamers (Iterator begin, Iterator end)
 Delete the range of rotamers.
void sort ()
 Sort the rotamers descendingly according to their probability.

Protected Member Functions

void addMovable_ (std::vector< String > &movable, const Atom &a, const HashSet< String > &assigned_atoms)
void setTorsionAngle_ (Residue &residue, const std::vector< String > &movable, float torsion)
 Set the torsion angles.

Protected Attributes

bool valid_
 Indicates whether the instance is valid.
String name_
 Name of the residue (variant name).
std::vector< Rotamerrotamers_
 Array containing all rotamers.
std::vector< Stringmovable_atoms_chi1_
 Names of the movable atoms (names) for each of the torsions.
std::vector< Stringmovable_atoms_chi2_
std::vector< Stringmovable_atoms_chi3_
std::vector< Stringmovable_atoms_chi4_
Size number_of_torsions_
 Number of valid torsions in the side chain.
StringHashMap< Vector3original_coordinates_
 Original coordinates of the template residue.
bool has_torsion_phi_
 true if this residue rotamer set is backbone dependent
bool has_torsion_psi_
 true if this residue rotamer set is backbone dependent
Angle phi_
 The torsion phi.
Angle psi_
 The torsion psi.

Detailed Description

Residue Rotamer Set.

This class stores all potential rotamers for a given side chain type. By linking a residue rotamer set to a specific side chain, one can iteratively try all contained rotamers for this side chain. The rotamers for a side chain are typically stored in a rotamer library .

The basic functionality is to store the rotamers and to modify residues according to this rotamers.

Definition at line 91 of file residueRotamerSet.h.


Member Typedef Documentation

Definition at line 100 of file residueRotamerSet.h.

Definition at line 99 of file residueRotamerSet.h.

Definition at line 103 of file residueRotamerSet.h.

Definition at line 102 of file residueRotamerSet.h.


Constructor & Destructor Documentation

BALL::ResidueRotamerSet::ResidueRotamerSet (  ) 

Default constructor.

BALL::ResidueRotamerSet::ResidueRotamerSet ( const ResidueRotamerSet rotamer_set  ) 

Copy constructor

BALL::ResidueRotamerSet::ResidueRotamerSet ( const Residue residue,
Size  number_of_torsions 
)

Detailed constructor

virtual BALL::ResidueRotamerSet::~ResidueRotamerSet (  )  [virtual]

Destructor


Member Function Documentation

void BALL::ResidueRotamerSet::addMovable_ ( std::vector< String > &  movable,
const Atom a,
const HashSet< String > &  assigned_atoms 
) [protected]

Determine all movable atoms. This method walks along the bonds starting at a and adds them to the movable vector. Atoms whose names are contained in assigned_atoms are ignored.

void BALL::ResidueRotamerSet::addRotamer ( const Rotamer rotamer  ) 

Add a rotamer to the current set.

ConstIterator BALL::ResidueRotamerSet::begin (  )  const [inline]

Definition at line 150 of file residueRotamerSet.h.

Iterator BALL::ResidueRotamerSet::begin (  )  [inline]

Definition at line 136 of file residueRotamerSet.h.

void BALL::ResidueRotamerSet::deleteRotamer ( Iterator  loc  ) 

Delete the Rotamer at the given iterator location.

void BALL::ResidueRotamerSet::deleteRotamers ( Iterator  begin,
Iterator  end 
)

Delete the range of rotamers.

ConstIterator BALL::ResidueRotamerSet::end (  )  const [inline]

Definition at line 157 of file residueRotamerSet.h.

Iterator BALL::ResidueRotamerSet::end (  )  [inline]

Definition at line 143 of file residueRotamerSet.h.

const String& BALL::ResidueRotamerSet::getName (  )  const

Get the name of the ResidueRotamerSet.

Size BALL::ResidueRotamerSet::getNumberOfRotamers (  )  const

Return the number of rotamers from this residue rotamer set.

Size BALL::ResidueRotamerSet::getNumberOfTorsions (  )  const

Return the number of valid torsions in the side chain. The number returned is between zero and four.

const Rotamer& BALL::ResidueRotamerSet::getRotamer ( Position  index  )  const

Return a reference to a given rotamer by number. The index should be in the range [0, getNumberOfRotamers ()[, however the index is computed modulo the maximum number, so it really doesn't matter.

Rotamer BALL::ResidueRotamerSet::getRotamer ( const Residue residue  )  const

Calculate the torsion angle of a residue. Retrieve the side-chain torsion angles from the residue's current conformation.

Angle BALL::ResidueRotamerSet::getTorsionPhi (  )  const
Angle BALL::ResidueRotamerSet::getTorsionPsi (  )  const
bool BALL::ResidueRotamerSet::hasTorsionPhi (  )  const
bool BALL::ResidueRotamerSet::hasTorsionPsi (  )  const
bool BALL::ResidueRotamerSet::isValid (  )  const

Find out if the class instance is valid.

const ResidueRotamerSet& BALL::ResidueRotamerSet::operator= ( const ResidueRotamerSet residue_rotamer_set  ) 

The assignment operator.

const Rotamer& BALL::ResidueRotamerSet::operator[] ( Position  index  )  const throw (Exception::IndexOverflow)

Random access operator for single rotamers.

void BALL::ResidueRotamerSet::setName ( const String name  ) 

Assign a new name.

void BALL::ResidueRotamerSet::setNumberOfTorsions ( Size  number_of_torsions  )  throw (Exception::IndexOverflow)

Set the number of valid torsions for this side chain.

Exceptions:
Exception::IndexOverflow if the number of torsions is above four.
bool BALL::ResidueRotamerSet::setRotamer ( Residue residue,
const Rotamer rotamer 
)

Assign a specific rotamer. Set the side-chain torsions of residue to the values specified by rotamer.

bool BALL::ResidueRotamerSet::setTemplateResidue ( const Residue residue,
Size  number_of_torsions 
)

Set the template residue, name, base coordinates ...

void BALL::ResidueRotamerSet::setTorsionAngle_ ( Residue residue,
const std::vector< String > &  movable,
float  torsion 
) [protected]

Set the torsion angles.

void BALL::ResidueRotamerSet::setTorsionPhi ( const Angle phi  ) 
void BALL::ResidueRotamerSet::setTorsionPsi ( const Angle psi  ) 
void BALL::ResidueRotamerSet::sort (  ) 

Sort the rotamers descendingly according to their probability.


Member Data Documentation

true if this residue rotamer set is backbone dependent

Definition at line 299 of file residueRotamerSet.h.

true if this residue rotamer set is backbone dependent

Definition at line 302 of file residueRotamerSet.h.

Names of the movable atoms (names) for each of the torsions.

Definition at line 287 of file residueRotamerSet.h.

Definition at line 288 of file residueRotamerSet.h.

Definition at line 289 of file residueRotamerSet.h.

Definition at line 290 of file residueRotamerSet.h.

Name of the residue (variant name).

Definition at line 281 of file residueRotamerSet.h.

Number of valid torsions in the side chain.

Definition at line 293 of file residueRotamerSet.h.

Original coordinates of the template residue.

Definition at line 296 of file residueRotamerSet.h.

The torsion phi.

Definition at line 305 of file residueRotamerSet.h.

The torsion psi.

Definition at line 308 of file residueRotamerSet.h.

std::vector<Rotamer> BALL::ResidueRotamerSet::rotamers_ [protected]

Array containing all rotamers.

Definition at line 284 of file residueRotamerSet.h.

Indicates whether the instance is valid.

Definition at line 278 of file residueRotamerSet.h.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines
Generated by  doxygen 1.6.3