ReactionMechanismGenerator / ARC

ARC - Automatic Rate Calculator
https://reactionmechanismgenerator.github.io/ARC/index.html
MIT License
42 stars 21 forks source link

Could not determine reaction family for reaction C3H6-2 + O <=> C3H6O #738

Open kfir4444 opened 2 months ago

kfir4444 commented 2 months ago

Describe the bug A reaction family could not be found for the reaction C3H6-2 + O <=> C3H6O.

How to reproduce

from arc.rmgdb import make_rmg_database_object, load_families_only
from arc.reaction import ARCReaction
from arc.species import ARCSpecies

db = make_rmg_database_object()
load_families_only(db, "all")

rxn = ARCReaction(r_species=[ARCSpecies(label="C3H6", smiles = "CC=C"),
                             ARCSpecies(label="O", smiles="[O]", multiplicity=1)],
                  p_species=[ARCSpecies(label="C3H6O", smiles = "CC1OC1")])

rxn.determine_family(db)
print(rxn.family) # result is None with errors.

This remains true even if multiplicity=3 in the [O] species. This reaction originates from the training depository of 1+2_Cycloaddition reaction family originally. Expected behavior

print(rxn.family) -> <ReactionFamily "1+2_Cycloaddition">
kfir4444 commented 2 months ago

Also true for:

'C=C(C)C + O <=> CC1(C)CO1'
'CC=CC + O <=> CC1OC1C'
'CC(C)=C(C)C + O <=> CC1(C)OC1(C)C'