Crop Application¶
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.unit_operations.static._crop_application.CropApplication(ID='', ins: Sequence[AbstractStream] | None = None, outs: Sequence[AbstractStream] | None = (), thermo=None, init_with='WasteStream', if_material_loss=True, loss_ratio=0.02)¶
Recovery nutrients in the recycled excreta (energy not recovered) based on Trimmer et al.
- Parameters:
if_material_loss (bool or dict) – If material loss occurs during application.
loss_ratio (float or dict) – Fractions of material losses during application (if if_materiloass is True).
Examples
>>> from qsdsan.utils import create_example_sanitation_components >>> cmps = create_example_sanitation_components() >>> from qsdsan import System >>> from qsdsan.unit_operations import Excretion, CropApplication >>> U1 = Excretion('U1') >>> CA = CropApplication('CA', ins=U1-0, outs=('applied', 'loss'), ... loss_ratio=0.02) >>> sys = System('sys', path=(U1, CA)) >>> sys.simulate() >>> round(CA.outs[1].F_mass / U1.outs[0].F_mass, 3) # fraction lost 0.02
See bwaise systems for use in a complete sanitation system.
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.
- line: str = 'Crop application'¶
class-attribute Name denoting the type of Unit class. Defaults to the class name of the first child class
- property loss_ratio¶
[float] or [dict] Fractions of material losses during application. If a single number is provided, then it is assumed that losses of all Components in the WasteStream are the same.
Note
Set state variable values (e.g., COD) will be retained if the loss ratio is a single number (treated like the loss stream is split from the original stream), but not when the ratio is a dict.
- 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