zadorlab / KinBot

Automated reaction pathway search for gas-phase molecules
Other
45 stars 15 forks source link

Ion fragmentation and flat_ring_dih_angle #64

Closed juditzador closed 1 year ago

juditzador commented 1 year ago

I added a new parameter: flat_ring_dih_angle, which allows the user to define what ring is flat. The default is 5 degrees, the old, hard-wired value. The problem was that this was too small for some systems and we generated way too many conformers.

More importantly, I added a way to deal with ion fragmentation. We now generate all possible versions of the fragments that are consistent with the overall charge and their own multiplicity. Then, we brute force take all combinations of all fragments, and select the lowest energy combination that is consistent with overall mass and charge. This approach eliminates tedious bookkeeping, because some fragments repeat and some fragments fragment further, sometimes even twice. Therefore, it is not possible to select the viable combinations based on indices alone, at least not simply. This solution had very little impact on the overall workflow. Note that at this point we are only considering singlets and doublets, but not triplets. We can add that as well in this scheme though.