From: Egon W. <ego...@gm...> - 2009-03-04 16:19:54
|
On Wed, Mar 4, 2009 at 4:58 PM, Stefan Kuhn <ste...@eb...> wrote: > On Wednesday 04 March 2009 15:43:40 Egon Willighagen wrote: >> On Tue, Mar 3, 2009 at 6:16 PM, Stefan Kuhn <ste...@eb...> wrote: >> > I found JCP right now adds a fragment >> >> What kind of fragments are you taking about? > Any sort of thing in JCP, e. g. a ring, a chain, whatever. You can call it > molecule or atomcontainer or whatever, I don't care But it matters... I understand you mean not "t-Bu", but just an IAtomContainer with IAtoms and IBonds... >> > to an existing AtomContainer, when you >> > paint e. g. a ring detached from the existing structure. This behaviour >> > causes problems with creating reactions. >> >> What are those problems? > If you draw two separate fragments, molecules, atomcontainers or whatever you > call them and want to make one the reactant and one the product (which is the > natural way to do it in jcp) and you click on the first and say "make > reactant in new reaction", both will become one reactant, since make > reactant/product operates on atomcontainers. So, there is a bug in that code: the make reaction action should clearly do a partitioning... it has to convert the model backend anyway... that does not seem to happen right now. Clearly, this functionality has not been ported properly from JCP2 to JCP3. >> > Obviously the reaction stuff can be >> > changed, but I would prefer to have fragments in the MoleculeSet >> > separatly. >> >> How would you need to change the reaction stuff? > Do a partitioning Sure. See above. >> > What else have we got the MoleculeSet for? >> >> A fragment is not a molecule... So, MoleculeSet is not for a set of >> fragments, I'd say. > In jcp, this is all interchangeable. What defines a molecule in JCP? Does it > suddenly become a molecule if the user finishes? This distinction is not > viable in jcp No, but from your writing I understood that you wanted for making that distinction... >> > Plus in some cases (e. g. the >> > reaction stuff) you would need to do a partitioning, which is costly. >> >> How so? And why is this a problem? Upon deleting a bond you would >> still have to do this, ...? >> >> > But in any case we need a procedure to follow. I vote for one >> > AtomContainer must always be a connected structure. What do you think? >> >> IMolecule has the (unenforced) semantics that it has to be connected. >> Such requirement has never existed for IAtomContainer. > And chemmodel contains a MoleculeSet. So right now you can create illegal > molecules. Yes, that would be a correct observation. >> Please explain the problems in more detail... > I hope I made it clear. The current CDK design has some limitations, and if you convert a JCP drawing of one or more molecules into a reaction, you will have to do partitioning. If you like the performance drop because of that or not. Does that answer your questions? Egon -- Post-doc @ Uppsala University http://chem-bla-ics.blogspot.com/ |