You can subscribe to this list here.
2009 |
Jan
|
Feb
|
Mar
|
Apr
(3) |
May
(12) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2012 |
Jan
|
Feb
(3) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(129) |
Dec
(140) |
2013 |
Jan
(25) |
Feb
(30) |
Mar
(45) |
Apr
(62) |
May
(65) |
Jun
(93) |
Jul
(10) |
Aug
(118) |
Sep
(95) |
Oct
(123) |
Nov
(17) |
Dec
(36) |
2014 |
Jan
(96) |
Feb
(54) |
Mar
(22) |
Apr
(29) |
May
(29) |
Jun
(5) |
Jul
(77) |
Aug
(14) |
Sep
(1) |
Oct
(3) |
Nov
|
Dec
|
2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(4) |
Sep
|
Oct
|
Nov
|
Dec
|
From: John M. <joh...@gm...> - 2014-03-09 12:50:13
|
Might have also been a messy branch, I had some other parts on there :-). Only the stuff that is in the patch should be clear now. On 9 Mar 2014, at 12:46, Egon Willighagen <eg...@us...> wrote: > OK, then I will assume it's my current in-progress patch test system :) > > [patches:#742] Cycles updates for circular fp > > Status: open > Group: Needs_Review > Created: Mon Feb 10, 2014 12:23 PM UTC by John May > Last Updated: Sun Mar 09, 2014 12:33 PM UTC > Owner: nobody > > Adds some simple functionality updates to mimic the CDD ring perception. Was planned already but made sense to patch now : commits on 10th feb. > > https://github.com/johnmay/cdk/compare/cdk:master...feature%2Fcycles-filter?expand=1 > > Sent from sourceforge.net because cdk...@li... is subscribed to https://sourceforge.net/p/cdk/patches/ > > To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/cdk/admin/patches/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. > > ------------------------------------------------------------------------------ > Subversion Kills Productivity. Get off Subversion & Make the Move to Perforce. > With Perforce, you get hassle-free workflows. Merge that actually works. > Faster operations. Version large binaries. Built-in WAN optimization and the > freedom to use Git, Perforce or both. Make the move to Perforce. > http://pubads.g.doubleclick.net/gampad/clk?id=122218951&iu=/4140/ostg.clktrk_______________________________________________ > Cdk-patches mailing list > Cdk...@li... > https://lists.sourceforge.net/lists/listinfo/cdk-patches |
From: Egon W. <ego...@gm...> - 2013-11-15 09:37:03
|
On Tue, Nov 12, 2013 at 4:47 PM, John May <joh...@gm...> wrote: > Thanks for the patch have applied an pushed. I modified it to use the > sourceforge email address as it guards against spam a little better. I’m > also not sure about that junior task - copyright is tricky and the author > list could get very long. Changing a typo for example would cause someone to > appear in the git log but doesn’t really mean they have copyright on the > file. Thanks for the patch. John is probably right that this is not one of the best junior tasks... in fact, it should indeed be the authors themselves to add such information. The task should be more about the following... still many source files have headers that start with: /* $RCSfile$ * $Author$ * $Date$ * $Revision$ * * Copyright (C) 2002-2007 The Chemistry Development Kit (CDK) project The first few lines are remnant from the CVS days (though it worked for a long time in Subversion too)... these should be removed, but the copyright line does not need touching, to: /* Copyright (C) 2002-2007 The Chemistry Development Kit (CDK) project This line is actually inaccurate, because the CDK is not a legal entity and neither has anyone ever reassigned copyright to this non-existent entity, so it must be updated too, but as said, that's harder to track down. One thing here is that when we started, Christoph pulled in a lot of code from his past CompChem project, and we lost the history of that, and I am not sure if he was sole author or if people in his groups also worked on that at the time... Egon -- Dr E.L. Willighagen Postdoctoral Researcher Department of Bioinformatics - BiGCaT Maastricht University (http://www.bigcat.unimaas.nl/) Homepage: http://egonw.github.com/ LinkedIn: http://se.linkedin.com/in/egonw Blog: http://chem-bla-ics.blogspot.com/ PubList: http://www.citeulike.org/user/egonw/tag/papers ORCID: 0000-0001-7542-0286 |
From: John M. <joh...@gm...> - 2013-11-12 15:48:04
|
Hi Rafel, Thanks for the patch have applied an pushed. I modified it to use the sourceforge email address as it guards against spam a little better. I’m also not sure about that junior task - copyright is tricky and the author list could get very long. Changing a typo for example would cause someone to appear in the git log but doesn’t really mean they have copyright on the file. Thanks, J On 11 Nov 2013, at 08:44, Rafel Israels <raf...@go...> wrote: > Dear Egon, dear John, > > please find attached a second patch. > > I understand my introduction email to CDK-devel got lost, I will resend ... > > This patch is a cleanup of author-data in three source-file headers according to junior task 12. Let me know if you think any of my following choices was incorrect: > I did *not* delete authors (Christoph Steinbeck) even though git doesnt mention him > I did *not* update any email adresses > regards, > Rafel > <0001-Header-edit-junior-task12-on-Element-Isotope-AtomTyp.patch>------------------------------------------------------------------------------ > November Webinars for C, C++, Fortran Developers > Accelerate application performance with scalable programming models. Explore > techniques for threading, error checking, porting, and tuning. Get the most > from the latest Intel processors and coprocessors. See abstracts and register > http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk_______________________________________________ > Cdk-patches mailing list > Cdk...@li... > https://lists.sourceforge.net/lists/listinfo/cdk-patches |
From: Egon W. <ego...@gm...> - 2013-11-11 10:06:43
|
On Mon, Nov 11, 2013 at 9:44 AM, Rafel Israels <raf...@go...> wrote: > I did *not* delete authors (Christoph Steinbeck) even though git doesnt > mention him Chris wrote CompChem, which was the basis for JChemPaint and starting point of CDK. Because CVS was common place then, and did not have means to copy commit histories, such detailed commit info was lost. Egon -- Dr E.L. Willighagen Postdoctoral Researcher Department of Bioinformatics - BiGCaT Maastricht University (http://www.bigcat.unimaas.nl/) Homepage: http://egonw.github.com/ LinkedIn: http://se.linkedin.com/in/egonw Blog: http://chem-bla-ics.blogspot.com/ PubList: http://www.citeulike.org/user/egonw/tag/papers ORCID: 0000-0001-7542-0286 |
From: John M. <joh...@gm...> - 2013-11-11 09:12:29
|
Thank Rafel, Chris’ predates the git and the SVN: http://www.docjar.com/html/api/org/openscience/compchem/Element.java.html |
From: Rafel I. <raf...@go...> - 2013-11-11 08:44:48
|
Dear Egon, dear John, please find attached a second patch. I understand my introduction email to CDK-devel got lost, I will resend ... This patch is a cleanup of author-data in three source-file headers according to junior task 12. Let me know if you think any of my following choices was incorrect: * I did *not* delete authors (Christoph Steinbeck) even though git doesnt mention him * I did *not* update any email adresses regards, Rafel |
From: John M. <joh...@gm...> - 2013-10-14 11:00:03
|
Hi Rafel, Looks good, applied and pushed. J On 14 Oct 2013, at 11:36, Rafel Israels <raf...@go...> wrote: > Dear Egon, dear John, > > please find attached a first patch from my side. > > @John: as discussed with Egon last week, I will introduce myself on CDK-development list by separate email. > > This patch is on the junior-task 16 -- I understand this is not a very important task and you may not even apply it. For me it's just a first test and I'd highly appreciate your feedback, especially if you have recommendations for improvement. For this reason I also include an (edited) log of my shell. It shows how I first remove the try-catch lines, which leads to two new Exceptions being thrown, then after including the expected attributes in @Test, those Exceptions disappear. > > regards, > > Rafel > > % git pull > > % git checkout -b juniorTask16_SmilesParser > > % ant test-module -Dmodule=smiles | grep junit > [junit] Running org.openscience.cdk.modulesuites.MsmilesTests > [junit] Tests run: 348, Failures: 3, Errors: 1, Time elapsed: 13.61 sec > [junit] Test org.openscience.cdk.modulesuites.MsmilesTests FAILED > > % grep Exception reports/result-smiles.txt > java.lang.Exception: test timed out after 1000 milliseconds > > % gvim src/test/org/openscience/cdk/smiles/SmilesParserTest.java > > % ant test-dist-all | grep jar > [jar] Building jar: /home/rafel/Desktop/cdk/dist/jar/cdk-test-smiles.jar > [jar] Building jar: /home/rafel/Desktop/cdk/dist/jar/cdk-test-smiles-sources.jar > > % ant test-module -Dmodule=smiles | grep junit > [junit] Running org.openscience.cdk.modulesuites.MsmilesTests > [junit] Tests run: 348, Failures: 3, Errors: 3, Time elapsed: 13.579 sec > [junit] Test org.openscience.cdk.modulesuites.MsmilesTests FAILED > > % grep Exception reports/result-smiles.txt > org.openscience.cdk.exception.InvalidSmilesException: Could not parse n1cncc1: > Caused by: uk.ac.ebi.beam.InvalidSmilesException: A valid kekule structure could not be assigned to: n1cncc1 > org.openscience.cdk.exception.InvalidSmilesException: Could not parse n1cccc1: > Caused by: uk.ac.ebi.beam.InvalidSmilesException: A valid kekule structure could not be assigned to: n1cccc1 > java.lang.Exception: test timed out after 1000 milliseconds > > % ant test-dist-all | grep jar > [jar] Building jar: /home/rafel/Desktop/cdk/dist/jar/cdk-test-smiles.jar > [jar] Building jar: /home/rafel/Desktop/cdk/dist/jar/cdk-test-smiles-sources.jar > > % ant test-module -Dmodule=smiles | grep junit > [junit] Running org.openscience.cdk.modulesuites.MsmilesTests > [junit] Tests run: 348, Failures: 3, Errors: 1, Time elapsed: 13.564 sec > [junit] Test org.openscience.cdk.modulesuites.MsmilesTests FAILED > > % grep Exception reports/result-smiles.txt > java.lang.Exception: test timed out after 1000 milliseconds > > % git commit -a -m "try-catch substituted by @test(expected=InvalidSmilesException) in SmilesParserTest.java (= junior task 16)" > [juniorTask16_SmilesParser 4799d3b] try-catch substituted by @test(expected=InvalidSmilesException) in SmilesParserTest.java (= junior task 16) > 1 file changed, 2 insertions(+), 12 deletions(-) > > % git format-patch aa586 > 0001-try-catch-substituted-by-test-expected-InvalidSmiles.patch > > <0001-try-catch-substituted-by-test-expected-InvalidSmiles.patch>------------------------------------------------------------------------------ > October Webinars: Code for Performance > Free Intel webinars can help you accelerate application performance. > Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from > the latest Intel processors and coprocessors. See abstracts and register > > http://pubads.g.doubleclick.net/gampad/clk?id=60134071&iu=/4140/ostg.clktrk_______________________________________________ > Cdk-patches mailing list > Cdk...@li... > https://lists.sourceforge.net/lists/listinfo/cdk-patches |
From: Rafel I. <raf...@go...> - 2013-10-14 10:36:26
|
Dear Egon, dear John, please find attached a first patch from my side. @John: as discussed with Egon last week, I will introduce myself on CDK-development list by separate email. This patch is on the junior-task 16 -- I understand this is not a very important task and you may not even apply it. For me it's just a first test and I'd highly appreciate your feedback, especially if you have recommendations for improvement. For this reason I also include an (edited) log of my shell. It shows how I first remove the try-catch lines, which leads to two new Exceptions being thrown, then after including the expected attributes in @Test, those Exceptions disappear. regards, Rafel % git pull % git checkout -b juniorTask16_SmilesParser % ant test-module -Dmodule=smiles | grep junit [junit] Running org.openscience.cdk.modulesuites.MsmilesTests [junit] Tests run: 348, Failures: 3, *Errors: 1,* Time elapsed: 13.61 sec [junit] Test org.openscience.cdk.modulesuites.MsmilesTests FAILED % grep Exception reports/result-smiles.txt java.lang.Exception: test timed out after 1000 milliseconds % gvim src/test/org/openscience/cdk/smiles/SmilesParserTest.java % ant test-dist-all | grep jar [jar] Building jar: /home/rafel/Desktop/cdk/dist/jar/cdk-test-smiles.jar [jar] Building jar: /home/rafel/Desktop/cdk/dist/jar/cdk-test-smiles-sources.jar % ant test-module -Dmodule=smiles | grep junit [junit] Running org.openscience.cdk.modulesuites.MsmilesTests [junit] Tests run: 348, Failures: 3, *Errors: 3,* Time elapsed: 13.579 sec [junit] Test org.openscience.cdk.modulesuites.MsmilesTests FAILED % grep Exception reports/result-smiles.txt org.openscience.cdk.exception.InvalidSmilesException: Could not parse n1cncc1: *Caused by: uk.ac.ebi.beam.InvalidSmilesException*: A valid kekule structure could not be assigned to: n1cncc1 org.openscience.cdk.exception.InvalidSmilesException: Could not parse n1cccc1: *Caused by: uk.ac.ebi.beam.InvalidSmilesException*: A valid kekule structure could not be assigned to: n1cccc1 java.lang.Exception: test timed out after 1000 milliseconds % ant test-dist-all | grep jar [jar] Building jar: /home/rafel/Desktop/cdk/dist/jar/cdk-test-smiles.jar [jar] Building jar: /home/rafel/Desktop/cdk/dist/jar/cdk-test-smiles-sources.jar % ant test-module -Dmodule=smiles | grep junit [junit] Running org.openscience.cdk.modulesuites.MsmilesTests [junit] Tests run: 348, Failures: 3, *Errors: 1,* Time elapsed: 13.564 sec [junit] Test org.openscience.cdk.modulesuites.MsmilesTests FAILED % grep Exception reports/result-smiles.txt java.lang.Exception: test timed out after 1000 milliseconds % git commit -a -m "try-catch substituted by @test(expected=InvalidSmilesException) in SmilesParserTest.java (= junior task 16)" [juniorTask16_SmilesParser 4799d3b] try-catch substituted by @test(expected=InvalidSmilesException) in SmilesParserTest.java (= junior task 16) 1 file changed, 2 insertions(+), 12 deletions(-) % git format-patch aa586 0001-try-catch-substituted-by-test-expected-InvalidSmiles.patch |
From: Egon W. <ego...@gm...> - 2012-02-19 10:43:39
|
On Wed, Feb 1, 2012 at 6:35 PM, John May <jo...@eb...> wrote: > Didn't send last time OK, I checked the writer patches too now. Suggestions for the future: - reduce the number of empty lines - look into the patch merging with interactive rebasing Grtz, Egon -- Dr E.L. Willighagen Postdoctoral Researcher Department of Bioinformatics - BiGCaT Maastricht University (http://www.bigcat.unimaas.nl/) Homepage: http://egonw.github.com/ LinkedIn: http://se.linkedin.com/in/egonw Blog: http://chem-bla-ics.blogspot.com/ PubList: http://www.citeulike.org/user/egonw/tag/papers |
From: John M. <jo...@eb...> - 2012-02-01 17:35:57
|
Didn't send last time > From: John May <joh...@gm...> > Date: 1 February 2012 14:42:44 GMT > To: cdk...@li... > Subject: Read/Write Atom Parity - MDLV2000 (patch files) > > Patches for reading/writing atom stereo parity. > > https://sourceforge.net/tracker/?func=detail&atid=320024&aid=3482689&group_id=20024 > > > > > > > John |
From: John M. <joh...@gm...> - 2012-02-01 14:42:59
|
Patches for reading/writing atom stereo parity. https://sourceforge.net/tracker/?func=detail&atid=320024&aid=3482689&group_id=20024 John |
From: Andreas T. <atr...@gm...> - 2009-07-02 14:14:51
|
Hello together, I have the same problem with the UniversalIsomorphismTester as described in BugReport: 1060064. The substructure search with my molecules takes about 6 minutes and returns 10000 RMaps (and the substructure matches only once). I am using molecules which are saturated with hydrogens because I must search a generic molecule within a concrete one. If I use the timeout variable the search process is cancelled by an exception immediately because the start time was only set if you use the UIT.getOverlaps() method. Also was the timeout check in the wrong place within the UIT algorithm. I have attached a patch to this mail which includes a working timeout handling. Best regards, Andreas |
From: Miguel R. C. <m....@la...> - 2009-05-28 10:26:34
|
Attached patch fixes request tracker:patches 2797822. The Convertor(writer cml) and the CMLCoreModule(reader cml) classes doesn't implement the functionality to parse reaction property informations. For that we need a cdk:reactionProperty DictRef specific for reactions. The CMLReaction could have the appendChild including CMLScalar scheme with a DictRefer cdk:reactionProperty. Should be applied to cdk-1.2.x and master Miquel -- Miguel Rojas Cherto Netherlands Metabolomics Centre Analytical Biosciences Leiden University Einsteinweg 55 NL-2333 CC Leiden tel: +31 715276326 fax: +31 715274277 |
From: Miguel R. C. <m....@la...> - 2009-05-25 14:08:53
|
Attached patch fixes request tracker:patches 2796439. To create a cml contains a reaction list and molecule list, the molecules described in the reactions should be refereed to the molecules showed in the molecule list scheme. Should be applied to cdk-1.2.x and master Miquel -- Miguel Rojas Cherto Netherlands Metabolomics Centre Analytical Biosciences Leiden University Einsteinweg 55 NL-2333 CC Leiden tel: +31 715276326 fax: +31 715274277 |
From: Egon W. <ego...@gm...> - 2009-05-18 05:45:12
|
On Sun, May 17, 2009 at 10:43 PM, Miguel Rojas Cherto <mig...@ya...> wrote: > Attached patch fixes request tracker:patches 2793070. The formal charge > of the IAtomcontainer is transfered to IMolecularFormula through > checking the formal charge of each IAtom. > > Should be applied to cdk-1.2.x and master Reviewed and applied. Egon -- Post-doc @ Uppsala University http://chem-bla-ics.blogspot.com/ |
From: Miguel R. C. <mig...@ya...> - 2009-05-17 20:43:52
|
Attached patch fixes request tracker:patches 2793070. The formal charge of the IAtomcontainer is transfered to IMolecularFormula through checking the formal charge of each IAtom. Should be applied to cdk-1.2.x and master Miquel |
From: Miguel R. C. <m....@la...> - 2009-05-05 16:06:46
|
Attached is a patch for the calculation of the IPMolecularLearning descriptor bug 2787332, in which For the Triclosan molecule (InChI=1S/C12H7Cl3O2/c13-7-1-3-11(9(15)5-7)17-12-4-2-8(14)6-10(12)16/h1-6,1 6H) the IPMolecularLearningDescriptor caluclation fails with java.lang.ArrayIndexOutOfBoundsException: 24.. Should be applied at cdk-1.2.x -- Miguel Rojas Cherto Netherlands Metabolomics Centre Analytical Biosciences Leiden University Einsteinweg 55 NL-2333 CC Leiden tel: +31 715276326 fax: +31 715274277 |
From: Rajarshi G. <rg...@in...> - 2009-05-05 14:53:10
|
On May 5, 2009, at 10:43 AM, Egon Willighagen wrote: > On Tue, May 5, 2009 at 4:33 PM, Rajarshi Guha <rg...@in...> > wrote: >> Attached is a patch for the SMARTS parser bug 2786624, in which the >> Sc in >> Sc1ccccc1 is mistaken for scandium. > > The first string has 2 and 1 as ring closure, but no match. > > The test has not explicit testing that the SMARTS that is being parsed > has 7 atoms... and that it has S instead of Sc... Ah, of course. New patch puts the test in the proper JUnit sources (ParserTest) and makes the appropriate checks ------------------------------------------------------------------- Rajarshi Guha <rg...@in...> GPG Fingerprint: D070 5427 CC5B 7938 929C DD13 66A1 922C 51E7 9E84 ------------------------------------------------------------------- Q: What's polite and works for the phone company? A: A deferential operator. |
From: Egon W. <ego...@gm...> - 2009-05-05 14:43:44
|
On Tue, May 5, 2009 at 4:33 PM, Rajarshi Guha <rg...@in...> wrote: > Attached is a patch for the SMARTS parser bug 2786624, in which the Sc in > Sc1ccccc1 is mistaken for scandium. The first string has 2 and 1 as ring closure, but no match. The test has not explicit testing that the SMARTS that is being parsed has 7 atoms... and that it has S instead of Sc... Egon -- Post-doc @ Uppsala University http://chem-bla-ics.blogspot.com/ |
From: Rajarshi G. <rg...@in...> - 2009-05-05 14:33:47
|
Attached is a patch for the SMARTS parser bug 2786624, in which the Sc in Sc1ccccc1 is mistaken for scandium. Shiuld be applied ot cdk-1.2.x and master |
From: Andreas T. <atr...@gm...> - 2009-05-05 08:09:30
|
Hello Rajarshi, that is curious. The patch was attached to this mail. I will send it again. Now the file is attached as a zip and normal. Maybe Thunderbird noticed that there is a text document. Regards, Andreas Rajarshi Guha schrieb: > Can you provide these patches as attachments? I tried copying them out > of the mails but doesn't seem to work > |
From: Rajarshi G. <rg...@in...> - 2009-05-05 02:07:53
|
Can you provide these patches as attachments? I tried copying them out of the mails but doesn't seem to work On May 4, 2009, at 2:30 PM, Andreas Truszkowski wrote: > Hello, > > Added three features to the MDLWriter/Reader class: > 1) The MDLWriter class writes now the atom IDs to the > atom-atom-mapping field equal to the MDLReader > class. > 2) Added the bond property "reaction center status" > Following constants were added: > REACTIONCENTER_UNMARKED > REACTIONCENTER_A_CENTER > REACTIONCENTER_NOT_A_CENTER > REACTIONCENTER_NO_CHANGE > REACTIONCENTER_BOND_MADE_BROKEN > REACTIONCENTER_BOND_ORDER_CHANGED > 3) Added the ISIS atom alias field property. > If the ATOM_ALIAS flag of a PseudoAtom is > set to true the writer writes out the label > as an atom alias. > > Regards, > Andreas >> From 26f418c4fc71191b56aeb797a57c07b44ca14e90 Mon Sep 17 00:00:00 >> 2001 > From: Andreas Truszkowski <atr...@gm...> > Date: Mon, 4 May 2009 20:27:39 +0200 > Subject: [PATCH] Added three features to the MDLWriter/Reader class: > 1) The MDLWriter class writes now the atom IDs to the > atom-atom-mapping field equal to the MDLReader > class. > 2) Added the bond property "reaction center status" > Following constants were added: > REACTIONCENTER_UNMARKED > REACTIONCENTER_A_CENTER > REACTIONCENTER_NOT_A_CENTER > REACTIONCENTER_NO_CHANGE > REACTIONCENTER_BOND_MADE_BROKEN > REACTIONCENTER_BOND_ORDER_CHANGED > 3) Added the ISIS atom alias field property. > If the ATOM_ALIAS flag of a PseudoAtom is > set to true the writer writes out the label > as an atom alias. > > --- > src/main/org/openscience/cdk/Bond.java | 37 ++++++- > src/main/org/openscience/cdk/CDKConstants.java | 25 ++++- > src/main/org/openscience/cdk/interfaces/IBond.java | 19 +++- > src/main/org/openscience/cdk/io/MDLReader.java | 40 ++++++- > src/main/org/openscience/cdk/io/MDLWriter.java | 52 ++++++++- > src/test/data/mdl/atomAlias.mol | 12 ++ > src/test/data/mdl/reactionCenter.mol | 12 ++ > src/test/org/openscience/cdk/io/MDLReaderTest.java | 33 +++++- > src/test/org/openscience/cdk/io/MDLWriterTest.java | 123 +++++++++++ > ++++++++- > 9 files changed, 334 insertions(+), 19 deletions(-) > create mode 100644 src/test/data/mdl/atomAlias.mol > create mode 100644 src/test/data/mdl/reactionCenter.mol > > diff --git a/src/main/org/openscience/cdk/Bond.java b/src/main/org/ > openscience/cdk/Bond.java > index 1ec6001..d52c863 100644 > --- a/src/main/org/openscience/cdk/Bond.java > +++ b/src/main/org/openscience/cdk/Bond.java > @@ -4,7 +4,8 @@ > * $Revision$ > * > * Copyright (C) 1997-2007 Christoph Steinbeck <ste...@us... > > > - * > + * 2009 Andreas Truzskowski > <atr...@gm...> > + * > * Contact: cdk...@li... > * > * This program is free software; you can redistribute it and/or > @@ -23,7 +24,7 @@ > * > */ > package org.openscience.cdk; > - > + > import org.openscience.cdk.interfaces.IAtom; > import org.openscience.cdk.interfaces.IBond; > > @@ -90,6 +91,14 @@ public class Bond extends ElectronContainer > implements IBond, Serializable, Clon > protected int stereo; > > /** > + * A descriptor for the reaction center status of this bond. > + * > + * @see org.openscience.cdk.CDKConstants for predefined values > to be used > + * here. > + */ > + protected int reactionCenterStatus = > CDKConstants.REACTIONCENTER_UNMARKED; > + > + /** > * Constructs an empty bond. > */ > public Bond() { > @@ -162,7 +171,6 @@ public class Bond extends ElectronContainer > implements IBond, Serializable, Clon > this.atomCount = 2; > } > > - > /** > * Returns the Iterator to atoms making up this bond. > * Iterator.remove() is not implemented. > @@ -492,5 +500,28 @@ public class Bond extends ElectronContainer > implements IBond, Serializable, Clon > return resultString.toString(); > } > > + > + /** > + * Returns the reaction center descriptor for this bond. > + * > + * @return The reaction center descriptor for this bond > + * @see org.openscience.cdk.CDKConstants for predefined values. > + */ > + public int getReactionCenterStatus() { > + return this.reactionCenterStatus; > + } > + > + > + /** > + * Sets the reaction center descriptor for this bond. > + * > + * @param status The reaction center descriptor to be assigned > to this bond. > + * @see org.openscience.cdk.CDKConstants for predefined values. > + */ > + public void setReactionCenterStatus(int status) { > + this.reactionCenterStatus = status; > + notifyChanged(); > + } > + > } > > diff --git a/src/main/org/openscience/cdk/CDKConstants.java b/src/ > main/org/openscience/cdk/CDKConstants.java > index d950fa1..71a0c21 100644 > --- a/src/main/org/openscience/cdk/CDKConstants.java > +++ b/src/main/org/openscience/cdk/CDKConstants.java > @@ -1,7 +1,8 @@ > /* $Revision$ $Author$ $Date$ > * > * Copyright (C) 1997-2007 Christoph Steinbeck <ste...@us... > > > - * > + * 2009 Andreas Truzskowski <atr...@gm... > > > + * > * Contact: cdk...@li... > * > * This program is free software; you can redistribute it and/or > @@ -83,7 +84,20 @@ public class CDKConstants { > public final static int STEREO_ATOM_PARITY_MINUS = -1; > /** A undefined atom parity. */ > public final static int STEREO_ATOM_PARITY_UNDEFINED = 0; > - > + > + /** Bond which is not marked as a reaction center. */ > + public final static int REACTIONCENTER_UNMARKED = 0; > + /** Bond which is reaction center. */ > + public final static int REACTIONCENTER_A_CENTER = 1; > + /** Bond which is not reaction center. */ > + public final static int REACTIONCENTER_NOT_A_CENTER = -1; > + /** Bond with no change. */ > + public final static int REACTIONCENTER_NO_CHANGE = 2; > + /** Bond which is made or broken . */ > + public final static int REACTIONCENTER_BOND_MADE_BROKEN = 4; > + /** Bond whose order has been changed */ > + public final static int REACTIONCENTER_BOND_ORDER_CHANGED = 8; > + > /** A undefined hybridization. */ > public final static int HYBRIDIZATION_UNSET = 0; > /** A geometry of neighboring atoms when an s orbital is > hybridized > @@ -185,10 +199,15 @@ public class CDKConstants { > * It is used for example in reaction. > */ > public static final int REACTIVE_CENTER = 10; > + > + /** Flag is set if a PseudoAtom contains atom alias informations. > + * (Perhaps not the right place to define this flag!) > + */ > + public static final int ATOM_ALIAS = 11; > /** > * Maximum flags array index. > */ > - public final static int MAX_FLAG_INDEX = 10; > + public final static int MAX_FLAG_INDEX = 11; > /** > * Flag used for JUnit testing the pointer functionality. > */ > diff --git a/src/main/org/openscience/cdk/interfaces/IBond.java b/ > src/main/org/openscience/cdk/interfaces/IBond.java > index 3ab38c6..17c187c 100644 > --- a/src/main/org/openscience/cdk/interfaces/IBond.java > +++ b/src/main/org/openscience/cdk/interfaces/IBond.java > @@ -4,6 +4,7 @@ > * $Revision$ > * > * Copyright (C) 2006-2007 Egon Willighagen <eg...@us...> > + * 2009 Andreas Truzskowski <atr...@gm...> > * > * Contact: cdk...@li... > * > @@ -22,7 +23,7 @@ > * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA > 02110-1301 USA. > */ > package org.openscience.cdk.interfaces; > - > + > import javax.vecmath.Point2d; > import javax.vecmath.Point3d; > > @@ -152,6 +153,22 @@ public interface IBond extends > IElectronContainer { > public void setStereo(int stereo); > > /** > + * Returns the reaction center descriptor for this bond. > + * > + * @return The reaction center descriptor for this bond > + * @see org.openscience.cdk.CDKConstants for predefined > values. > + */ > + public int getReactionCenterStatus(); > + > + /** > + * Sets the reaction center descriptor for this bond. > + * > + * @param status The reaction center descriptor to be assigned > to this bond. > + * @see org.openscience.cdk.CDKConstants for predefined > values. > + */ > + public void setReactionCenterStatus(int status); > + > + /** > * Returns the geometric 2D center of the bond. > * > * @return The geometric 2D center of the bond > diff --git a/src/main/org/openscience/cdk/io/MDLReader.java b/src/ > main/org/openscience/cdk/io/MDLReader.java > index 2ccd1ff..aa05608 100644 > --- a/src/main/org/openscience/cdk/io/MDLReader.java > +++ b/src/main/org/openscience/cdk/io/MDLReader.java > @@ -1,6 +1,7 @@ > /* $Revision$ $Author$ $Date$ > * > * Copyright (C) 1997-2007 Christoph Steinbeck <ste...@us... > > > + * 2009 Andreas Truszkowski > <atr...@gm...> > * > * Contact: cdk...@li... > * > @@ -36,6 +37,7 @@ import javax.vecmath.Point2d; > import javax.vecmath.Point3d; > > import org.openscience.cdk.CDKConstants; > +import org.openscience.cdk.PseudoAtom; > import org.openscience.cdk.annotations.TestClass; > import org.openscience.cdk.annotations.TestMethod; > import org.openscience.cdk.config.IsotopeFactory; > @@ -89,6 +91,8 @@ public class MDLReader extends > DefaultChemObjectReader { > > private BooleanIOSetting forceReadAs3DCoords; > > + private boolean isSDF; > + > public MDLReader() { > this(new StringReader("")); > } > @@ -211,13 +215,14 @@ public class MDLReader extends > DefaultChemObjectReader { > chemModel = chemFile.getBuilder().newChemModel(); > String str; > try { > - String line; > - while ((line = input.readLine()) != null) { > - logger.debug("line: ", line); > + String line = ""; > + while (isSDF || (line = input.readLine()) != null) { > + logger.debug("line: ", line); > // apparently, this is a SDF file, continue with > // reading mol files > str = new String(line); > - if (str.equals("$$$$")) { > + if (str.equals("$$$$") || isSDF) { > + isSDF = false; > m = readMolecule(chemFile.getBuilder().newMolecule()); > > if (m != null) { > @@ -312,6 +317,7 @@ public class MDLReader extends > DefaultChemObjectReader { > int atom2 = 0; > int order = 0; > int stereo = 0; > + int reactionCenter = 0; > int RGroupCounter=1; > int Rnumber=0; > String [] rGroup=null; > @@ -319,6 +325,7 @@ public class MDLReader extends > DefaultChemObjectReader { > double y = 0.0; > double z = 0.0; > double totalZ = 0.0; > + isSDF = false; > //int[][] conMat = new int[0][0]; > //String help; > IAtom atom; > @@ -498,6 +505,7 @@ public class MDLReader extends > DefaultChemObjectReader { > // read BOND block > logger.info("Reading bond block"); > for (int f = 0; f < bonds; f++) { > + reactionCenter = 0; > line = input.readLine(); linecount++; > atom1 = > java.lang.Integer.valueOf(line.substring(0,3).trim()).intValue(); > atom2 = > java.lang.Integer.valueOf(line.substring(3,6).trim()).intValue(); > @@ -538,9 +546,31 @@ public class MDLReader extends > DefaultChemObjectReader { > a1.setFlag(CDKConstants.ISAROMATIC, true); > a2.setFlag(CDKConstants.ISAROMATIC, true); > } > + // Read reaction center status > + if (line.length() >= 21) { > + reactionCenter = > java.lang.Integer.valueOf(line.substring(18,21).trim()).intValue(); > + } else { > + logger.warn("Missing expected reaction center > field at line: " + line); > + } > + newBond.setReactionCenterStatus(reactionCenter); > molecule.addBond(newBond); > } > - > + // Read atom alias blocks > + while((line = input.readLine()) != null && ! > line.contains("M END")) { > + if(line.contains("$$$$")) { > + isSDF = true; > + break; > + } > + if(line.startsWith("A")) { > + int atomNumber = > Integer.valueOf(line.substring(3,6).trim()).intValue(); > + line = input.readLine(); > + PseudoAtom pseudoAtom = new PseudoAtom(); > + pseudoAtom.setSymbol("C"); > + pseudoAtom.setLabel(line); > + pseudoAtom.setFlag(CDKConstants.ATOM_ALIAS, true); > + molecule.setAtom(atomNumber - 1, pseudoAtom); > + } > + } > } catch (Exception exception) { > exception.printStackTrace(); > String error = "Error while parsing line " + linecount + > ": " + line + " -> " + exception.getMessage(); > diff --git a/src/main/org/openscience/cdk/io/MDLWriter.java b/src/ > main/org/openscience/cdk/io/MDLWriter.java > index 2653a71..94fdc6e 100644 > --- a/src/main/org/openscience/cdk/io/MDLWriter.java > +++ b/src/main/org/openscience/cdk/io/MDLWriter.java > @@ -2,6 +2,7 @@ > * > * Copyright (C) 1997-2007 The Chemistry Development Kit (CDK) > project > * 2009 Egon Willighagen <eg...@us...> > + * 2009 Andreas Truzskowski <atr...@gm...> > * > * Contact: cdk...@li... > * > @@ -39,6 +40,7 @@ import java.util.Locale; > import java.util.TimeZone; > > import org.openscience.cdk.CDKConstants; > +import org.openscience.cdk.PseudoAtom; > import org.openscience.cdk.annotations.TestClass; > import org.openscience.cdk.annotations.TestMethod; > import org.openscience.cdk.config.IsotopeFactory; > @@ -64,7 +66,7 @@ import > org.openscience.cdk.tools.manipulator.ChemFileManipulator; > * MDLWriter writer = new MDLWriter(new FileWriter(new > File("output.mol"))); > * writer.write((Molecule)molecule); > * writer.close(); > - * </pre> > + * </pre> > * > * See {@cdk.cite DAL92}. > * > @@ -256,12 +258,34 @@ public class MDLWriter extends > DefaultChemObjectWriter { > //according to http://www.google.co.uk/url?sa=t&ct=res&cd=2&url=http%3A%2F%2Fwww.mdl.com%2Fdownloads%2Fpublic%2Fctfile%2Fctfile.pdf&ei=MsJjSMbjAoyq1gbmj7zCDQ&usg=AFQjCNGaJSvH4wYy4FTXIaQ5f7hjoTdBAw&sig2=eSfruNOSsdMFdlrn7nhdAw > an R group is written as R# > if(((IPseudoAtom) > container.getAtom(f)).getLabel().equals("R")) > line += "R#"; > - else > + else > if(container.getAtom(f).getFlag(CDKConstants.ATOM_ALIAS)) { > + // write out a dummy element symbol. Will be replaced > with the atom alias. > + line += formatMDLString("C", 3); > + } else > line += formatMDLString(((IPseudoAtom) > container.getAtom(f)).getLabel(), 3); > }else{ > line += formatMDLString(container.getAtom(f).getSymbol(), > 3); > } > - line += " 0 0 0 0 0 0 0 0 0 0 0 0"; > + line += " 0 0 0 0 0 0 0 0 0"; > + // Set atom id to he mmm field at position 61-63. This field is > read by the MDLV2000Reader > + // class to set the atom ID. If it is null set it to current > atom number. > + if (container.getAtom(f).getID() != null) { > + // try to parse the integer > + String atomIDString = container.getAtom(f).getID(); > + logger.debug("Parsing mapping id: ", atomIDString); > + try { > + int atomID = Integer.parseInt(atomIDString); > + if (atomID != 0) { > + line += this.formatMDLInt(atomID, 3); > + } > + } catch (NumberFormatException exception) { > + // if id was no valid integer, set a new one. > + line += this.formatMDLInt(f + 1, 3); > + } > + } else { > + line += this.formatMDLInt(f + 1, 3); > + } > + line += " 0 0"; > writer.write(line); > writer.newLine(); > } > @@ -301,12 +325,30 @@ public class MDLWriter extends > DefaultChemObjectWriter { > default: > line += "0"; > } > - line += " 0 0 0 "; > + line += " 0 0"; > + // Write reaction center status > + line += this.formatMDLInt(bond.getReactionCenterStatus(), > 3); > + line += " "; > writer.write(line); > writer.newLine(); > } > } > - > + > + // Write atom aliases. The format is: First line "A aaa", > Second line "x.." > + // aaa: Atom number, > x..: Alias text > + // PseudoAtoms with the symbol A will be interpreted as an > atom alias. > + // The label will be written to the alias text. > + for (int f = 0; f < container.getAtomCount(); f++) { > + IAtom atom = container.getAtom(f); > + if(atom instanceof PseudoAtom && > atom.getFlag(CDKConstants.ATOM_ALIAS)) { > + line = "A "; > + line += this.formatMDLInt(f + 1, 3); > + writer.write(line); > + writer.newLine(); > + writer.write(((PseudoAtom)atom).getLabel()); > + writer.newLine(); > + } > + } > // write formal atomic charges > for (int i = 0; i < container.getAtomCount(); i++) { > IAtom atom = container.getAtom(i); > diff --git a/src/test/data/mdl/atomAlias.mol b/src/test/data/mdl/ > atomAlias.mol > new file mode 100644 > index 0000000..32ec939 > --- /dev/null > +++ b/src/test/data/mdl/atomAlias.mol > @@ -0,0 +1,12 @@ > + > + SMMXDraw05040910122D > + > + 3 2 0 0 0 0 0 0 0 0999 V2000 > + 8.4375 -7.8438 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0 > + 10.8438 -7.0313 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0 > + 13.6563 -7.8125 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0 > + 1 2 1 0 0 0 0 > + 2 3 1 0 0 0 0 > +A 3 > +Cl,F,Br > +M END > diff --git a/src/test/data/mdl/reactionCenter.mol b/src/test/data/ > mdl/reactionCenter.mol > new file mode 100644 > index 0000000..da6897a > --- /dev/null > +++ b/src/test/data/mdl/reactionCenter.mol > @@ -0,0 +1,12 @@ > + > + CDK 5/4/09,11:39 > + > + 3 2 0 0 0 0 0 0 0 0999 V2000 > + 0.0000 0.0000 0.0000 C 0 0 0 0 0 0 0 0 0 1 0 0 > + 0.0000 0.0000 0.0000 C 0 0 0 0 0 0 0 0 0 2 0 0 > + 0.0000 0.0000 0.0000 C 0 0 0 0 0 0 0 0 0 3 0 0 > + 1 2 1 0 0 0 0 > + 2 3 1 0 0 0 4 > +A 1 > +Cl,F,Br > +M END > \ No newline at end of file > diff --git a/src/test/org/openscience/cdk/io/MDLReaderTest.java b/ > src/test/org/openscience/cdk/io/MDLReaderTest.java > index 1e97d27..aece164 100644 > --- a/src/test/org/openscience/cdk/io/MDLReaderTest.java > +++ b/src/test/org/openscience/cdk/io/MDLReaderTest.java > @@ -8,7 +8,7 @@ > * modify it under the terms of the GNU Lesser General Public License > * as published by the Free Software Foundation; either version 2.1 > * of the License, or (at your option) any later version. > - * All we ask is that proper credit is given for our work, which > includes > + * All we ask is that proper credit is given for our work, which > includes > * - but is not limited to - adding the above copyright notice to > the beginning > * of your source code files, and to any copyright notice that you > may distribute > * with programs based on this work. > @@ -31,10 +31,12 @@ import java.util.List; > import org.junit.Assert; > import org.junit.BeforeClass; > import org.junit.Test; > +import org.openscience.cdk.CDKConstants; > import org.openscience.cdk.ChemFile; > import org.openscience.cdk.ChemModel; > import org.openscience.cdk.ChemObject; > import org.openscience.cdk.Molecule; > +import org.openscience.cdk.PseudoAtom; > import org.openscience.cdk.interfaces.IAtom; > import org.openscience.cdk.interfaces.IAtomContainer; > import org.openscience.cdk.interfaces.IMolecule; > @@ -169,4 +171,33 @@ public class MDLReaderTest extends > SimpleChemObjectReaderTest { > Assert.assertNull(mol); > } > > + /** > + * This test checks whether the reaction center status has > been read correctly. > + * > + * @author Andreas Truszkowski <atr...@gm...> > + */ > + @Test public void testReadReactionCenterStatus() throws > Exception { > + String filename = "data/mdl/reactionCenter.mol"; > + logger.info("Testing: " + filename); > + InputStream ins = > this.getClass().getClassLoader().getResourceAsStream(filename); > + MDLReader reader = new MDLReader(ins); > + Molecule mol = (Molecule)reader.read(new Molecule()); > + Assert.assertNotNull(mol); > + > Assert.assertEquals(CDKConstants.REACTIONCENTER_BOND_MADE_BROKEN, > mol.getBond(1).getReactionCenterStatus()); > + } > + > + /** > + * This test checks whether the atom alias property has been > read correctly. > + * > + * @author Andreas Truszkowski <atr...@gm...> > + */ > + @Test public void testAtomAliasProperty() throws Exception { > + String filename = "data/mdl/atomAlias.mol"; > + logger.info("Testing: " + filename); > + InputStream ins = > this.getClass().getClassLoader().getResourceAsStream(filename); > + MDLReader reader = new MDLReader(ins); > + Molecule mol = (Molecule)reader.read(new Molecule()); > + Assert.assertNotNull(mol); > + Assert.assertEquals("Cl,F,Br", > ((PseudoAtom)mol.getAtom(2)).getLabel()); > + } > } > diff --git a/src/test/org/openscience/cdk/io/MDLWriterTest.java b/ > src/test/org/openscience/cdk/io/MDLWriterTest.java > index 7d9ce7f..cd5cbbe 100644 > --- a/src/test/org/openscience/cdk/io/MDLWriterTest.java > +++ b/src/test/org/openscience/cdk/io/MDLWriterTest.java > @@ -24,6 +24,8 @@ > */ > package org.openscience.cdk.io; > > +import java.io.BufferedReader; > +import java.io.StringReader; > import java.io.StringWriter; > > import org.junit.Assert; > @@ -31,6 +33,7 @@ import org.junit.BeforeClass; > import org.junit.Test; > import org.openscience.cdk.Atom; > import org.openscience.cdk.AtomContainer; > +import org.openscience.cdk.CDKConstants; > import org.openscience.cdk.ChemFile; > import org.openscience.cdk.ChemModel; > import org.openscience.cdk.DefaultChemObjectBuilder; > @@ -124,4 +127,122 @@ public class MDLWriterTest extends > ChemObjectIOTest { > String output = writer.toString(); > Assert.assertEquals("Test for zero length pseudo atom label > in MDL file", -1, output.indexOf("0.0000 0.0000 0.0000 0 > 0 0 0 0 0 0 0 0 0 0 0")); > } > -} > + > + /** > + * Test for writing the atom id to the atom-atom mapping field > of the > + * atom block at position 61-63. > + * > + * Author: Andreas Truszkowski <atr...@gm...> > + */ > + @Test public void testIDWriting() throws Exception { > + StringWriter writer = new StringWriter(); > + IMolecule molecule = builder.newMolecule(); > + // Add ten atoms and nine bonds to molecule > + IAtom prevAtom = builder.newAtom("C"); > + molecule.addAtom(prevAtom); > + for(int i = 0; i < 9; i++) { > + IAtom atom = builder.newAtom("C"); > + IBond bond = builder.newBond(prevAtom, atom); > + molecule.addAtom(atom); > + molecule.addBond(bond); > + prevAtom = atom; > + } > + // Write molecule > + MDLWriter mdlWriter = new MDLWriter(writer); > + mdlWriter.write(molecule); > + String output = writer.toString(); > + StringReader reader = new StringReader(output); > + BufferedReader buffReader = new BufferedReader(reader); > + // Skip first four lines > + buffReader.readLine(); > + buffReader.readLine(); > + buffReader.readLine(); > + buffReader.readLine(); > + // Check whether the IDs were written > + for(int i = 1; i <= 10; i++) { > + String line = buffReader.readLine(); > + Assert.assertNotNull(line); > + String id = line.substring(60, 63).trim(); > + Assert.assertNotNull(id); > + Assert.assertEquals(i, Integer.parseInt(id)); > + } > + } > + > + /** > + * Test for writing the reaction center status to the reaction > center status field of the > + * bond block. > + * > + * Author: Andreas Truszkowski <atr...@gm...> > + */ > + @Test public void testReactionCenterWriting() throws Exception { > + StringWriter writer = new StringWriter(); > + IMolecule molecule = builder.newMolecule(); > + IAtom atom1 = builder.newPseudoAtom(); > + IAtom atom2 = builder.newAtom("C"); > + IAtom atom3 = builder.newAtom("C"); > + IBond bond1 = builder.newBond(atom1, atom2); > + IBond bond2 = builder.newBond(atom2, atom3); > + > bond2 > .setReactionCenterStatus > (CDKConstants.REACTIONCENTER_BOND_MADE_BROKEN); > + molecule.addAtom(atom1); > + molecule.addAtom(atom2); > + molecule.addAtom(atom3); > + molecule.addBond(bond1); > + molecule.addBond(bond2); > + > + MDLWriter mdlWriter = new MDLWriter(writer); > + mdlWriter.write(molecule); > + String output = writer.toString(); > + StringReader reader = new StringReader(output); > + BufferedReader buffReader = new BufferedReader(reader); > + // Skip first seven lines > + for(int i = 0; i < 7; i++) { > + buffReader.readLine(); > + } > + String line = buffReader.readLine(); > + Assert.assertEquals(" 1 2 1 0 0 0 0 ", line); > + line = buffReader.readLine(); > + Assert.assertEquals(" 2 3 1 0 0 0 " > + + CDKConstants.REACTIONCENTER_BOND_MADE_BROKEN > + + " ", line); > + > + } > + > + /** > + * Test for writing atom alias informations. > + * > + * Author: Andreas Truszkowski <atr...@gm...> > + */ > + @Test public void testAtomAliases() throws Exception { > + StringWriter writer = new StringWriter(); > + IMolecule molecule = builder.newMolecule(); > + IAtom atom1 = builder.newPseudoAtom(); > + atom1.setSymbol("C"); > + atom1.setFlag(CDKConstants.ATOM_ALIAS, true); > + ((PseudoAtom)atom1).setLabel("Cl,F,Br"); > + IAtom atom2 = builder.newAtom("C"); > + IAtom atom3 = builder.newAtom("C"); > + IBond bond1 = builder.newBond(atom1, atom2); > + IBond bond2 = builder.newBond(atom2, atom3); > + molecule.addAtom(atom1); > + molecule.addAtom(atom2); > + molecule.addAtom(atom3); > + molecule.addBond(bond1); > + molecule.addBond(bond2); > + > + MDLWriter mdlWriter = new MDLWriter(writer); > + mdlWriter.write(molecule); > + String output = writer.toString(); > + StringReader reader = new StringReader(output); > + BufferedReader buffReader = new BufferedReader(reader); > + // Skip first nine lines > + for(int i = 0; i < 9; i++) { > + buffReader.readLine(); > + } > + String line = buffReader.readLine(); > + Assert.assertEquals("A 1", line); > + line = buffReader.readLine(); > + Assert.assertEquals("Cl,F,Br", line); > + > + } > + > + } > -- > 1.6.2.2.1669.g7eaf8 > > ------------------------------------------------------------------------------ > Register Now & Save for Velocity, the Web Performance & Operations > Conference from O'Reilly Media. Velocity features a full day of > expert-led, hands-on workshops and two days of sessions from industry > leaders in dedicated Performance & Operations tracks. Use code > vel09scf > and Save an extra 15% before 5/3. http://p.sf.net/sfu/velocityconf_______________________________________________ > Cdk-patches mailing list > Cdk...@li... > https://lists.sourceforge.net/lists/listinfo/cdk-patches ------------------------------------------------------------------- Rajarshi Guha <rg...@in...> GPG Fingerprint: D070 5427 CC5B 7938 929C DD13 66A1 922C 51E7 9E84 ------------------------------------------------------------------- Q: What's polite and works for the phone company? A: A deferential operator. |
From: Andreas T. <atr...@gm...> - 2009-05-04 18:36:42
|
Hello, Added three features to the MDLWriter/Reader class: 1) The MDLWriter class writes now the atom IDs to the atom-atom-mapping field equal to the MDLReader class. 2) Added the bond property "reaction center status" Following constants were added: REACTIONCENTER_UNMARKED REACTIONCENTER_A_CENTER REACTIONCENTER_NOT_A_CENTER REACTIONCENTER_NO_CHANGE REACTIONCENTER_BOND_MADE_BROKEN REACTIONCENTER_BOND_ORDER_CHANGED 3) Added the ISIS atom alias field property. If the ATOM_ALIAS flag of a PseudoAtom is set to true the writer writes out the label as an atom alias. Regards, Andreas |
From: Stefan K. <ste...@eb...> - 2009-05-01 15:38:36
|
The attached patch tests the modelbuilder with reserpine (was reported to fail in bc, but it simply takes long, 78 sec for me). -- Stefan Kuhn B. Sc. M. A. Software Engineer in the Chemoinformatics and Metabolism Team European Bioinformatics Institute (EBI) Wellcome Trust Genome Campus Hinxton, Cambridge CB10 1SD UK Phone +44 1223 49 2657 Fax +44 (0)1223 494 468 |
From: Rajarshi G. <rg...@in...> - 2009-04-30 18:39:46
|
The attached patch checks bug 2784343 in which an alpha pinene isomer is ending up with the same SMILES as alpha pinene. However the test indicates this is not the case ------------------------------------------------------------------- Rajarshi Guha <rg...@in...> GPG Fingerprint: D070 5427 CC5B 7938 929C DD13 66A1 922C 51E7 9E84 ------------------------------------------------------------------- Q: What's polite and works for the phone company? A: A deferential operator. |