Semi-Batch Reactor Simulator Back
Chemical Engineering

Semi-Batch Reactor Simulator

Model a semi-batch reactor in which reactant B is charged at the start and reactant A is dosed in slowly during the run. Vary the feed rate, rate constant and initial charge to watch the concentrations, conversion, reactor volume and the unreacted-A accumulation ratio update in real time.

Parameters
Initial liquid volume V₀
L
Liquid charged to the reactor at the start of the run
Feed rate F
L/min
Rate at which the A-bearing liquid is dosed in
A concentration in feed CA,in
mol/L
Concentration of reactant A in the fed liquid
Rate constant k
Second-order rate constant of A+B→products, L/(mol·min)
Initial B concentration CB0
mol/L
Concentration of reactant B charged at the start
Run time tend
min
Total duration over which A is fed
Results
Final liquid volume V (L)
Final A conc. C_A (mol/L)
Final B conc. C_B (mol/L)
Conversion of B (%)
Total A fed (mol)
Unreacted-A accumulation (%)
Reactor view — dosing & stirring animation

Reactant A drips in from the dropping funnel and the liquid level rises. The impeller stirs and the liquid colour shifts as B is converted to product.

Concentration versus time — C_A and C_B
Reactor volume and conversion versus time
Theory & Key Formulas

$$\frac{dN_A}{dt}=F\,C_{A,in}-rV,\qquad \frac{dN_B}{dt}=-rV,\qquad V(t)=V_0+F\,t$$

Mole balances on reactants A and B. F: feed rate, C_{A,in}: A concentration in the feed, V: instantaneous liquid volume, r: reaction rate. A is added by feeding and removed by reaction; B is only consumed.

$$r = k\,C_A\,C_B,\qquad C_A=\frac{N_A}{V},\quad C_B=\frac{N_B}{V}$$

Second-order reaction rate r [mol/(L·min)]. k: rate constant. The slower A is fed, the lower C_A stays, so it never accumulates as unreacted material. This tool integrates the ODE system with the 4th-order Runge-Kutta method.

What is the Semi-Batch Reactor Simulator?

🙋
A "semi-batch reactor" sounds like a cousin of the batch reactor — so what exactly is the "semi" part?
🎓
Good question. A batch reactor takes all the feedstock at once at the start, and you empty it completely when the reaction finishes. A continuous reactor keeps feeding in and withdrawing out. A semi-batch reactor sits right in between: you charge just one reactant at the start, and dose the other one in slowly while the run proceeds. You do not withdraw any product. "Feeding one reactant continuously" is the continuous part; "not withdrawing" is the batch part — hence "semi"-batch.
🙋
So you deliberately add one reactant slowly. Adding it all at once would be easier — why go to that trouble?
🎓
The number-one reason is safety. Think about an exothermic reaction. If you dump all the feedstock in, the reaction runs hard and a flood of heat comes out. If the cooling cannot keep up, the temperature rises, and a higher temperature makes the reaction even faster — that is a thermal runaway. In a semi-batch reactor the dosed reactant reacts almost on the spot, so you control the heat-release rate directly through the feed rate. If it looks dangerous, you stop the feed — and the reaction stops. That is the key.
🙋
I see — stopping the feed stops the reaction, that's the heart of the safety. Is the "unreacted-A accumulation ratio" on the left related to that?
🎓
Very much so. The accumulation ratio is the amount of A still sitting unreacted in the reactor, divided by the total A fed so far. Ideally A is consumed as fast as it is dosed in and barely piles up — an accumulation ratio near zero. A high ratio, on the other hand, means that much "heat-release potential ready to fire all at once" is stored in the reactor. If the cooling fails, that stored A becomes the fuel for a runaway. So the accumulation ratio is the barometer of whether your semi-batch run is genuinely in a "safe state".
🙋
So how do I lower the accumulation ratio? Make the feed really slow, for instance?
🎓
Right. Lowering the feed rate F, choosing conditions with a large rate constant k (a faster reaction), or charging more initial B so A always has plenty of partners — all push the accumulation ratio down. Try raising the "feed rate" slider on the left; you will see the accumulation ratio climb sharply. But going too slow stretches the run time and cuts productivity. Safety (low accumulation) and productivity (short run time, high conversion) are a trade-off. Finding that balance point is exactly where reactor design earns its keep.
🙋
I heard the feeding also helps with "selectivity", not just safety. How does that work?
🎓
That is another gift of the slow feed. Suppose the desired reaction is first-order in A but a side reaction is second-order in A. A high instantaneous concentration of A suddenly favours the side reaction, since it scales with the square of concentration. By dosing A in bit by bit and keeping C_A low throughout, the side reaction's share shrinks and the selectivity to the desired product rises. That is why semi-batch reactors are especially prized in fine chemicals and pharmaceuticals, where purity and selectivity are everything.

Frequently Asked Questions

