Go to the documentation of this file.
5 #ifndef BALL_STRUCTURE_RESIDUEROTAMERSET_H
6 #define BALL_STRUCTURE_RESIDUEROTAMERSET_H
8 #ifndef BALL_MATHS_ANGLE_H
12 #ifndef BALL_DATATYPE_STRING_H
16 #ifndef BALL_MATHS_VECTOR3_H
24 template <
typename Key>
class HashSet;
25 template <
typename Key>
class StringHashMap;
51 Rotamer(
float new_P,
float new_chi1,
float new_chi2 = 0.0,
52 float new_chi3 = 0.0,
float new_chi4 = 0.0);
98 typedef std::vector<Rotamer>::iterator
Iterator;
99 typedef std::vector<Rotamer>::iterator
iterator;
134 return rotamers_.
begin();
141 return rotamers_.end();
148 return rotamers_.begin();
155 return rotamers_.end();
216 bool setTemplateResidue(
const Residue& residue,
Size number_of_torsions);
258 : std::binary_function<Rotamer, Rotamer, bool>
312 #endif // BALL_STRUCTURE_RESIDUEROTAMERSET_H
Rotamer(float new_P, float new_chi1, float new_chi2=0.0, float new_chi3=0.0, float new_chi4=0.0)
void setTorsionPsi(const Angle &psi)
bool has_torsion_phi_
true if this residue rotamer set is backbone dependent
void setTorsionAngle_(Residue &residue, const std::vector< String > &movable, float torsion)
Set the torsion angles.
void deleteRotamers(Iterator begin, Iterator end)
Delete the range of rotamers.
void setNumberOfTorsions(Size number_of_torsions)
std::vector< String > movable_atoms_chi1_
Names of the movable atoms (names) for each of the torsions.
bool isValid() const
Find out if the class instance is valid.
bool has_torsion_psi_
true if this residue rotamer set is backbone dependent
Angle getTorsionPsi() const
Rotamer getRotamer(const Residue &residue) const
void addRotamer(const Rotamer &rotamer)
Add a rotamer to the current set.
std::vector< Rotamer >::iterator Iterator
float chi4
Angle in degrees.
ConstIterator begin() const
Angle psi_
The torsion psi.
void sort()
Sort the rotamers descendingly according to their probability.
bool setRotamer(Residue &residue, const Rotamer &rotamer)
void setTorsionPhi(const Angle &phi)
float chi3
Angle in degrees.
std::vector< Rotamer > rotamers_
Array containing all rotamers.
String name_
Name of the residue (variant name)
const Rotamer & getRotamer(Position index) const
Size number_of_torsions_
Number of valid torsions in the side chain.
void setName(const String &name)
Assign a new name.
std::vector< Rotamer >::iterator iterator
Rotamer(const Rotamer &rotamer)
Copy constructor.
void addMovable_(std::vector< String > &movable, const Atom &a, const HashSet< String > &assigned_atoms)
std::vector< Rotamer >::const_iterator const_iterator
ConstIterator end() const
void deleteRotamer(Iterator loc)
Delete the Rotamer at the given iterator location.
std::vector< String > movable_atoms_chi4_
bool valid_
Indicates whether the instance is valid
std::vector< Rotamer >::const_iterator ConstIterator
std::vector< String > movable_atoms_chi2_
bool hasTorsionPsi() const
float chi1
Angle in degrees.
Angle getTorsionPhi() const
bool hasTorsionPhi() const
Size getNumberOfTorsions() const
#define BALL_CREATE(name)
Angle phi_
The torsion phi.
std::vector< String > movable_atoms_chi3_
float chi2
Angle in degrees.
Size getNumberOfRotamers() const
Return the number of rotamers from this residue rotamer set.
StringHashMap< Vector3 > original_coordinates_
Original coordinates of the template residue.