runTransmutations(self,
data,
used=None)
|
|
Begin transmuating atoms.
This Alchemist will determine what target atoms to transmute based on
its set of original targets minus those targets that have been used by
previous Alchemists. Each time this Alchemist transmute an atom, it
calls its child Alchemist to do its mutations (which calls its child
Alchemist each time it transmutes an atom). Thus is the iterative
process of transmutating all possible combinations achieved.
If this Alchemist does not have any children, than it is the last in
the Alchemist line and it should add a new project entry each time it
transmutes an atom.
- Parameters:
struct (schrodinger.structure.Structure) - The structure object with the transmuted atoms
used (list of int) - The atom indexes of the transmuted atoms by parent Alchemists.
The last atom in this list is used to ensure that this Alchemist
does not mutate any target already covered by parent Alchemists.
- Overrides:
Alchemist.runTransmutations
|