Does reactor group cleavaged products?

User 941c2467a3

09-10-2009 16:01:05

Here is my substrate, its SMILES string is,
"Cc1cccc(CN2CCN(CC2)C(c2ccccc2)c2ccc(Cl)cc2)c1"

I ran the following command line (v5.0),
react -v -k -r bt0063_p3574.mrv "Cc1cccc(CN2CCN(CC2)C(c2ccccc2)c2ccc(Cl)cc2)c1"

The output screen gave six products,

[H]N1CCN(CC1)C(c1ccccc1)c1ccc(Cl)cc1
Cc1cccc(C=O)c1
[H]N(CCN(CC=O)C(c1ccccc1)c1ccc(Cl)cc1)Cc1cccc(C)c1
[H]N(CCN(CC=O)Cc1cccc(C)c1)C(c1ccccc1)c1ccc(Cl)cc1
[H]N1CCN(Cc2cccc(C)c2)CC1
Clc1ccc(cc1)C(=O)c1ccccc1

Product #1 and #2 were formed from the substrate via a cleavage reaction, as well as # 5 and #6.

So, it is easy to find that there are four groups of products,
group 1, Product #1 and #2
group 2, Product #3
group 3, Product #4
group 4, Product #5 and #6

I want to see the above results, but I only saw the output screen listing six products without group information.

Are there any react parameters (or react java api parameters) available that can add group information to the output results?

An example graph and a rxn file were attached in this thread.

Thanks a lot for any suggestions!

Best,

Jeff Gao

ChemAxon e08c317633

12-10-2009 10:56:37

Yes, Reactor can generate product IDs, see http://www.chemaxon.com/jchem/doc/user/Reactor.html#cmdcid


Example:


react -v -k -I name -P PRODUCT_ID -f sdf -r bt0063_p3574.mrv "Cc1cccc(CN2CCN(CC2)C(c2ccccc2)c2ccc(Cl)cc2)c1"


The product IDs can be used for identifying groups:


Group 1:



Amine derivative ---> Amine + Aldehyde or Ketone(1):1/1

Amine derivative ---> Amine + Aldehyde or Ketone(1):1/2


Group 2:



Amine derivative ---> Amine + Aldehyde or Ketone(1):2/2


etc.


In case of SMILES output the name of the product ID field should be specified as SMILES export option:


$ react -v -k -I name -P PRODUCT_ID -f smiles:TPRODUCT_ID -r bt0063_p3574.mrv "Cc1cccc(CN2CCN(CC2)C(c2ccccc2)c2ccc(Cl)cc2)c1"
#SMILES PRODUCT_ID
[H]N1CCN(CC1)C(c1ccccc1)c1ccc(Cl)cc1 "Amine derivative ---> Amine + Aldehyde or Ketone(1):1/1"
Cc1cccc(C=O)c1 "Amine derivative ---> Amine + Aldehyde or Ketone(1):1/2"
[H]N(CCN(CC=O)C(c1ccccc1)c1ccc(Cl)cc1)Cc1cccc(C)c1 "Amine derivative ---> Amine + Aldehyde or Ketone(1):2/2"
[H]N(CCN(CC=O)Cc1cccc(C)c1)C(c1ccccc1)c1ccc(Cl)cc1 "Amine derivative ---> Amine + Aldehyde or Ketone(1):3/2"
[H]N1CCN(Cc2cccc(C)c2)CC1 "Amine derivative ---> Amine + Aldehyde or Ketone(1):4/1"
Clc1ccc(cc1)C(=O)c1ccccc1 "Amine derivative ---> Amine + Aldehyde or Ketone(1):4/2"


Zsolt

User 941c2467a3

12-10-2009 14:46:54

Thanks Zsolt.


I also tried,



Reactor.setReactionIDPropertyName("name") 


Reactor.setComponentIDPropertyNames("","pid")


Reactor.react() ...


Molecule.getProperty("pid") 


And it runs very well.


- Jeff


User 941c2467a3

05-11-2009 18:51:26










Zsolt wrote:

Yes, Reactor can generate product IDs, see http://www.chemaxon.com/jchem/doc/user/Reactor.html#cmdcid


Example:


react -v -k -I name -P PRODUCT_ID -f sdf -r bt0063_p3574.mrv "Cc1cccc(CN2CCN(CC2)C(c2ccccc2)c2ccc(Cl)cc2)c1"


The product IDs can be used for identifying groups:


Group 1:



Amine derivative ---> Amine + Aldehyde or Ketone(1):1/1

Amine derivative ---> Amine + Aldehyde or Ketone(1):1/2


Group 2:



Amine derivative ---> Amine + Aldehyde or Ketone(1):2/2


etc.


In case of SMILES output the name of the product ID field should be specified as SMILES export option:


