Anaerobic Reactor¶
QSDsan: Quantitative Sustainable Design for sanitation and resource recovery systems
- This module is developed by:
Yalin Li <mailto.yalin.li@gmail.com>
Joy Zhang <joycheung1994@gmail.com>
This module is under the University of Illinois/NCSA Open Source License. Please refer to https://github.com/QSD-Group/QSDsan/blob/main/LICENSE.txt for license details.
- class qsdsan.sanunits._anaerobic_reactor.AnaerobicBaffledReactor(ID='', ins: Sequence[AbstractStream] | None = None, outs: Sequence[AbstractStream] | None = (), thermo=None, init_with='WasteStream', include_construction=True, degraded_components=('OtherSS',), if_capture_biogas=True, if_N2O_emission=False, **kwargs)¶
Anaerobic baffled reactor with the production of biogas based on Trimmer et al.
To enable life cycle assessment, the following impact items should be pre-constructed: Concrete, Gravel, Excavation.
- Parameters:
ins (Iterable(stream)) – Waste for treatment.
outs (Iterable(stream)) – Treated waste, biogas, fugitive CH4, and fugitive N2O.
Examples
References
[1] Trimmer et al., Navigating Multidimensional Social–Ecological System Trade-Offs across Sanitation Alternatives in an Urban Informal Settlement. Environ. Sci. Technol. 2020, 54 (19), 12641–12653. https://doi.org/10.1021/acs.est.0c03296.
See also
- property COD_removal¶
[float] Fraction of COD removed during treatment.
- property N_baffle¶
[int] Number of reactors, float will be converted to the smallest integer.
- property N_reactor¶
[int] Number of reactors, float will be converted to the smallest integer.
- property N_removal¶
[float] Fraction of N removed during treatment.
- property add_concrete¶
[float] Additional concrete as a fraction of the reactor concrete usage to account for receiving basin and biogas tank.
- property concrete_thickness¶
[float] Thickness of the concrete wall.
- line: str = 'Anaerobic baffled reactor'¶
class-attribute Name denoting the type of Unit class. Defaults to the class name of the first child class
- property reactor_H¶
[float] Reactor height, [m].
- property reactor_L¶
[float] Reactor length, [m].
- property reactor_W¶
[float] Reactor width, [m].
- property tau¶
[float] Residence time, [d].
- class qsdsan.sanunits._anaerobic_reactor.AnaerobicCSTR(ID='', ins: Sequence[AbstractStream] | None = None, outs: Sequence[AbstractStream] | None = (), thermo=None, init_with='WasteStream', V_liq=3400, V_gas=300, model=None, T=308.15, headspace_P=1.013, external_P=1.013, pipe_resistance=50000.0, fixed_headspace_P=False, retain_cmps=(), fraction_retain=0.95, isdynamic=True, exogenous_vars=(), **kwargs)¶
An anaerobic continuous stirred tank reactor with biogas in headspace. [1], [2]
- Parameters:
ins (
WasteStream
) – Influent to the reactor.outs (Iterable) – Biogas and treated effluent(s).
V_liq (float, optional) – Liquid-phase volume [m^3]. The default is 3400.
V_gas (float, optional) – Headspace volume [m^3]. The default is 300.
model (
Processes
, optional) – The kinetic model, typically ADM1-like. The default is None.T (float, optional) – Operation temperature [K]. The default is 308.15.
headspace_P (float, optional) – Headspace pressure, if fixed [bar]. The default is 1.013.
external_P (float, optional) – External pressure, typically atmospheric pressure [bar]. The default is 1.013.
pipe_resistance (float, optional) – Biogas extraction pipe resistance [m3/d/bar]. The default is 5.0e4.
fixed_headspace_P (bool, optional) – Whether to assume fixed headspace pressure. The default is False.
retain_cmps (Iterable[str], optional) – IDs of the components that are assumed to be retained in the reactor, ideally. The default is ().
fraction_retain (float, optional) – The assumed fraction of ideal retention of select components. The default is 0.95.
References
- property DO_ID¶
Not applicable.
- property V_liq¶
[float] The designed maximum liquid volume, not accounting for increased volume due to aeration, in m^3.
- property aeration¶
Not applicable
- property external_P¶
External (atmospheric) pressure [bar].
- property fixed_headspace_P¶
Headspace total pressure [bar].
- property headspace_P¶
Headspace total pressure [bar].
- ideal_gas_law(p=None, S=None)¶
Calculates partial pressure [bar] given concentration [M] at operation temperature or vice versa according to the ideal gas law .
- line: str = 'Anaerobic CSTR'¶
class-attribute Name denoting the type of Unit class. Defaults to the class name of the first child class
- property model¶
[
CompiledProcesses
or NoneType] Suspended growth model.
- p_vapor(convert_to_bar=True)¶
Calculates the saturated vapor pressure at operation temperature.
- property pipe_resistance¶
Gas pipe resistance coefficient [m3/d/bar].
- property split¶
[numpy.1darray or NoneType] The volumetric split of outs.
- property state¶
The state of the anaerobic CSTR, including component concentrations [kg/m3], biogas concentrations in the headspace [M biogas], and liquid flow rate [m^3/d].
- class qsdsan.sanunits._anaerobic_reactor.AnaerobicDigestion(ID='', ins: Sequence[AbstractStream] | None = None, outs: Sequence[AbstractStream] | None = (), thermo=None, init_with='WasteStream', include_construction=True, flow_rate=None, degraded_components=('OtherSS',), if_capture_biogas=True, if_N2O_emission=False, **kwargs)¶
Anaerobic digestion of wastes with the production of biogas based on Trimmer et al.
To enable life cycle assessment, the following impact items should be pre-constructed: Concrete, Excavation.
Cost is calculated by the unit cost of the impact items and their quantities.
- Parameters:
ins (Iterable) – Waste for treatment.
outs (Iterable) – Treated waste, captured biogas, fugitive CH4, and fugitive N2O.
flow_rate (float) – Total flow rate through the reactor (for sizing purpose), [m3/d]. If not provided, will use F_vol_in.
Examples
References
[1] Trimmer et al., Navigating Multidimensional Social–Ecological System Trade-Offs across Sanitation Alternatives in an Urban Informal Settlement. Environ. Sci. Technol. 2020, 54 (19), 12641–12653. https://doi.org/10.1021/acs.est.0c03296.
See also
- property COD_removal¶
[float] Fraction of COD removed during treatment.
- property N_reactor¶
[int] Number of reactors, float will be converted to the smallest integer.
- property aspect_ratio¶
[float] Diameter-to-height ratio of the reactor.
- property concrete_thickness¶
[float] Thickness of the concrete wall.
- property flow_rate¶
[float] Total flow rate through the reactor (for sizing purpose), [m3/d]. If not provided, will calculate based on F_vol_in.
- property headspace_frac¶
[float] Fraction of the reactor volume for headspace gas.
- line: str = 'Anaerobic digestion'¶
class-attribute Name denoting the type of Unit class. Defaults to the class name of the first child class
- property tau¶
[float] Residence time, [d].
- class qsdsan.sanunits._anaerobic_reactor.SludgeDigester(ID='', ins: Sequence[AbstractStream] | None = None, outs: Sequence[AbstractStream] | None = (), thermo=None, init_with='WasteStream', include_construction=False, F_BM_default=1, HRT=20, SRT=20, T=308.15, Y=0.08, b=0.03, organics_conversion=0.7, COD_factor=1.42, methane_yield=0.4, methane_fraction=0.65, depth=10, heat_transfer_coeff={'ceiling': 0.95, 'floor': 1.7, 'wall': 0.7}, wall_concrete_unit_cost=24, slab_concrete_unit_cost=13, excavation_unit_cost=0.3, F_BM={'Pump': 1.1800826, 'Pump building': 1.1800826}, lifetime={'Pump': 15, 'Pump pipe stainless steel': 15, 'Pump stainless steel': 15}, **kwargs)¶
A conventional digester for anaerobic digestion of sludge as in Shoener et al..
Note that the CompiledComponents object set in system simulation must have defined active_biomass.
- Parameters:
ins (Iterable(stream)) – Sludge for digestion.
outs (Iterable(stream)) – Digested sludge, generated biogas.
HRT (float) – Hydraulic retention time, [d].
SRT (float) – Solids retention time, [d].
T (float) – Temperature within the digester, [K].
Y (float) – Biomass yield, [mg VSS/mg BOD].
b (float) – Endogenous decay coefficient, [1/d].
organics_conversion (float) – Conversion of the organics (i.e., COD) of the sludge in fraction (i.e., 0.7 for 70%).
COD_factor (float) – Biomass-to-COD conversion factor, [g COD/g VSS].
methane_yield (float) – Methane yield from the digested organics, [m3/kg].
methane_fraction (float) – Fraction of methane in the biogas, the rest is assumed to be CO2.
depth (float) – Side depth of the digester, [m].
heat_transfer_coeff (dict) – Heat transfer coefficients for heat loss calculation, [W/m2/°C], keys should contain “wall”, “floor”, and “ceiling”.
wall_concrete_unit_cost (float) – Unit cost of the wall concrete, [UDS/ft3].
slab_concrete_unit_cost (float) – Unit cost of the slab concrete, [UDS/ft3].
excavation_unit_cost (float) – Unit cost of the excavation activity, [UDS/ft3].
References
- [1] Shoener, B. D.; Zhong, C.; Greiner, A. D.; Khunjar, W. O.; Hong, P.-Y.; Guest, J. S.
Design of Anaerobic Membrane Bioreactors for the Valorization of Dilute Organic Carbon Waste Streams. Energy Environ. Sci. 2016, 9 (3), 1102–1112. https://doi.org/10.1039/C5EE03715H.
- property D_PB¶
[float] Depth of the pump building, [ft].
- property L_PB¶
[float] Length of the pump building, [ft].
- property T_air¶
[float] Temperature of the air, [K].
- property T_earth¶
[float] Temperature of the air, [K].
- property W_PB¶
[float] Width of the pump building, [ft].
- auxiliary_unit_names: tuple[str, ...] = ('heat_exchanger',)¶
class-attribute Name of attributes that are auxiliary units. These units will be accounted for in the purchase and installed equipment costs without having to add these costs in the
baseline_purchase_costs
dictionary. Heat and power utilities are also automatically accounted for.
- property constr_access¶
[float] Extra room for construction access, [ft].
- property excav_slope¶
[float] Slope for excavation (horizontal/vertical).
- property freeboard¶
[float] Freeboard added to the depth of the reactor tank, [ft].
- line: str = 'Sludge digester'¶
class-attribute Name denoting the type of Unit class. Defaults to the class name of the first child class
- property t_slab¶
[float] Concrete slab thickness, [ft], default to be 2 in thicker than the wall thickness.
- property t_wall¶
[float] Concrete wall thickness, [ft].