def test_reaction_degeneracy_independent_of_generatereactions_direction( self): """ test_reaction_degeneracy_independent_of_generatereactions_direction Ensure the returned kinetics have the same degeneracy irrespective of whether __generateReactions has forward = True or False """ family = database.kinetics.families['Disproportionation'] molA = Molecule().fromSMILES('C[CH2]') molB = Molecule().fromSMILES('C[CH2]') molC = Molecule().fromSMILES('C=C') molD = Molecule().fromSMILES('CC') molA.assignAtomIDs() molB.assignAtomIDs() molC.assignAtomIDs() molD.assignAtomIDs() # generate reactions in both directions forward_reactions = family._KineticsFamily__generateReactions( [molA, molB], products=[molC, molD], forward=True) reverse_reactions = family._KineticsFamily__generateReactions( [molC, molD], products=[molA, molB], forward=False) forward_reactions = find_degenerate_reactions(forward_reactions) reverse_reactions = find_degenerate_reactions(reverse_reactions) self.assertEqual( forward_reactions[0].degeneracy, reverse_reactions[0].degeneracy, 'the kinetics from forward and reverse directions had different degeneracies, {} and {} respectively' .format(forward_reactions[0].degeneracy, reverse_reactions[0].degeneracy))
def test_reaction_degeneracy_independent_of_generatereactions_direction(self): """ test_reaction_degeneracy_independent_of_generatereactions_direction Ensure the returned kinetics have the same degeneracy irrespective of whether __generateReactions has forward = True or False """ family = database.kinetics.families['Disproportionation'] molA = Molecule().fromSMILES('C[CH2]') molB = Molecule().fromSMILES('C[CH2]') molC = Molecule().fromSMILES('C=C') molD = Molecule().fromSMILES('CC') molA.assignAtomIDs() molB.assignAtomIDs() molC.assignAtomIDs() molD.assignAtomIDs() # generate reactions in both directions forward_reactions = family._KineticsFamily__generateReactions([molA, molB], products=[molC, molD], forward=True) reverse_reactions = family._KineticsFamily__generateReactions([molC, molD], products=[molA, molB], forward=False) forward_reactions = find_degenerate_reactions(forward_reactions) reverse_reactions = find_degenerate_reactions(reverse_reactions) self.assertEqual(forward_reactions[0].degeneracy, reverse_reactions[0].degeneracy, 'the kinetics from forward and reverse directions had different degeneracies, {} and {} respectively'.format(forward_reactions[0].degeneracy, reverse_reactions[0].degeneracy))