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