From 8847b5abac2e4dff8dc26d545eabcc30f18bd90a Mon Sep 17 00:00:00 2001 From: Ray Speth Date: Fri, 15 Feb 2013 17:31:15 +0000 Subject: [PATCH] [Kinetics] Ensure that equilibrium constants are not zero This prevents reverse rate constants from becoming NaN when the forward rate constant underflows. --- src/kinetics/GasKinetics.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/kinetics/GasKinetics.cpp b/src/kinetics/GasKinetics.cpp index 4b21c6f3c..612bc42ad 100644 --- a/src/kinetics/GasKinetics.cpp +++ b/src/kinetics/GasKinetics.cpp @@ -232,7 +232,8 @@ void GasKinetics::updateKc() doublereal rrt = 1.0/(GasConstant * thermo().temperature()); for (size_t i = 0; i < m_nrev; i++) { size_t irxn = m_revindex[i]; - m_rkcn[irxn] = exp(m_rkcn[irxn]*rrt - m_dn[irxn]*m_logStandConc); + m_rkcn[irxn] = std::min(exp(m_rkcn[irxn]*rrt - m_dn[irxn]*m_logStandConc), + BigNumber); } for (size_t i = 0; i != m_nirrev; ++i) {