Abstract BST Units

Note

These units are for process simulation only and do not have design and cost algorithms.

QSDsan: Quantitative Sustainable Design for sanitation and resource recovery systems

This module is developed by:

Part of this module is based on the biosteam package: https://github.com/BioSTEAMDevelopmentGroup/biosteam

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.bst._abstract.FakeSplitter(ID='', ins: Sequence[AbstractStream] | None = None, outs: Sequence[AbstractStream] | None = (), thermo=None, init_with='WasteStream', include_construction=True, construction=[], transportation=[], equipment=[], add_OPEX={}, uptime_ratio=1.0, lifetime=None, F_BM_default=None, isdynamic=False, exogenous_vars=(), **kwargs)

Similar to biosteam.units.FakeSplitter, but can be initialized with qsdsan.SanStream and qsdsan.WasteStream.

line: str = 'Fake splitter'

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

class qsdsan.unit_operations.bst._abstract.Mixer(ID='', ins: Sequence[AbstractStream] | None = None, outs: Sequence[AbstractStream] | None = (), thermo=None, init_with='WasteStream', F_BM_default=None, isdynamic=False, rigorous=False, conserve_phases=False)

Similar to biosteam.units.Mixer, but can be initialized with qsdsan.SanStream and qsdsan.WasteStream, and allows dynamic simulation.

line: str = 'Mixer'

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 state

The state of the Mixer, including component concentrations [mg/L] and flow rate [m^3/d].

class qsdsan.unit_operations.bst._abstract.ReversedSplitter(ID='', ins: Sequence[AbstractStream] | None = None, outs: Sequence[AbstractStream] | None = (), thermo=None, init_with='WasteStream', include_construction=True, construction=[], transportation=[], equipment=[], add_OPEX={}, uptime_ratio=1.0, lifetime=None, F_BM_default=None, isdynamic=False, exogenous_vars=(), **kwargs)

Similar to biosteam.units.ReversedSplitter, but can be initialized with qsdsan.SanStream and qsdsan.WasteStream.

line: str = 'Reversed splitter'

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

class qsdsan.unit_operations.bst._abstract.Splitter(ID='', ins: Sequence[AbstractStream] | None = None, outs: Sequence[AbstractStream] | None = (), thermo=None, *, split, order=None, init_with='WasteStream', F_BM_default=None, isdynamic=False)

Similar to biosteam.units.Splitter, but can be initialized with qsdsan.SanStream and qsdsan.WasteStream, and allows dynamic simulation.

line: str = 'Splitter'

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 state

Component concentrations and total flow rate.