Given a set of starting reactant molecules and reagent objects which
can perform reactions on appropriate reactants, randomly apply the
reagents to the reactants in sequence (and parallel) to generate a
product that could conceivably be synthesized with such components.
Furthermore, provide the ordered list of reactants, reagents, and
intermediate products to yield the synthesized product.
|
__init__(self,
maxSteps=0,
maxTries=MAX_TRIES)
Initialization constructor. |
|
|
|
__call__(self,
reactantSmilesList,
reagentList)
Primary execution method, expects a list of molecules as the
starting reactants and a list of BaseReagent objects that can be applied
to the reactants. |
|
|
|
generateSynthesis(self,
reactantSmilesList,
reagentList,
depth=0)
Same as primary execution method, but this one returns actual
molecule objects instead of SMILES strings. |
|
|
|
generateReactionStep(self,
reactantList,
reagentList,
requiredReactants=None)
Generate a single reaction step, instead of an entire synthesis
pathway. |
|
|
|
betterReactionSteps(self,
reactionSteps1,
reactionSteps2)
Decide which reaction sequence / synthesis provides a better
problem example. |
|
|
|
retrieveSyntheses(self,
synthesisRequest,
synthesisCount=1)
Retrieve syntheses from the database based upon the
synthesisRequest. |
|
|
|
preGenerateSyntheses(self,
synthesisRequest,
synthesisCount=1)
Generates a synthesis based upon the synthesisRequest, and then
persists it into the database for rapid retrieval later. |
|
|
|
clearSynthesisCache(self,
synthesisRequest,
maxAcceptable=0,
maxDesired=0)
Look for pre-generated cached syntheses in the database that match
the synthesisRequest. |
|
|