CanteraError thrown by CVodesIntegrator::step: CVodes error encountered. Error code: -3 At t = 0.00165949 and h = 1.32238e-10, the error test failed repeatedly or with |h| = hmin. Components with largest weighted error estimates: 15: -85.9145 16: 80.3827 6: 5.82164 2: -0.0104749 8: 0.00405638 13: 0.000791296 31: -0.000781994 21: -0.000263437 7: 0.000121084 24: -7.17314e-05 ************************
Carly,
The essential advice from the Jupyter notebook that Bryan linked to is to look at the rate constants, particularly those for the reverse reactions. In this case, there are several potentially problematic reactions. Taking a rate constant of 10^20 as a somewhat arbitrary threshold:
for i in range(gas.n_reactions):
if kr[i] > 1e20:
print('{:4d} {:.3e} {}'.format(i, kr[i], gas.reaction_equation(i)))
provides the output:
73 4.269e+25 CH3 + M <=> CH + H2 + M
74 5.332e+26 CH3 + M <=> CH2 + H + M
942 1.030e+30 CH + NH3 <=> 2 H + H2CN
1337 5.780e+23 H2NCHO + M <=> HCO + NH2 + M
1338 6.219e+27 H2NCHO + M <=> H + H2NCO + M
In addition, if you look up the solution components that are called out in the error message you posted (e.g. by calling shockTube.component_name(15) etc.) you will see that they correspond to CH3, CH2, and H, which suggests that the second reaction listed is the most problematic one. According to the paper referenced for this reaction (and the preceding reaction) in the mechanism file, these rate constants are fits for temperatures in the range 2253−3527 K, so it’s not surprising for them to cause problems at 300 K. If you search for this reaction in the RMG database, you will see that it is written much more frequently in the reverse direction, generally as a falloff reaction with a much more modest rate coefficient at 300 K.
Regards,
Ray