aerated_bioreactor#

class AeratedBioreactor(ID='', ins=None, outs=(), thermo=None, **kwargs)[source]#

Same as StirredTankReactor but includes aeration. The agitator power may vary to minimize the total power requirement of both the compressor and agitator yet achieve the required oxygen transfer rate.

Examples

>>> import biosteam as bst
>>> from biorefineries.sugarcane import chemicals
>>> bst.settings.set_thermo(chemicals)
>>> feed = bst.Stream('feed',
...                   Water=1.20e+05,
...                   Glucose=2.5e+04,
...                   units='kg/hr',
...                   T=32+273.15)
>>> # Model oxygen uptake as combustion
>>> rxn = bst.Rxn('Glucose + O2 -> H2O + CO2', reactant='Glucose', X=0.5, correct_atomic_balance=True)
>>> R1 = bst.AeratedBioreactor(
...     'R1', ins=[feed, bst.Stream('air', phase='g')], outs=('vent', 'product'), tau=12, V_max=500,
...     reactions=rxn,
... )
>>> R1.simulate()
>>> R1.show()
AeratedBioreactor: R1
ins...
[0] feed
    phase: 'l', T: 305.15 K, P: 101325 Pa
    flow (kmol/hr): Water    6.66e+03
                    Glucose  139
[1] air
    phase: 'g', T: 305.15 K, P: 101325 Pa
    flow (kmol/hr): O2  1.02e+03
                    N2  3.85e+03
outs...
[0] vent
    phase: 'g', T: 305.15 K, P: 101325 Pa
    flow (kmol/hr): Water  135
                    CO2    416
                    O2     606
                    N2     3.85e+03
[1] product
    phase: 'l', T: 305.15 K, P: 101325 Pa
    flow (kmol/hr): Water    6.94e+03
                    Glucose  69.4
class GasFedBioreactor(ID='', ins=None, outs=(), thermo=None, **kwargs)[source]#

Same as AbstractStirredTankReactor but includes multiple gas feeds. The agitator power may vary to minimize the total power requirement of both the compressor and agitator yet achieve the required oxygen transfer rate.

Examples

>>> import biosteam as bst
>>> bst.settings.set_thermo(['H2', 'CO2', 'N2', 'O2', 'H2O', 'AceticAcid'])
>>> media = bst.Stream(ID='media', H2O=10000, units='kg/hr')
>>> H2 = bst.Stream(ID='H2', H2=100, units='kg/hr', phase='g')
>>> fluegas = bst.Stream(ID='fluegas', N2=70, CO2=25, H2O=3, O2=2, units='kg/hr', phase='g')
>>> # Model acetic acid production from H2 and CO2
>>> rxn = bst.Rxn('H2 + CO2 -> AceticAcid + H2O', reactant='H2', correct_atomic_balance=True)
>>> brxn = rxn.backwards(reactant='AceticAcid')
>>> R1 = bst.GasFedBioreactor(
...     'R1', ins=[media, H2, fluegas], outs=('vent', 'product'), tau=68, V_max=500,
...     reactions=rxn, backward_reactions=brxn,
...     gas_substrates=('H2', 'CO2'),
...     titer={'AceticAcid': 5},
...     optimize_power=False,
...     kW_per_m3=0.,
... )
>>> R1.simulate()
>>> R1.show()
GasFedBioreactor: R1
ins...
[0] media
    phase: 'l', T: 298.15 K, P: 101325 Pa
    flow (kmol/hr): H2O  188
[1] H2
    phase: 'g', T: 298.15 K, P: 101325 Pa
    flow (kmol/hr): H2  49.6
[2] fluegas
    phase: 'g', T: 298.15 K, P: 101325 Pa
    flow (kmol/hr): CO2  0.568
                    N2   2.5
                    O2   0.0625
                    H2O  0.167
outs...
[0] vent
    phase: 'g', T: 305.15 K, P: 101325 Pa
    flow (kmol/hr): H2          48.5
                    N2          2.5
                    O2          0.0625
                    H2O         1.89
                    AceticAcid  0.00183
[1] product
    phase: 'l', T: 305.15 K, P: 101325 Pa
    flow (kmol/hr): H2O         187
                    AceticAcid  0.282

References