Reactor Sample Application

  1. Basic reaction processing

    • drawing a reaction, reaction mapping
      react -r acid-halide+amine.rxn acid-halides.smiles monoamines.smiles -t reaction 
      react -r acid-halide+amine.rxn acid-halides.smiles amines.smiles -t reaction
      react -r acid-halide+amine.rxn acid-halides.smiles monoamines.smiles -t reaction -m comb
      

    • extract the main product

      • with the -x, --extract option: react -r acid-halide+amine.rxn acid-halides.smiles monoamines.smiles -t reaction -x 1

      • with a different reaction equation (widow-orphan atoms): react -r acid-halide+amine_nohx.rxn acid-halides.smiles monoamines.smiles -t reaction

    • string representation
      react -r "[#9,#17,#35,#53:2][C:1]=O.[H:4][N:3][#6]>>[#6][N:3][C:1]=O" acid-halides.smiles monoamines.smiles -t reaction
      react -r "[#9,#17,#35,#53:2][C:1]=O.[H:4][N:3][#6]>>[#6][N:3][C:1]=O" "COc1cccc(CC(Cl)=O)c1" "CC(C)N"
      

  2. Reaction processing with rules

    • reactivity rules
      react -r acid-halide+nucleophile.rdf acid-halide.smiles nucleophile.smiles -t reaction
      react -r acid-halide+nucleophile.rdf -n r acid-halide.smiles nucleophile.smiles -t reaction
      react -r acid-halide+nucleophile.rdf acid-halides.smiles nucleophiles.smiles -t reaction -m comb
      react -r '[#9,#17,#35,#53:2][C:1]=O.[N,O,S:3][H:4]>>[N,O,S:3][C:1]=O.[#9,#17,#35,#53:2][H:4]..r:!match(ratom(3), "[N,O,S:1][C,P,S]=[N,O,S]", 1)' acid-halides2.smiles nucleophiles2.smiles -t reaction -m comb
      

    • selectivity rules
      react -r arom+bromine.rdf arom.smiles
      react -r "[c:1][H:2]>BrBr>[c:1][Br:3]..s:-energyE(ratom(1))..t:0.0045" arom.smiles 
      

  3. Reactor API: ReactorDemo.java
    java ReactorDemo acid-halide+nucleophile.smarts acid-halide.smiles nucleophile.smiles | mview - &
    java ReactorDemo acid-halide+nucleophile.smarts acid-halides2.smiles nucleophiles2.smiles | mview - &