Public Methods | |
FlipGroup (const MolAtom &at0, const MolAtom &at1, const MolAtom &at2) | |
Constructor, with the central atom. | |
Public Attributes | |
const MolAtom * | mpAtom0 |
The atom which is an asymmetric center. | |
const MolAtom * | mpAtom1 |
The first atom defining the rotation axis. | |
const MolAtom * | mpAtom2 |
The second atom defining the rotation axis. | |
list< pair< const MolAtom *, set< unsigned long > > > | mvRotatedChainList |
The set of atoms that are to be rotated during the flip. | |
unsigned long | mNbTest |
Number of times this flip has been tried, and the number of times it has been accepted. | |
unsigned long | mNbAccept |
Number of times this flip has been tried, and the number of times it has been accepted. |
This is useful to flip the absolute configuration for asymmetric centers. Note that the bond is only rotated, so that the entire group is not mirrored (no absolute configuration is broken in the group).
Also, a FlipGroup can correspond to a 180° rotation exchanging Ai and Aj (rotating the two chains around the bissecting angle of bonds A-Ai and A-Aj)
|
Number of times this flip has been tried, and the number of times it has been accepted. Used in Molecule::GlobalOptRandomMove, to avoid flips that break some restraint (and deciding which flips break some restraint is difficult before having a real conformation). |
|
Number of times this flip has been tried, and the number of times it has been accepted. Used in Molecule::GlobalOptRandomMove, to avoid flips that break some restraint (and deciding which flips break some restraint is difficult before having a real conformation). |
|
The set of atoms that are to be rotated during the flip. The first atom is the one bonded to the central atom, whose bond will be flipped with respect to the plane defined by (at1,at0,at2). However, if this atom is identical to mpAtom0, then this indicates that a 180° rotation exchanging atom1 and atom2 is to be performed. |