Reaction component retrieval issue since Marvin 5.6

User 1a8d11549a

29-09-2011 07:30:53

Hi Victor,


Since Marvin 5.6 I encounter an issue concerning reaction component retreival, e.g. using RxnMolecule.getReactant, RxnMolecule.getProduct, etc. While these functions indeed returned the desired components in previus versions, now the returned molecules invariably contain all components of the parent RXnMolecule. Example for the conversion of benzene to bromobenzene, with resulting smiles exports as a quick check: 


   Dim refReactantMol As Molecule = myRxnMolecule.getReactant(0)  ' C1=CC=CC=C1.BrC1=CC=CC=C1
   Dim refProductMol As Molecule = myRxnMolecule.getProduct(0)      ' C1=CC=CC=C1.BrC1=CC=CC=C1



The smiles strings (same for mol and rxn exports) of both returned molecules are identical and contain the structures of all reactants and products present in the original rxnMolecule. In rxnMolecule, the reactant and product component counts provide correct results. 


Interestingly, I could work around this issue by exporting the result molecules to "cml" and re-importing them into another molecule. The drawback is that all collapsed groups are expanded in the process, which is undesired.


Any ideas? Thanks!
Stefan



 




 

ChemAxon bd13b5bd77

29-09-2011 07:35:38

Dear Stefan,


 


thank you for the feedback. I move your issue to the Core team.


 


Viktor

ChemAxon bd13b5bd77

29-09-2011 07:46:07

Zsolt,


could you please investigate Stefans problem on java-reactor side?


Thank you in advance,


Viktor


 

ChemAxon 25dcd765a3

29-09-2011 22:35:05

I have written a simple test code (Test.java). As far as I understand the test code should return the whole reaction according to your findings. However it just returns the product and reactant.


Can you confirm?


marvin/BRANCH_5_6> java Test
CC(C)=C
CC(C)(C)Cl

User 1a8d11549a

30-09-2011 06:00:49

Thanks for your reply. I am a .NET programmer, therefore I unfortunately lack the knowledge to run your Java test code directly. However, at least looking at it, I realize that the reaction components are added separately to the rxnMolecule in your code. In my case, however, they are present at once in a rxnMolecule object obtained by importing the .MoleculeString returned by the Marivn .NET EditorDialog. Maybe that makes a difference?


For testing, I have attached the .NET EditorDialog .MoleculeString content resulting from the conversion of benzene to bromobenzene ("Test_Bromination.txt"). You can utilize it as the content of the  ".MoleculeString" variable in the following simple VB.Net test code:


rxnMol = CType(ChemAxon.formats.MolImporter.importMol(.MoleculeString),RxnMolecule)
refReactantMol = rxnMol.getReactant(0)
refReactSmiles = refReactantMol.toFormat("smiles")


Instead of the expected "C1=CC=CC=C1" for refReactSmiles, I get "C1=CC=CC=C1.BrC1=CC=CC=C1". Can you confirm this? Thanks!

User 1a8d11549a

01-10-2011 07:22:52

Since I can't open the bromination example attachment of my previous post from my own browser, here it is in full text, just in case ...


<?xml version="1.0" ?>
<cml>
<MDocument>
  <MChemicalStruct>
    <reaction>
      <arrow type="DEFAULT" x1="-9.074999809265137" y1="4.34499979019165" x2="-5.6095636557528605" y2="4.344999790191649" />
      <reactantList>
        <molecule molID="m1">
          <atomArray
              atomID="a1 a2 a3 a4 a5 a6"
              elementType="C C C C C C"
              x2="-13.364999771118164 -14.698669112166423 -14.698669112166423 -13.364999771118164 -12.031330430069906 -12.031330430069906"
              y2="5.610034052779458 4.840017112220417 3.2999832311023365 2.529966290543296 3.2999832311023365 4.840017112220417"
              />
          <bondArray>
            <bond atomRefs2="a1 a2" order="1" />
            <bond atomRefs2="a1 a6" order="2" />
            <bond atomRefs2="a2 a3" order="2" />
            <bond atomRefs2="a3 a4" order="1" />
            <bond atomRefs2="a4 a5" order="2" />
            <bond atomRefs2="a5 a6" order="1" />
          </bondArray>
        </molecule>
      </reactantList>
      <productList>
        <molecule molID="m2">
          <atomArray
              atomID="a1 a2 a3 a4 a5 a6 a7"
              elementType="C C C C C C Br"
              x2="-1.1549999713897705 -2.488669312438029 -2.488669312438029 -1.1549999713897705 0.1786693696584878 0.1786693696584878 -1.15499997138977"
              y2="5.610034052779458 4.840017112220417 3.2999832311023365 2.529966290543296 3.2999832311023365 4.840017112220417 7.150034052779458"
              />
          <bondArray>
            <bond atomRefs2="a1 a2" order="1" />
            <bond atomRefs2="a1 a6" order="2" />
            <bond atomRefs2="a2 a3" order="2" />
            <bond atomRefs2="a3 a4" order="1" />
            <bond atomRefs2="a4 a5" order="2" />
            <bond atomRefs2="a5 a6" order="1" />
            <bond atomRefs2="a1 a7" order="1" />
          </bondArray>
        </molecule>
      </productList>
    </reaction>
  </MChemicalStruct>
</MDocument>
</cml>


Thanks for your help.
Stefan 

ChemAxon 25dcd765a3

03-10-2011 09:39:42

I could reproduce the problem.


Thank you for the bug report. We have fixed it already.


The fix will appear in Marvin 5.7 (coming soon).

User 1a8d11549a

10-11-2011 16:33:45

JChem 5.7 is announced on your web site now, also for download, but all links lead to the previous version 5.6. Please update your download links. Thanks!

ChemAxon b62f37c21a

10-11-2011 16:41:58

Hello,


Since you mentioned .NET I suppose the problem is that the .NET version is not uploaded to the site yet. It will be within a couple of hours.


Best regards,


Gabor Vasko

ChemAxon bd13b5bd77

10-11-2011 16:45:06

I think, this is because of forum. This thread was started on .NET side but I moved to here for the Core team to be continued.


But forum sends messages to the original place it seems where the topic was moved from.


 

ChemAxon b62f37c21a

10-11-2011 20:35:48

Hi,


You can download JChem .NET API 5.7.


Best regards,


Gabor Vasko

User 1a8d11549a

11-11-2011 09:05:50

Hi Gabor,


Thanks. -  I can confirm that the above reported bug is fixed now in 5.7.
Regards, Stefan