|
From: E.L. W. (Egon) <eg...@sc...> - 2003-07-23 04:49:18
|
On Wednesday 23 July 2003 03:30, Oliver Horlacher wrote: > I think what would be quite usefull to have the graph re-write rules in the > reaction. I.e. what did we do to the reactantant graphs to arrive at the > product graphs. In it's simplest form this would be a set of what bonds > are broken and what bonds are formed and what order they have to occur in. > > This could then be used to clasify reactions and a way to create new > reactions. You could have a factory class that contains a method that > acceps a list of molecules which are the reactants and the re-write rules > and returns a Reaction class. Yes, that would be very useful. For this one needs atom mapping. This could be hard coded by the user, or generated by the maximal common substructure search algorithm. One way used to represent 'reactions' is use of a matrix of dimension NxN, where N is the total number of atoms in the set of products, which is equal to the total number of atoms in the set of reactants. This, however, requires atom numbering matching the reactants/products and is thus reaction specific... Alternatively, one could work with patterns, and have the matrix match a certain fragment, and convert that fragment... depending on how specific the reaction is, the fragment would be larger. E.g. general oxidation, which would convert all COH into C=O, or mild oxidation with some reagent, which would conert R1,R2COH into R1C=OR2, where R1, R2 is specified... This is something I probably can work on later this year (no promises etc ;) Egon |