A batch reactor is charged with all the feedstock at the start, reacts, and is then emptied completely. A continuous reactor (CSTR or PFR) feeds reactants in and withdraws product continuously. A semi-batch reactor sits in between: one reactant is charged at the start and the other is added slowly during the run, with no withdrawal. This 'feed only one reactant gradually' approach gives the semi-batch its defining benefit — the fed reactant never builds up to a high concentration.
The main reason is safety. In an exothermic reaction, heat is released only as fast as the fed reactant reacts. In a semi-batch reactor the fed reactant reacts almost immediately, so the heat-release rate is controlled directly by the feed rate. If the cooling is about to be overwhelmed, stopping the feed stops the reaction — the most reliable way to prevent a thermal runaway. The second reason is selectivity: keeping one reactant at a low instantaneous concentration suppresses side reactions that are higher-order in it.
The accumulation ratio is the unreacted A still in the reactor at the end of the run divided by the total moles of A fed so far. When the rate constant k is large and A reacts as fast as it is dosed in, the ratio approaches zero. When k is small or the feed is too fast, unreacted A piles up and the ratio rises. A high accumulation ratio means that much unreacted heat-release potential is stored in the reactor — it is a key indicator of the runaway risk if cooling is lost.
For the same run time, raising the feed rate increases the total moles of A fed, giving B more reaction partners, so the conversion of B rises. But if the feed is too fast relative to the reaction rate, A cannot be consumed and the accumulation ratio jumps. Since you want a low accumulation ratio for safety and selectivity, conversion (productivity) and accumulation (safety) are in a trade-off. Use this tool to find a feed condition that balances the two.

Real-World Applications

Pharmaceutical and fine-chemical manufacturing: The semi-batch reactor is the single most important reactor type in fine chemicals — pharmaceutical intermediates, agrochemicals, dyes. These reactions are often strongly exothermic, and the purity and selectivity of the target product directly determine quality. Dosing the reagent in gradually keeps the instantaneous concentration low, preventing a runaway while suppressing by-products and yielding pharmaceutical-grade high-purity material. It also adapts flexibly to high-mix, low-volume production.

Strongly exothermic reactions — nitration, sulfonation and more: Nitration, sulfonation, halogenation and Grignard reactions release very large heats of reaction and are classic cases where mixing all the feed at once becomes uncontrollable. These are always run semi-batch, with the feed rate set to match the reactor's cooling capacity. Interlocking the dosing pump with temperature and pressure control so that the feed shuts off automatically on an upset is the standard safety design.

Polymerization and emulsion polymerization: In emulsion or solution polymerization where monomer and initiator are fed in stepwise, semi-batch operation controls the molecular-weight distribution, particle size and copolymer composition. Charging all the monomer at once concentrates the heat release early on and produces composition drift. Tuning the feed rate yields polymer of uniform quality, reliably.

Process-safety assessment and scale-up: An accumulation-ratio estimate like this tool is the starting point of a reaction-hazard assessment (HAZOP, runaway analysis). A lab-scale flask has a large surface-to-volume ratio so cooling works well, whereas a production reactor has a small ratio and sheds heat poorly — the single biggest concern in scale-up. Determining a feed condition that keeps the accumulation ratio low at the design stage is the key to a safe scale-up.

Common Misconceptions and Pitfalls

The first big misconception is "slow feeding is always safe". The essence of safety is that the fed reactant reacts and is consumed on the spot — not slow feeding itself. If the reaction temperature is too low, the catalyst is deactivated, or there is an "induction period" of slow start-up, the fed reactant does not react and piles up unreacted. That is exactly the "rising accumulation ratio" this tool shows. When the reaction finally fires, all the stored reactant reacts at once, and you get a runaway that does not stop even if you cut the feed. Confirm that the reaction is genuinely proceeding before you start dosing, and always keep the accumulation ratio low.

Next is the error of "assuming the reactor volume is constant when calculating". A semi-batch reactor keeps receiving feed throughout the run, so the liquid volume V grows steadily from V₀. This tool treats it as V(t)=V₀+F·t. Because concentration is "moles divided by volume", the same number of moles gives a different concentration when the volume changes. Always write the mole balance in "moles", not "concentration", and obtain the concentration afterwards by dividing by V. Writing the balance directly in concentration as if the volume were fixed produces large errors, especially when the fed volume is large compared with the initial charge.

Finally, the dangerous belief that "it worked in the lab, so the same feed condition is fine in the production reactor". The bigger a reactor gets, the smaller its heat-rejecting surface area relative to its volume (area grows as length squared, volume as length cubed). A lab flask cools well, so even a fairly high accumulation ratio never surfaces as a problem. Apply the same feed rate to a production reactor and the cooling cannot keep up, and it runs away. In scale-up you must revise the feed rate to match the reactor's cooling capacity, and if necessary extend the feed time, dilute, or run colder.

How to Use

  1. Set initial volume V0 (L) of reactant B solution in the reactor vessel
  2. Specify feed rate (L/min) at which reactant A is dosed continuously into the semi-batch system
  3. Enter feed concentration of A (mol/L) and reaction rate constant k (L/mol·min)
  4. Run simulation to observe B consumption, A accumulation, and final conversions in real-time

Worked Example

Consider a polymerization reactor: V0=50 L of monomer B at 2.0 mol/L, initiator A fed at 0.8 L/min with concentration 0.5 mol/L, reaction rate k=0.12 L/mol·min. After 90 minutes, the simulator predicts final volume V=122 L, final C_B=0.82 mol/L (59% conversion), C_A=0.018 mol/L, total A fed=36 mol, and unreacted-A accumulation=3.2%. This semi-batch strategy prevents exothermic runaway by controlling A addition rate.

Practical Notes

  1. Lower feed rates reduce peak exothermic heat but extend batch duration; for vinyl chloride polymerization, typical rates are 0.5–1.2 L/min to maintain safe jacket temperature
  2. High feed concentration of A increases viscosity and heat generation; pharmaceutical synthesis often uses dilute feeds (0.3–0.6 mol/L) to prevent local hotspots
  3. Monitor unreacted-A accumulation percentage; values above 5% signal incomplete reaction and may require extended residence time or higher k via temperature increase