nrel_bioreactor#
- class NRELBatchBioreactor(ID='', ins=None, outs=(), thermo=None, **kwargs)[source]#
Abstract Bioreactor class. Conversion is based on reaction time, tau. Cleaning and unloading time,`tau_0`, fraction of working volume, V_wf, and number of reactors, N_reactors, are attributes that can be changed. The cost of a reactor is based on the NREL batch fermentation tank cost assuming volumetric scaling with a 6/10th exponent [1].
Abstract methods
- _run():
Must set outlet stream flows.
- Parameters:
ins (
Stream
], optional) – Inlet fluids to be mixed into the reactor.outs (
Stream
], optional) –[0] Vent
[1] Effluent
tau (float) – Reaction time [hr].
N (int, optional) – Number of batch reactors
V (float, optional) – Target volume of reactors [m^3].
T=305.15 (float) – Operating temperature of reactor [K].
P=101325 (float) – Operating pressure of reactor [Pa].
Nmin=2 (int) – Minimum number of fermentors.
Nmax=36 (int) – Maximum number of fermentors.
Notes
Either N or V must be given.
- class NRELFermentation(ID='', ins=None, outs=(), thermo=None, **kwargs)[source]#
Create a Fermentation object which models large-scale batch fermentation for the production of 1st generation ethanol using yeast [2] [3] [4] [5]. A compound with CAS ‘Yeast’ must be present. Only sucrose and glucose are taken into account for conversion. Conversion is based on reaction time, tau. Cleaning and unloading time, tau_0, fraction of working volume, V_wf, and number of reactors, N_reactors, are attributes that can be changed. Cost of a reactor is based on the NREL batch fermentation tank cost assuming volumetric scaling with a 6/10th exponent [1].
- Parameters:
ins (
Stream
], optional) – Inlet fluids to be mixed into the fermentor.outs (
Stream
], optional) –[0] Vent
[1] Effluent
tau (float) – Reaction time.
N (int, optional) – Number of batch reactors
V (float, optional) – Target volume of reactors [m^3].
T=305.15 (float) – Temperature of reactor [K].
P=101325 (float) – Operating pressure of reactor [Pa].
Nmin=2 (int) – Minimum number of fermentors.
Nmax=36 (int) – Maximum number of fermentors.
efficiency=0.9 (float, optional) – User enforced efficiency.
iskinetic=False (bool, optional) – If True, Fermenation.kinetic_model will be used.
Notes
Either N or V must be given.
Examples
Simulate a Fermentation object which models batch fermentation for the production of 1st generation ethanol using yeast.
>>> from biorefineries.cane import create_sugarcane_chemicals >>> from biosteam.units import Fermentation >>> from biosteam import Stream, settings >>> settings.set_thermo(create_sugarcane_chemicals()) >>> feed = Stream('feed', ... Water=1.20e+05, ... Glucose=1.89e+03, ... Sucrose=2.14e+04, ... DryYeast=1.03e+04, ... units='kg/hr', ... T=32+273.15) >>> F1 = NRELFermentation('F1', ... ins=feed, outs=('CO2', 'product'), ... tau=8, efficiency=0.90, N=8) >>> F1.simulate() >>> F1.show() NRELFermentation: F1 ins... [0] feed phase: 'l', T: 305.15 K, P: 101325 Pa flow (kmol/hr): Water 6.66e+03 Glucose 10.5 Sucrose 62.5 Yeast 456 outs... [0] CO2 phase: 'g', T: 305.15 K, P: 101325 Pa flow (kmol/hr): Water 9.95 Ethanol 3.71 CO2 244 [1] product phase: 'l', T: 305.15 K, P: 101325 Pa flow (kmol/hr): Water 6.59e+03 Ethanol 240 Glucose 4.07 Yeast 532 >>> F1.results() Fermentation Units F1 Electricity Power kW 66.6 Cost USD/hr 5.2 Chilled water Duty kJ/hr -1.41e+07 Flow kmol/hr 9.42e+03 Cost USD/hr 70.3 Design Reactor volume m3 247 Batch time hr 12.6 Loading time hr 1.57 Number of reactors 8 Recirculation flow rate m3/hr 17.7 Reactor duty kJ/hr -1.41e+07 Cleaning and unloading time hr 3 Working volume fraction 0.9 Purchase cost Heat exchangers (x8) USD 1.57e+05 Reactors (x8) USD 1.87e+06 Agitators (x8) USD 1.17e+05 Cleaning in place USD 8.89e+04 Recirculation pumps (x8) USD 1.26e+05 Total purchase cost USD 2.36e+06 Utility cost USD/hr 75.5
References