FERNmatrix / Thermo-nuclear-network

1 stars 5 forks source link

Guidry debug1 #17

Closed guidrymwg closed 2 years ago

guidrymwg commented 2 years ago

This version corrects an error that I found in the function sortReactionGroups(void). The reaction groups were being correctly allocated for the alpha network. However, I found that in more complex networks the C++ algorithm to form the reaction groups did not perform completely correctly. I think the basic issue was that I define reaction groups so that each reaction is in a unique reaction group, and each reaction group contains a unique set of reactions (thus the reaction groups constitute a unique decomposition of a network). This means that there can be reaction groups with only one reaction member if the reaction group partner reaction is missing from the network. The java benchmark code handles this correctly, but the original C++ code had problems when it encountered a "singleton reaction group" (one with only a single reaction because the inverse reaction is not supplied in the network). I tracked down the problem and re-wrote the function sortReactionGroups() to fix it.