#* Jobses' Model Ref: Andres Mahecha-Botero, Parag Garhyan, S.S.E.H. Elnashaie "Non-linear characteristics of a membrane fermentor for ethanol production and their implications" Nonlinear Analysis: RealWorld Applications 7 (2006) 432 – 457. *---------------------------------------------------------------------- * Author: Fábio Diehl and Argimiro R. Secchi * $Id: ethanol_bif.mso 1 2008-02-19 12:17:36Z arge $ *--------------------------------------------------------------------*# using "types"; FlowSheet Ethanol_bif PARAMETERS Cs0 as conc_mass (Brief = "Substrate Initial Concentration"); D as frequency (Brief = "Dilution Rate", DisplayUnit = '1/h'); Ks as conc_mass (Brief = "Monod Constant"); Ysx as positive (Brief = "Yield factor based on substrate (kg/kg)"); Ypx as positive (Brief = "Yield factor based on product (kg/kg)"); ms as frequency (Brief = "Maintenance factor based on substrate (kg/kg h)"); mp as frequency (Brief = "Maintenance factor based on product (kg/kg h)"); k1 as frequency (Brief = "Empirical constant"); k2 as positive (Brief = "Empirical constant", Unit = 'm^3/kg/h'); k3 as positive (Brief = "Empirical constant", Unit = 'm^6/kg^2/h'); VARIABLES Cs as conc_mass (Brief = "Substrate Concentration"); Ce as conc_mass (Brief = "Key-Product Concentration"); Cx as conc_mass (Brief = "Biomass Concentration"); Cp as conc_mass (Brief = "Ethanol Concentration"); EQUATIONS diff(Cs) = -Cs*Ce/(Ks+Cs)/(Ysx*'h') - ms*Cx + D*(Cs0-Cs); diff(Ce) = (k1-k2*Cp+k3*Cp^2)*Cs*Ce/(Ks+Cs) - D*Ce; diff(Cx) = Cs*Ce/(Ks+Cs)/'h' - D*Cx; diff(Cp) = Cs*Ce/(Ks+Cs)/(Ypx*'h') + mp*Cx - D*Cp; SET Cs0 = 200 * 'kg/m^3'; D = 1/'h'; Ks = 0.5*'kg/m^3'; Ysx = 1/40.9; Ypx = 1/19; ms = 2.16/'h'; mp = 1.1/'h'; k1 = 16/'h'; k2 = 0.497*'m^3/kg/h'; k3 = 0.00383*'m^6/kg^2/h'; GUESS #* Cs = 40 * 'kg/m^3'; Ce = 10 * 'kg/m^3'; Cx = 10 * 'kg/m^3'; Cp = 90 * 'kg/m^3'; *# Cs = 20 * 'kg/m^3'; Ce = 1 * 'kg/m^3'; Cx = 10 * 'kg/m^3'; Cp = 40 * 'kg/m^3'; INITIAL Cs = 40 * 'kg/m^3'; Ce = 10 * 'kg/m^3'; Cx = 10 * 'kg/m^3'; # Cp = 90 * 'kg/m^3'; Cp = 40 * 'kg/m^3'; OPTIONS TimeStart = 0; TimeStep = 0.5; TimeEnd = 30; TimeUnit = 'h'; DAESolver(File = "dassl"); # Dynamic = false; end