From a730222a2efed82e7888138c59edb57dea049bf7 Mon Sep 17 00:00:00 2001 From: Jose Juan Tapia Date: Thu, 16 Jul 2015 00:05:30 -0500 Subject: [PATCH] Continuing instead of returning failure when template cannot map to one of the symmetric components The compare method inside of templatemolecule was returning failure when a symmetric component could not map to the template described in the class. This was resulting in the compare method not testing for other possible mappings in subsequent symmetric components, which was resulting in missed mappings in complexes of the form L(s...,s!1).R(s!1,s...) The solution was to change the return false for a continue, similar to how the method kept checking when it couldn't find an exact template match for a component that it could otherwise map. This commit partially addresses the bug reported in issue#3 --- src/NFcore/templateMolecule.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/NFcore/templateMolecule.cpp b/src/NFcore/templateMolecule.cpp index 3de8b035..55f2c273 100644 --- a/src/NFcore/templateMolecule.cpp +++ b/src/NFcore/templateMolecule.cpp @@ -1296,7 +1296,8 @@ bool TemplateMolecule::compare(Molecule *m, ReactantContainer *rc, MappingSet *m if(!match) { continue; } //keep going if we can't match } else { //cout<<"could not map other side!"<