Open Swanekamp opened 3 years ago
@padamson could probably give you a better answer, but I think that the A
and B
refer to molecular species, while e_on_lhs
and e_on_rhs
give the numbers of electrons on the left ant right, respectively. So for ionization, it would be something like e + A -> 2e + A'. For this reaction, e_on_lhs = 1
and e_on_rhs = 2
.
That being said, I think some sort of helper function that gives a list of reactants (or products) as you describe would be quite useful. As you point out, this is how we track the various contributions to the rate equations in our code, and it seems to work quite well.
Again, all the information is there but scattered all over the place. In my opinion, a list of reactant and product species would be more useful and more general. My point is that providing a list of reactants and products is immediately expandable to reactions with any number of reactants and products. Right now the LHS/RHS format that nepc uses is limiting. In addition to the reactants and products list, a complete list of the unique species that participate in the chemistry also would be extremely useful. Is there a helper function for that?
Summary functions for CS and Model classes should clearly show the processes involved and other useful details
A list of reactants and products for each reaction would be more useful than the LHS_A, LHS_B, RHS_A, RHS_B notation that is currently used in nepc. The LHS/RHS notation is limiting since it assumes only two reactions of the form A+B->A'+B'.
For example, this notation doesn't cover simple ionization where there are two reactants but three products (2 electrons and an ion). An ionization event e+N2(X1Sigma) -> 2e+N2(X2Sigma) could have ["e", "N2(X1Sigma)"] as reactants and ["e", "e", "N2+(X2Sigma)"] as products and these could be stored as metadata.
The reactant and product lists are most useful when updating rate equations. Each reactant species will have a negative contribution as they are used up in the reaction and each product will have a positive contribution as they are created.