$ react -v -k -I name -P PRODUCT_ID -f smiles:TPRODUCT_ID -r bt0063_p3574.mrv "Cc1cccc(CN2CCN(CC2)C(c2ccccc2)c2ccc(Cl)cc2)c1"
#SMILES PRODUCT_ID
[H]N1CCN(CC1)C(c1ccccc1)c1ccc(Cl)cc1 "Amine derivative ---> Amine + Aldehyde or Ketone(1):1/1"
Cc1cccc(C=O)c1 "Amine derivative ---> Amine + Aldehyde or Ketone(1):1/2"
[H]N(CCN(CC=O)C(c1ccccc1)c1ccc(Cl)cc1)Cc1cccc(C)c1 "Amine derivative ---> Amine + Aldehyde or Ketone(1):2/2"
[H]N(CCN(CC=O)Cc1cccc(C)c1)C(c1ccccc1)c1ccc(Cl)cc1 "Amine derivative ---> Amine + Aldehyde or Ketone(1):3/2"
[H]N1CCN(Cc2cccc(C)c2)CC1 "Amine derivative ---> Amine + Aldehyde or Ketone(1):4/1"
Clc1ccc(cc1)C(=O)c1ccccc1 "Amine derivative ---> Amine + Aldehyde or Ketone(1):4/2"


Zsolt



Zsolt,


 


I found a new problem using the above command line.


I put the following commpound running against another cleavage rule. But the output did't show group info at all.

react -v -k -I name -P PRODUCT_ID -f smiles:TPRODUCT_ID -r bt0352_2744 "CC(C)(O)C=CCC(=O)C([O-])=O"

Output,
CC(=O)C([O-])=O
CC(C)(O)CC([O-])=O

The desired outpus should look like,
CC(=O)C([O-])=O, 1/1
CC(C)(O)CC([O-])=O, 1/2



The .mrv file is attached in this thread.


Thanks for any suggestions!

ChemAxon e08c317633

05-11-2009 19:22:54

Jeff, there is no "name" field in your reaction. I added a name field (name: "bt0352_2744" - see the attached file), and  the product ID was generated correctly:


$ react -k -I name -P PRODUCT_ID -f smiles:TPRODUCT_ID -r bt0352_2744_with_name.mrv "CC(C)(O)C=CCC(=O)C([O-])=O"
#SMILES PRODUCT_ID
CC(=O)C([O-])=O bt0352_2744(1):1/1
CC(C)(O)CC([O-])=O bt0352_2744(1):1/2


Zsolt

User 941c2467a3

05-11-2009 21:02:25










Zsolt wrote:

Jeff, there is no "name" field in your reaction. I added a name field (name: "bt0352_2744" - see the attached file), and  the product ID was generated correctly:


$ react -k -I name -P PRODUCT_ID -f smiles:TPRODUCT_ID -r bt0352_2744_with_name.mrv "CC(C)(O)C=CCC(=O)C([O-])=O"
#SMILES PRODUCT_ID
CC(=O)C([O-])=O bt0352_2744(1):1/1
CC(C)(O)CC([O-])=O bt0352_2744(1):1/2


Zsolt



Thanks Zsolt.


I tried to assign a name to reaction in fly.


reactor.setReactionIDPropertyName("reac_name");


but it doesn't work, and I still get nothing by return product.getProperty("pid");


My question,


If the .mrv file doesn't have a reaction name (the name field is emtry), can I add a name to it in fly? Must I modify the .mrv file to add a name field?


Thanks again!


Best,


- Jeff


 

ChemAxon e08c317633

09-11-2009 21:28:39










JeffGao wrote:

If the .mrv file doesn't have a reaction name (the name field is emtry), can I add a name to it in fly? Must I modify the .mrv file to add a name field?



Yes, you can add it on the fly, use Molecule.setProperty(String, String) method to set a molecule property. The mrv doesn't have to be modified.


Example:


rxnmol.setProperty("reac_name", "bt0352_2744");


reactor.setReaction(rxnmol); 


// ...


reactor.setReactionIDPropertyName("reac_name");


 


Regards,


Zsolt

User 941c2467a3

09-11-2009 21:47:58










Zsolt wrote:










JeffGao wrote:

If the .mrv file doesn't have a reaction name (the name field is emtry), can I add a name to it in fly? Must I modify the .mrv file to add a name field?



Yes, you can add it on the fly, use Molecule.setProperty(String, String) method to set a molecule property. The mrv doesn't have to be modified.


Example:


rxnmol.setProperty("reac_name", "bt0352_2744");


reactor.setReaction(rxnmol); 


// ...


reactor.setReactionIDPropertyName("reac_name");


 


Regards,


Zsolt



Thanks Zsolt. I tested it and it works.



Best,


Jeff