## Integrating a batch reactor design equation

Posted January 06, 2013 at 09:00 AM | categories: integration | tags: reaction engineering

Updated March 06, 2013 at 04:30 PM

For a constant volume batch reactor where \(A \rightarrow B\) at a rate of \(-r_A = k C_A^2\), we derive the following design equation for the length of time required to achieve a particular level of conversion :

\(t(X) = \frac{1}{k C_{A0}} \int_{X=0}^X \frac{dX}{(1-X)^2}\)

if \(k = 10^{-3}\) L/mol/s and \(C_{A0}\) = 1 mol/L, estimate the time to achieve 90% conversion.

We could analytically solve the integral and evaluate it, but instead we will numerically evaluate it using scipy.integrate.quad. This function returns two values: the evaluated integral, and an estimate of the absolute error in the answer.

from scipy.integrate import quad def integrand(X): k = 1.0e-3 Ca0 = 1.0 # mol/L return 1./(k*Ca0)*(1./(1-X)**2) sol, abserr = quad(integrand, 0, 0.9) print 't = {0} seconds ({1} hours)'.format(sol, sol/3600) print 'Estimated absolute error = {0}'.format(abserr)

t = 9000.0 seconds (2.5 hours) Estimated absolute error = 2.12203274482e-07

You can see the estimate error is very small compared to the solution.

Copyright (C) 2013 by John Kitchin. See the License for information about copying.