FOX/ObjCryst++
1.10.X (development)
|
When 3(A1..1n) or more atoms are connected to a same atom A, it defines a 'flip' group, where it is possible to rotate bonds to their symmetric with respect to one plane defined by atoms Ai-A-Aj. More...
Public Member Functions | |
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< MolAtom * > > > | mvRotatedChainList |
The set of atoms that are to be rotated during the flip. More... | |
unsigned long | mNbTest |
Number of times this flip has been tried, and the number of times it has been accepted. More... | |
unsigned long | mNbAccept |
When 3(A1..1n) or more atoms are connected to a same atom A, it defines a 'flip' group, where it is possible to rotate bonds to their symmetric with respect to one plane defined by atoms Ai-A-Aj.
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)
Definition at line 1287 of file Molecule.h.
|
mutable |
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).
Definition at line 1309 of file Molecule.h.
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.
Definition at line 1304 of file Molecule.h.