#include <BALL/STRUCTURE/residueRotamerSet.h>
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 ResidueRotamerSet & | operator= (const ResidueRotamerSet &residue_rotamer_set) |
The assignment operator. | |
Accessors | |
const String & | getName () 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 Rotamer & | operator[] (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 Rotamer & | getRotamer (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< Rotamer > | rotamers_ |
Array containing all rotamers. | |
std::vector< String > | movable_atoms_chi1_ |
Names of the movable atoms (names) for each of the torsions. | |
std::vector< String > | movable_atoms_chi2_ |
std::vector< String > | movable_atoms_chi3_ |
std::vector< String > | movable_atoms_chi4_ |
Size | number_of_torsions_ |
Number of valid torsions in the side chain. | |
StringHashMap< Vector3 > | original_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. |
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.
typedef std::vector<Rotamer>::const_iterator BALL::ResidueRotamerSet::const_iterator |
typedef std::vector<Rotamer>::const_iterator BALL::ResidueRotamerSet::ConstIterator |
typedef std::vector<Rotamer>::iterator BALL::ResidueRotamerSet::iterator |
typedef std::vector<Rotamer>::iterator BALL::ResidueRotamerSet::Iterator |
BALL::ResidueRotamerSet::ResidueRotamerSet | ( | ) |
Default constructor.
BALL::ResidueRotamerSet::ResidueRotamerSet | ( | const ResidueRotamerSet & | rotamer_set | ) |
Copy constructor
Detailed constructor
virtual BALL::ResidueRotamerSet::~ResidueRotamerSet | ( | ) | [virtual] |
Destructor
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] |
void BALL::ResidueRotamerSet::deleteRotamer | ( | Iterator | loc | ) |
Delete the Rotamer at the given iterator location.
Delete the range of rotamers.
ConstIterator BALL::ResidueRotamerSet::end | ( | ) | const [inline] |
Iterator BALL::ResidueRotamerSet::end | ( | ) | [inline] |
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.
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.
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.
Exception::IndexOverflow | if the number of torsions is above four. |
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.
bool BALL::ResidueRotamerSet::has_torsion_phi_ [protected] |
true if this residue rotamer set is backbone dependent
bool BALL::ResidueRotamerSet::has_torsion_psi_ [protected] |
true if this residue rotamer set is backbone dependent
std::vector<String> BALL::ResidueRotamerSet::movable_atoms_chi1_ [protected] |
Names of the movable atoms (names) for each of the torsions.
std::vector<String> BALL::ResidueRotamerSet::movable_atoms_chi2_ [protected] |
std::vector<String> BALL::ResidueRotamerSet::movable_atoms_chi3_ [protected] |
std::vector<String> BALL::ResidueRotamerSet::movable_atoms_chi4_ [protected] |
String BALL::ResidueRotamerSet::name_ [protected] |
Name of the residue (variant name).
Size BALL::ResidueRotamerSet::number_of_torsions_ [protected] |
Number of valid torsions in the side chain.
Original coordinates of the template residue.
Angle BALL::ResidueRotamerSet::phi_ [protected] |
The torsion phi.
Angle BALL::ResidueRotamerSet::psi_ [protected] |
The torsion psi.
std::vector<Rotamer> BALL::ResidueRotamerSet::rotamers_ [protected] |
Array containing all rotamers.
bool BALL::ResidueRotamerSet::valid_ [protected] |
Indicates whether the instance is valid.