Class TorsionSetStrategy

  • Direct Known Subclasses:
    TorsionSetStrategyLikelySystematic, TorsionSetStrategyRandom

    public abstract class TorsionSetStrategy
    extends java.lang.Object
    Knowing all rotatable bonds of an underlying molecule and knowing those rigid fragments that are connected by them, the TorsionSetStrategy provides a mechanism to deliver valid and unique torsion sets, each effectively defining an individual conformer. While the strategies of the implementing classes differ (random, biased random, systematic, ...) this parent class provides the following common functionality:
  • maintains a history of already delivered torsion sets.
  • provides a novelty check for torsion sets suggested by derived classes.
  • check new torsion sets for atom collisions.
  • maintains a list of torsion set subsets that cause atom collisions.
  • provides a quick check, whether a new torsion set contains a subset causing collisions.

    A TorsionSetStrategy is employed by a ConformerGenerator, which repeatedly calls getNextTorsionIndexes(), creates the conformer, checks for atom collisions and reports back, whether and how serious atom collisions occurred.