Experimental data

Time (min) CA (mol/L)

Directions

This simulation explores how batch reactor concentration-vs-time data is used to determine a reaction's rate law. It applies the integral method (testing zero-, first-, and second-order linearized fits) and, when needed, the differential method (numerical differentiation plus a log–log fit) to estimate the reaction order and rate constant. All regressions are computed with ordinary least-squares linear regression, and derivatives for the differential method are approximated with finite differences. Enter your own data or load one of the built-in sample data sets to see the method in action.

  1. Choose the time units (seconds, minutes, or hours) that match your data.
  2. Enter your experimental time and concentration (CA) data in the table, one point per row. Use + add row to add more points, or the × next to a row to delete it. You can also click sample 1st order or sample non-integer to load example data sets.
  3. Click analyze reaction data. The simulation fits your data to the zero-, first-, and second-order integral rate laws using linear regression.
  4. If none of these linearized fits reach R2 ≥ 0.99, a fourth plot is automatically generated using the differential method to estimate a non-integer reaction order.
  5. Click on any of the plots to display the governing equations, the fitted slope/intercept, R2, and the resulting rate constant (and order, if applicable) in the Calculation help & analysis box above the plots.
  6. Use the Directions, Details, and About buttons at any time to reopen this guide, view the underlying equations, or learn more about the tool. Close a panel with the × in its upper right corner.

Details

For a constant-volume batch reactor, the mole balance on species A reduces to \(-\dfrac{dC_A}{dt} = -r_A\). Each plot below tests a candidate rate law by linearizing its integrated form and performing a least-squares fit \(y = mx + b\).

Zero order

Rate law: \(-r_A = k\)  →  Integrated: \(C_A = C_{A0} - kt\)

Plotted as \(C_A\) vs. \(t\); slope \(m = -k\).

First order

Rate law: \(-r_A = kC_A\)  →  Integrated: \(\ln\!\left(\dfrac{C_{A0}}{C_A}\right) = kt\)

Plotted as \(\ln(C_{A0}/C_A)\) vs. \(t\); slope \(m = k\).

Second order

Rate law: \(-r_A = kC_A^{2}\)  →  Integrated: \(\dfrac{1}{C_A} = \dfrac{1}{C_{A0}} + kt\)

Plotted as \(1/C_A\) vs. \(t\); slope \(m = k\).

Differential method (non-integer order)

Used when \(R^2 < 0.99\) for all three integral fits above. The rate is estimated numerically at each data point using finite differences (central differences at interior points; forward/backward differences at the endpoints):

\(-\dfrac{dC_A}{dt}\Big|_i \approx \dfrac{C_{A,i+1} - C_{A,i-1}}{t_{i+1} - t_{i-1}}\)

The general rate law \(-\dfrac{dC_A}{dt} = kC_A^{\alpha}\) is linearized by taking the natural log of both sides:

\(\ln\!\left(-\dfrac{dC_A}{dt}\right) = \ln k + \alpha \ln C_A\)

Plotted as \(\ln(-dC_A/dt)\) vs. \(\ln C_A\); slope \(m = \alpha\) (reaction order), intercept \(b = \ln k\), so \(k = e^{b}\).

Linear regression

Each plot is fit with ordinary least-squares regression:

\(m = \dfrac{n\sum x_i y_i - \sum x_i \sum y_i}{n \sum x_i^2 - \left(\sum x_i\right)^2}\),   \(b = \dfrac{\sum y_i - m \sum x_i}{n}\),   \(R^2 = 1 - \dfrac{\sum (y_i - \hat{y}_i)^2}{\sum (y_i - \bar{y})^2}\)

Symbols used

SymbolMeaning
\(C_A\)Concentration of species A at time \(t\) (mol/L)
\(C_{A0}\)Initial concentration of A, at \(t = 0\) (mol/L)
\(t\)Reaction time (in the selected time units)
\(-r_A\)Rate of disappearance of A, \(-dC_A/dt\)
\(k\)Reaction rate constant
\(\alpha\)Reaction order (differential method)
\(m, b\)Slope and intercept of the linearized fit
\(R^2\)Coefficient of determination of the linear fit

About

This simulation was generated by Professor David L. Silverstein and Dr. Loyal Murphy of the University of Mississippi using Google Gemini. It was modified for LearnChemE using Claude AI.