fedbatch_Cmole A fed-batch simulation based on stoichiometric

fedbatch_Cmole
A fed-batch simulation based on stoichiometric analysis.
This simulation describes the same process as that of fedbatch_demo (obligate aerobic growth with
S=glycerol) but uses stoichiometric analysis for calculation of yields (Y) and specific rates (q) which
also gives an estimate of CO2 production.
The units of variables and constants are specified as g/L (%v/v for CO2 and O2).
Carbon-containing compounds are first converted to C-mole units in the beginning of the algorithm
loop, before they are used for calculation of yield coefficients (Y) and specific rates (q).
In the inter-conversions to/from C-mole units, C-mole based parameters are expressed with only
lower case letters (e.g. x and X are biomass in Cmole/L and g/L, respectively, and yem and Yem are
yield exclusive maintenance in C-mole/ Cmole and g/g, respectively)
Thereafter the units are converted back to gram units (or %v/v) before they are used in the mass
balance equations (solved by ode23s, and plotted by SimuPlot, which is not shown in the algorithm).
In this way the dynamic simulation all the time shows the gram units (or % v/v) while calculations are
based on C-mole units for the stoichiometric analysis.
For the principle of stoichiometric analysis to calculate Y and q: See Fermentation Process Engineering
(Chapt 5), which is available from www.enfors.eu.
The parameters and the model do not represent any specific organism but correspond approximately
to an E. coli assuming no overflow metabolism (growth on glycerol) and fully aerobic metabolism.
See fedbatch_demo for explanation of variables and constants.
Algorithm:
% Convert C-containing compounds/rates to C-mole units:
x=X/CMWx;
%C-mole/L
s=S/CMWs;
%C-mole/L
ks=Ks/CMWs;
%C-mole/L
qmcmol=qm/CMWs*CMWx;
%Cmole/Cmole/h
qsmax=qSmax/CMWs*CMWx;
%Cmole/Cmole/h
yem=Yem/CMWx*CMWs;
%Cmole/Cmole
qs=qsmax*s/(s+ks)*DOT/(DOT+Ko); %Cmole/Cmole/h
my=(qs-qmcmol)*yem;
%/h
% Biomass yield as function of my and qm:
yxs=my*yem/(my+qmcmol*yem);
%Cmole/Cmole
% Stoichiometric analysis of Y and q for O2 and CO2
yos=(DRs-DRx*yxs)/4;
%molO2/Cmole
qo=yos*qs;
%moleO2/Cmole/h
yco2s=1-yxs;
%Cmole/Cmole
qco2=yco2s*qs;
%Cmole/Cmole/h
% Convert mass balances to gram units
dSdt=F/V*Si-F/V*S-qs*CMWs/CMWx*X;
dXdt=-F/V*X+my*X;
dDOTdt=KLa*(DOTstar-DOT)-qo*32*x*H;
dVdt=F;
% Pack diff equation values in vector for ODE23s
dydt=[dXdt;dSdt;dDOTdt;dVdt];
% Calculate O2 and CO2 data
OCR=qo*x*V*1000;
O2=100*(60*Q*20.9/100-OCR/1000*24)/(60*Q);
CPR=qco2*x*V*1000;
CO2=CPR/1000*24/(60*Q)*100;
%mmole/h
%%v/v
% mmole/h
%%v/v