-
-
Notifications
You must be signed in to change notification settings - Fork 346
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Inconsistency between TROE formula and code when T** is zero. #683
Comments
@chengdi123000 Can you reproduce this behavior with the master branch? |
I don't think there are any relevant changes here between Cantera 2.3.0 and the current master branch. There are two cases here, both of which have some issues. However, I have concerns with the validity of 0 or near-zero values for T**. The original paper by Troe states that "Fcent decreases from Fcent = 1 at 0 K with increasing temperatures, before it increases at very high temperatures". However, If T** is set to 0, then the low-temperature limit for Fcent is 2, not 1. Case 1: T** omitted
Case 2: T** given as 0.0
While the inconsistencies should be addressed, I think that we should warn if T** is specified as 0, since I suspect it is an error and what was intended is actually Cantera's current behavior of omitting the term. |
I agree with @speth In some mechanism in chemkin's format, the I think keeping consistency with CHEMKIN and modifying the description in document is the best approach to resolve this issue. FYI, here is the description of TROE coefficients in Input Manual of CHEMKIN in ANSYS 18.2:
|
I realized while looking at the warning added in #741 regarding this issue that there is an additional consideration of how this is handled by So, in addition to warning about T** being specified as 0 at the time a |
This is an excellent point, and probably a philosophical question about My own preference would be a literal translation. As long as Edit ... I changed the |
I agree that a literal translation is the best approach. To the extent that the warnings generated by Cantera prompt people to improve their mechanisms, I'm happy to be the nagging voice for people 😁 |
As demonstrated in Cantera#683, sometimes the zero values are intentional and meaningful. Rework the SpeciesTransport class to not use this function.
As demonstrated in Cantera#683, sometimes the zero values are intentional and meaningful. Rework the SpeciesTransport class to not use this function.
As demonstrated in Cantera#683, sometimes the zero values are intentional and meaningful. Rework the SpeciesTransport class to not use this function.
As demonstrated in Cantera#683, sometimes the zero values are intentional and meaningful. Rework the SpeciesTransport class to not use this function.
As demonstrated in Cantera#683, sometimes the zero values are intentional and meaningful. Rework the SpeciesTransport class to not use this function.
As demonstrated in Cantera#683, sometimes the zero values are intentional and meaningful. Rework the SpeciesTransport class to not use this function.
As demonstrated in Cantera#683, sometimes the zero values are intentional and meaningful. Rework the SpeciesTransport class to not use this function.
Cantera version
2.3.0
Operating System
Linux Ubuntu18.04 64bit
Python/MATLAB version
3.7
Expected Behavior
When T** is not given, the default value is 0.0, as description in https://cantera.org/science/reactions.html . Then the last term exp(-T**/T) ==1
Actual Behavior
When T** is not given, the last term exp(-T**/T) is ignored so this term is actually zero.
Steps to reproduce
Comment
According to CHEMKIN's source code and theory guide, this behavior of cantera is consistent with the implementation of CHEMKIN but it is inconsistent with the cantera's document, CHEMKIN's theory guide and Troe's paper.
However, I do not know which is correct. It may influence the behavior of Weiyao's 89 species, 683 reactions reduced mechanism for kerosene.
The text was updated successfully, but these errors were encountered: