Camelia, the Perl 6 bug

IRC log for #bioclipse, 2011-10-07

| Channels | #bioclipse index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
06:27 sneumann joined #bioclipse
06:38 egonw__ joined #bioclipse
06:41 olass joined #bioclipse
07:22 Gpox joined #bioclipse
08:00 zaetnick joined #bioclipse
08:05 jonalv joined #bioclipse
08:21 samuell joined #bioclipse
09:34 olass joined #bioclipse
14:48 olass Gpox, egonw: ping
14:49 olass egonw: I reported a bug, @pz 3087
14:49 olass @pz 3087
14:49 zarah http://pele.farmbio.uu.se/bug​zilla36/show_bug.cgi?id=3087
14:49 olass Arvid tracked doen the error but needs help with fixing it, it concerns aromaticity
14:49 egonw ok
14:49 egonw seems like JCP is doing something funny
14:49 egonw Gpox: what did you find?
14:49 olass yes..
14:50 olass he said that JChemPaintEdiotorWidget.updateAtomTypesAndHCounts did something strange...
14:50 olass Gpox: ping?
14:51 olass it seems we can properly read in aromaticity using bond order 4 in mol block
14:51 Gpox yes it removes ISAROMATIC flag for bonds and atoms, and sets a lot of ther stuff to 0 or null
14:51 olass that sounds wrong...
14:52 Gpox it is for when the structure is changed to calculate new values
14:53 egonw which makes sense
14:53 egonw deleting an atom may change the aromaticity
14:54 olass readiing in kekule works but having bond order 4 than all those aromaticity is destroyed
14:54 Gpox but then the CDKHueckelAromaticityDetector.detectAromaticity needs to detect them again
14:54 olass one chemist deleted an oxygen and suddenly lost all aromaticity in the molecule in all rings
14:55 egonw one sec
14:55 egonw let me check something
14:55 egonw this is prob lack of info
14:55 egonw bond=4 has no bond order information
14:56 egonw and the CDK (yeah, we need a student to fix that) has no concept for SINGLE_OR_DOUBLE bond order
14:56 egonw olass: that's why using bond=4 sucks
14:57 olass yes, but AZ has a lot of these files and all other programs operate on them
14:57 egonw we have had such discussions before
14:57 egonw AZ is not the only one using the CDK...
14:57 olass sad if AZ cannot use Bioclipse because of this
14:57 egonw so, we prefer to stick to the standard
14:58 olass is there no way we can work around this?
14:58 egonw probably
14:58 olass how?
14:58 egonw I'm looking at something... hence, one sec
14:58 olass :)
15:01 egonw no, I don't have a quick answer
15:01 olass can we not convert to kekule in cdk?
15:01 egonw yes, you can
15:01 olass if we read in bond order 4, just convert to kekule before proceeding?
15:02 egonw DeduceBondSystemTool
15:02 egonw but not sure when that will fail
15:02 olass ?
15:02 egonw because it does it not just for the 'aromatic' bond, AFAIK
15:02 olass does DeduceBondSystemTool convert to kekule?
15:02 egonw you need to check that
15:03 egonw yes
15:03 egonw DeduceBondSystemTool is to convert to kekule
15:03 olass does it take bond order 4 into account at all?
15:04 jonalv what was wrong wtih just recalcualting the info after an edit?
15:04 egonw missing information
15:04 jonalv I though Gpox suggested that
15:04 jonalv what information is missing?
15:04 egonw who knows...
15:04 jonalv lol
15:04 egonw the information to decide which atom type an atom is
15:05 egonw so, number of neighbors, bond order, and/or hybridiziation
15:05 olass but it has bond order 4
15:05 olass it is read from file
15:05 egonw no
15:05 egonw bond order 4 is something else
15:05 egonw bond type 4 in MDL means: aromatic
15:05 jonalv okey so you have enough information to draw it but not enough information to calculate the aromaticity?
15:05 egonw so the bond order can be: single, double, and triple
15:06 egonw jonalv: no, before you edit things, there *is* enough information
15:06 egonw after the edit you're kind of lost
15:06 egonw because you were bootstrapping
15:06 jonalv egonw: but I thought it was possible to draw a molecule and then calcualte aromaticity for it
15:07 egonw and you cannot decide if someting is still aromatic based on the information that is was aromatic before you might have broken that aromatic... or not
15:07 jonalv no I get that
15:07 egonw and this is the exact problem here
15:07 jonalv but I thought given a molecule drawing you could calculate aromaticity
15:07 egonw so, you need to convert that arom info into info that you can use after the editing
15:07 egonw therefore the convertion to a proper kekule structure
15:08 jonalv regardless of whether some simialr molecule
15:08 egonw the only problem with that is that the current CDK does not have a perfect algorithm for that
15:08 egonw so, it's replacing something with error with something that has error too
15:08 olass how bad is it?
15:08 egonw I wish I knew
15:08 olass bond order 4 is not an error
15:08 egonw this was part of my VR application, remember :)
15:08 jonalv this feels very much like a show stopper
15:08 olass yes
15:08 egonw [10/07/11 17:08] <olass> bond order 4 is not an error
15:09 egonw bond type is certainly not an error
15:09 egonw bond order for exists too, just not in the MDL world
15:09 egonw but the confounded things
15:09 egonw and bond type 4 is not part of MDL molfile
15:09 egonw just because it has a different meaning than bond order
15:09 olass it will definitely dramatically reduce our chances with AZ as it is now....
15:09 egonw yet, people used it because they were lazy and thinking of the now
15:10 olass yes
15:10 egonw rather than than their own needs inthe future
15:10 olass people are lazy
15:10 jonalv egonw: so basicly you are telling me that CDK does not have a working algorithm for calculating aromaticity? I am missing something here...
15:10 egonw jonalv: yes, you are missing something
15:11 jonalv egonw: can you explain again? :)
15:11 egonw no, not know, because I am expected at the dinner table
15:11 egonw just read the logs once more
15:11 olass egonw: what options do we have here? If a user has a MOL-block with bond order 4? Should we display a dialog and say we don't support it?
15:11 jonalv you said something about bootstrapping but why is it needed. olass did you understand?
15:12 * olass wants to hear egonws answer
15:12 egonw olass: that's an option... alternatively, have a preference setting that if set will always run the DeduceBondOrderSystem if the MDL molfile had aromatic bonds
15:12 egonw or maybe just make that the default
15:13 olass yes, probably a good idea
15:13 olass problem is, we can't know if it fails
15:13 egonw quite so!
15:13 olass and that might show incorrect chemistry
15:13 egonw that's the problem here in answering what is the best solution
15:14 egonw in short: the DeduceBondOrderSystem tool needs a good validation
15:15 egonw and it could use a rewrite, to allow indicating for which atoms it should do it, and that it should use atom type information
15:15 egonw instead of the information is uses now
15:15 egonw because the CDK atom typer is probably more accurate than it's own atom typing code
15:15 egonw but, for that we need resources
15:15 egonw it always comes down to that
15:16 egonw olass, Gpox: you got enough to go on for now?
15:16 olass Gpox, what do you say?
15:16 egonw another thing I was thinking of was this appraoch:
15:17 egonw (Oh, and BTW, this is the perfect argument why we must have *different* Bioclipse editors for different formats)
15:17 egonw another option is to, after reading, set hybridization info for all aromatic atoms
15:18 egonw but that has error too, because triple-order bonds can be part of an aromatic system too, I think
15:18 egonw so, that would not be fool proof either
15:19 egonw another ideas is to 'fix' the JCPEditorWidget
15:19 egonw right now it deletes *all* info on all atoms
15:19 egonw not just the atoms affected by the edit
15:20 jonalv but can you reasonably easy figure out which atoms actually where effected when it comes down to aromaticity like things?
15:20 egonw well, not with the current widget code
15:21 jonalv I am still lost as to why you can\'t just start over from scratch and rebuild all the information for the molecule after the edit
15:21 jonalv do the atom typing and all that stuff
15:21 egonw well, write a blog post how you can
15:22 egonw (and along the way you will figure out why you cannot in this case)
15:22 olass jonalv: well, all bonds look like single bonds
15:22 egonw and they practically are
15:22 jonalv they do?
15:22 olass CDK just has no bond order for "aromatic"
15:22 egonw olass++
15:22 olass it has for single, double, and triple
15:22 egonw and quadruple
15:22 olass reading bond order 4 sets a single bond with aromaticity flag
15:23 egonw which is bond order 4 :)
15:23 olass and cleaning MOL-block bond order 4 leaves a single bond
15:23 egonw known bug
15:23 egonw really, really hard to introduce bond order UNKNOWN
15:23 jonalv hm, so unless you have explicit hydrogens there is no way whatsoever?
15:23 olass and current impl cleans ALL atoms for aromaticity /which sounds like overkill IMHO)
15:23 jonalv cause that info is lost too?
15:24 egonw jonalv: MDL molfiles normally do not have explicit hydrogens
15:24 egonw (takes up too much disk space)
15:24 olass if it cleaned just affected atoms, we would not lose aromaticity in unaffected rings
15:24 jonalv if they where added would that be enough info for us to be in business?
15:24 olass egonw: is it enough to clean aromaticity in affected ring?
15:24 egonw olass++ (again)
15:25 egonw yes, that would help a lot too
15:25 olass so find if atom is in ring?
15:25 olass and clean aromaticity in that ring?
15:25 egonw that's a short cut in the Bioclipse-JCP code
15:25 olass but would that suffice?
15:25 egonw hardest part here is to update the Bioclipse code base to keep track of what is affected
15:25 egonw that can be recovered from the done 'edit'
15:25 egonw Gpox knows about that
15:26 olass Gpox: what do you think?
15:26 olass 1) Show dialog "we don't support bond order 4" (bad, people use it a lot)
15:27 olass 2) Convert to kekule on read (although cdk code is not super for this)
15:27 egonw replace 1) with the prefs page idea
15:27 olass 3) try workaround to not remove aromaticity for all atoms but just the ones in affected rings
15:27 olass egonw: you suggest 3?
15:27 olass or 1+2 via prefs?
15:28 egonw dunno... it's impossible to oversee the costs for each solution
15:28 egonw I really don't know which one is better
15:28 egonw there is also:
15:29 egonw 4) add IBond.Order.UNKNOWN + rewrite DeduceBOndOrderSystem to only fix unknown bond orders
15:29 egonw that would be the best option, but likely the most involved too
15:31 Gpox to find out the changed atoms I need to edit the jcp code in cdk, not all operations uses edits
15:31 egonw OK, going for dinner now
15:31 egonw before the pizza is completely frozen
15:31 egonw ok, so that would not be a 'quick fix' either
15:32 egonw go for 2 and ask AZ if the find trouble
15:32 egonw bbl
15:38 olass Gpox: is it possible for you to implement that? I would go for just always running the deducebondordertool when reading a mol with at least one MOL-block-bond-order-4....
15:38 * olass also needs to eat
15:39 jonalv olass: I am giving up for today. See you on monday then?
15:39 olass yes
15:40 Gpox I can take a look at it on monday
18:35 sneumann joined #bioclipse
19:50 samuell joined #bioclipse
21:11 egonw joined #bioclipse
21:27 olass joined #bioclipse

| Channels | #bioclipse index | Today | | Search | Google Search | Plain-Text | summary