diff --git a/src/thermophysicalModels/specie/transport/cantera/canteraTransport.C b/src/thermophysicalModels/specie/transport/cantera/canteraTransport.C index 8747bc0a..e771ea24 100644 --- a/src/thermophysicalModels/specie/transport/cantera/canteraTransport.C +++ b/src/thermophysicalModels/specie/transport/cantera/canteraTransport.C @@ -159,12 +159,14 @@ void Foam::canteraTransport::calculateDiffusivities { cm_.gas()->setState_TPX(T, p, X_.cdata()); + const scalar relTol = 1.0e-15; + // check for singular case (Xi = 1) label idxFracOne = -1; scalar sumX = sum(X_); forAll (X_, i) { - if (X_[i]/sumX == 1.0) + if ((sumX-X_[i])/sumX < relTol) { idxFracOne = i; break;