OBRotorList Class Reference
Given an OBMol, set up a list of possibly rotatable torsions,. More...
#include <openbabel/rotor.h>
Public Member Functions | |
OBRotorList () | |
~OBRotorList () | |
void | Clear () |
size_t | Size () |
bool | IsFixedBond (OBBond *) |
bool | HasFixedBonds () |
void | RemoveSymVals (OBMol &) |
Setup | |
bool | Setup (OBMol &mol) |
void | SetFixedBonds (OBBitVec &fix) |
void | Init (std::string &fname) |
void | SetQuiet () |
bool | SetRotAtoms (OBMol &) |
bool | FindRotors (OBMol &mol) |
bool | SetEvalAtoms (OBMol &) |
bool | AssignTorVals (OBMol &) |
Iterator methods | |
OBRotor * | BeginRotor (OBRotorIterator &i) |
OBRotor * | NextRotor (OBRotorIterator &i) |
OBRotorIterator | BeginRotors () |
OBRotorIterator | EndRotors () |
Deprecated | |
bool | IdentifyEvalAtoms (OBMol &mol) |
void | SetFixAtoms (OBBitVec &fix) |
bool | HasFixedAtoms () |
void | IgnoreSymmetryRemoval () |
void | SetRotAtomsByFix (OBMol &) |
Detailed Description
Given an OBMol, set up a list of possibly rotatable torsions,.
Constructor & Destructor Documentation
OBRotorList | ( | ) |
Constructor.
~OBRotorList | ( | ) |
Destructor.
Member Function Documentation
void Clear | ( | void | ) |
Clear the internal list of rotors and reset.
Referenced by OBRotorList::Setup().
size_t Size | ( | ) | [inline] |
- Returns:
- the number of rotors in this list
Referenced by OBForceField::RandomRotorSearchInitialize(), OBRotorList::Setup(), OBConformerSearch::Setup(), OBForceField::SystematicRotorSearchInitialize(), and OBForceField::WeightedRotorSearch().
bool IsFixedBond | ( | OBBond * | bond | ) |
When no atoms/bonds are fixed or when bonds are fixed, this function will return true if the bond is fixed. When using the deprecated fixed atoms, this function will return true if the bond and at least one neighboring bond has fixed atoms.
Referenced by OBRotorList::FindRotors(), and OBRotorList::SetEvalAtoms().
bool HasFixedBonds | ( | ) | [inline] |
- Returns:
- True if this rotor list has any fixed bonds.
Referenced by OBRotorList::FindRotors(), and OBRotorList::SetEvalAtoms().
void RemoveSymVals | ( | OBMol & | mol | ) |
Rotates each bond to zero and 180 degrees and tests if the 2 conformers are duplicates. if so - the symmetric torsion values are removed from consideration during a search
bool Setup | ( | OBMol & | mol | ) |
Setup this rotor list for the supplied molecule. This method calls FindRotors(), SetEvalAtoms(), and AssignTorVals().
- Parameters:
-
mol The molecule.
- Returns:
- True if rotatable bonds were found.
Referenced by OBForceField::RandomRotorSearchInitialize(), OBConformerSearch::Setup(), OBForceField::SystematicRotorSearchInitialize(), and OBForceField::WeightedRotorSearch().
void SetFixedBonds | ( | OBBitVec & | fix | ) | [inline] |
Set the bonds that will be fixed.
Referenced by OBConformerSearch::Setup().
void Init | ( | std::string & | fname | ) | [inline] |
Intialize the private OBRotorRules database from a specific file.
void SetQuiet | ( | ) | [inline] |
Turn off debugging output.
bool SetRotAtoms | ( | OBMol & | mol | ) |
Set the atoms to rotate from the dihedral atoms for each rotor Uses OBRotor->GetDihedralAtoms() to call OBRotor->SetRotAtoms() and standarizes the dihedral angles via OBRotor->SetDihedralAtoms().
- Returns:
- True
bool FindRotors | ( | OBMol & | mol | ) |
Find all potentially rotatable bonds in the molecule. This method uses OBBond::IsRotor() for initial evaluation which depends on ring perception (i.e. ring bonds are not rotatable). Fixed bonds, specified using the deprecated fixed atoms or the new fixed bonds methods are not added to the list. All rotatable bonds will be sorted by their graph theoretical distance (GTD) score (see OBMol::GetGTDVector()). This results in the the rotors going from the inside to the outside of the mol.
- Parameters:
-
mol The molecule.
- Returns:
- True.
Referenced by OBRotorList::Setup().
bool SetEvalAtoms | ( | OBMol & | mol | ) |
Determines which atoms should be used to calculate the internal energy if the dihedral angle of the rotor is modified
- Returns:
- True
Referenced by OBRotorList::Setup().
bool AssignTorVals | ( | OBMol & | mol | ) |
Using the OBRotorRules database, set the torsion values (and delta) to be evaluated and tested. This method also sets the rotatable atoms for the rotors to the smallest possible set. For each bond there are two candidate sets, one on either side. The smallest of these is used and the torsion indexes for the rotor are inverted if needed (i.e. a-b-c-d -> d-c-b-a).
Referenced by OBRotorList::Setup().
OBRotor* BeginRotor | ( | OBRotorIterator & | i | ) | [inline] |
Initialize the i
iterator and get a pointer to the first OBRotor.
- Parameters:
-
i OBRotorIterator object.
Referenced by OBForceField::RandomRotorSearchInitialize(), OBRotorList::RemoveSymVals(), OBRotorList::SetEvalAtoms(), OBRotorList::SetRotAtoms(), OBRotorList::SetRotAtomsByFix(), OBRotorList::Setup(), OBRotamerList::Setup(), OBConformerSearch::Setup(), OBForceField::SystematicRotorSearchInitialize(), and OBForceField::WeightedRotorSearch().
OBRotor* NextRotor | ( | OBRotorIterator & | i | ) | [inline] |
Get a pointer to the next iterator.
- Parameters:
-
i OBRotorIterator object.
Referenced by OBForceField::RandomRotorSearchInitialize(), OBRotorList::RemoveSymVals(), OBRotorList::SetEvalAtoms(), OBRotorList::SetRotAtoms(), OBRotorList::SetRotAtomsByFix(), OBRotorList::Setup(), OBRotamerList::Setup(), OBConformerSearch::Setup(), OBForceField::SystematicRotorSearchInitialize(), and OBForceField::WeightedRotorSearch().
OBRotorIterator BeginRotors | ( | ) | [inline] |
Get the rotor list begin iterator.
OBRotorIterator EndRotors | ( | ) | [inline] |
Get the rotor list end iterator.
bool IdentifyEvalAtoms | ( | OBMol & | mol | ) | [inline] |
- Deprecated:
- Not declared. Use Setup() for top-level functionality
void SetFixAtoms | ( | OBBitVec & | fix | ) | [inline] |
Set the list of fixed (invariant) atoms to the supplied OBBitVec
Referenced by OBForceField::RandomRotorSearchInitialize(), OBForceField::SystematicRotorSearchInitialize(), and OBForceField::WeightedRotorSearch().
bool HasFixedAtoms | ( | ) | [inline] |
- Returns:
- whether this rotor list has any fixed (invariant) atoms
Referenced by OBRotorList::FindRotors(), and OBRotorList::SetEvalAtoms().
void IgnoreSymmetryRemoval | ( | ) | [inline] |
Has no effect
- Deprecated:
- Currently has no effect
void SetRotAtomsByFix | ( | OBMol & | mol | ) |
Set the atoms to rotate from the dihedral atoms for each rotor Insures the fixed atoms are respected, but otherwise functions like SetRotAtoms().
The documentation for this class was generated from the following files: