Treatment Bed

QSDsan: Quantitative Sustainable Design for sanitation and resource recovery systems

This module is developed by:

Yalin Li <mailto.yalin.li@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._treatment_bed.DryingBed(ID='', ins: Sequence[AbstractStream] | None = None, outs: Sequence[AbstractStream] | None = (), thermo=None, init_with='WasteStream', design_type='unplanted', degraded_components=('OtherSS',), **kwargs)

Unplanted and planted drying bed for solids based on Trimmer et al.

To enable life cycle assessment, the following impact items should be pre-constructed: Concrete, Steel.

Parameters:
  • ins (WasteStream) – Solid for drying.

  • outs (WasteStream) – Dried solids, evaporated water, fugitive CH4, and fugitive N2O.

  • design_type (str) – Can be “unplanted” or “planted”. The default unplanted process has a number of “covered”, “uncovered”, and “storage” beds. The storage bed is similar to the covered bed, but with higher wall height.

Examples

bwaise systems

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.

property N_bed

[dict] Number of the different types of drying beds, float will be converted to the smallest integer.

property bed_H

[dict] Wall height of the different types of drying beds, [m].

property bed_L

[dict] Length of the different types of drying beds, [m].

property bed_W

[dict] Width of the different types of drying beds, [m].

property column_H

[float] Column height for covered bed, [m].

property column_per_side

[int] Number of columns per side of covered bed, float will be converted to the smallest integer.

property column_unit_mass

[float] Unit mass of the column, [kg/m].

property concrete_thickness

[float] Thickness of the concrete wall.

property cover_slope

[float] Slope of the bed cover, [°].

property cover_unit_mass

[float] Unit mass of the bed cover, [kg/m2].

property design_type

[str] Drying bed type, can be either “unplanted” or “planted”.

line: str = 'Drying bed'

class-attribute Name denoting the type of Unit class. Defaults to the class name of the first child class

run()

Run mass and energy balance. This method also runs specifications user defined specifications unless it is being run within a specification (to avoid infinite loops).

See also

_run, specifications, add_specification, add_bounded_numerical_specification

property sol_frac

[float] Final solid content of the dried solids.

property tau

[float] Retention time, [d].

class qsdsan.sanunits._treatment_bed.LiquidTreatmentBed(ID='', ins: Sequence[AbstractStream] | None = None, outs: Sequence[AbstractStream] | None = (), thermo=None, init_with='WasteStream', **kwargs)

For secondary treatment of liquid based on Trimmer et al.

To enable life cycle assessment, the following impact items should be pre-constructed: Concrete.

Parameters:
  • ins (WasteStream) – Waste for treatment.

  • outs (WasteStream) – Treated waste, fugitive CH4, and fugitive N2O.

Examples

bwaise systems

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.

property N_bed

[int] Number of treatment beds, float will be converted to the smallest integer.

property bed_H

[float] Bed height, [m].

property bed_L

[float] Bed length, [m].

property bed_W

[float] Bed width, [m].

property concrete_thickness

[float] Thickness of the concrete wall.

line: str = 'Liquid treatment bed'

class-attribute Name denoting the type of Unit class. Defaults to the class name of the first child class

run()

Run mass and energy balance. This method also runs specifications user defined specifications unless it is being run within a specification (to avoid infinite loops).

See also

_run, specifications, add_specification, add_bounded_numerical_specification

property tau

[float] Residence time, [d].