RMG-Py
RMG-Py copied to clipboard
Non-deterministic choice between ring(Cyclopropene) and ring(oxirene) ?
Bug Description
Comments on several pull requests have noticed some non-identical thermo in the rmg/nitrogen test in the regression tests. It shows up something like this:
Non-identical thermo!
original: O1[C]=N1
tested: O1[C]=N1
Hf(300K) |S(300K) |Cp(300K) |Cp(400K) |Cp(500K) |Cp(600K) |Cp(800K) |Cp(1000K) |Cp(1500K)
129.73| 51.79| 9.14| 9.59| 9.99| 10.34| 10.90| 11.38| 12.40
154.90| 56.55| 9.79| 9.15| 8.58| 8.33| 9.02| 10.26| 10.96
thermo: Thermo group additivity estimation: missing(O2s-CdN3d) + group(N3s-CsHH) + group(Cds-CdsCsCs) + ring(Cyclopropene) + radical(Cds_P)
thermo: Thermo group additivity estimation: missing(O2s-CdN3d) + group(N3s-CsHH) + group(Cds-CdsCsCs) + ring(oxirene) + radical(Cds_P)
It appears in comments on these separate pull requests:
- https://github.com/ReactionMechanismGenerator/RMG-database/pull/255#issuecomment-374435434
- https://github.com/ReactionMechanismGenerator/RMG-database/pull/257#issuecomment-374014008
- https://github.com/ReactionMechanismGenerator/RMG-Py/pull/1357#issuecomment-387726781
- https://github.com/ReactionMechanismGenerator/RMG-Py/pull/1276#issuecomment-375012342
- https://github.com/ReactionMechanismGenerator/RMG-Py/pull/1894#issuecomment-676613335
- https://github.com/ReactionMechanismGenerator/RMG-Py/pull/2136#issuecomment-855178962
The diff may appear in other pull requests but without anyone delving into the logs and commenting.
It is mostly just mentioned and then ignored, although @goldmanm discussed it briefly here
One species had different thermo [C]1=NO1, which was due to whether RMG used the group additivity value of ring(Cyclopropene) or ring(oxirene), a 30 kcal difference. Neither of these groups is likely giving accurate values for the thermo, but the change either shows some indeterminate nature of RMG or that we are losing resonance structures in the simulation with these changes.
I suspect it's an indeterminate behaviour.
How To Reproduce
Look at the logs of the automated regression tests, or (presumably) estimate the thermo of O1[C]=N1
a bunch of times.
Expected Behavior
Thermo of O1[C]=N1
would be consistent.
Installation Information
Describe your installation method and system information.
- detected by reading regression logs, so whatever is in Travis
This issue is being automatically marked as stale because it has not received any interaction in the last 90 days. Please leave a comment if this is still a relevant issue, otherwise it will automatically be closed in 30 days.
This is still a problem (see https://github.com/ReactionMechanismGenerator/RMG-Py/issues/2490#issuecomment-1603094355 )