The Brown Book
Documentation for the PooPyLab project
PooPyLab.unit_procs.streams.effluent Class Reference

A derived "pipe" class whose main outlet is "None". More...

Inheritance diagram for PooPyLab.unit_procs.streams.effluent:
PooPyLab.unit_procs.streams.pipe PooPyLab.unit_procs.streams.splitter PooPyLab.unit_procs.base.poopy_lab_obj

Public Member Functions

def __init__ (self)
 Special initialization for the "effluent". More...
 
def discharge (self)
 Pass the total flow and blended components to the downstreams. More...
 
- Public Member Functions inherited from PooPyLab.unit_procs.streams.pipe
def set_downstream_side (self, receiver)
 Define the downstream side outlet's connection. More...
 
def set_sidestream_flow (self, flow)
 Define the flow rate for the sidestream. More...
 
- Public Member Functions inherited from PooPyLab.unit_procs.streams.splitter
def set_flow_data_src (self, branch='Main', flow_ds=flow_data_src.TBD)
 Set the flow data source of the branch specified by the user. More...
 
def get_flow_data_src (self)
 Return the flow data source tags of all three branches.
 
def assign_initial_guess (self, init_guess_lst)
 Assign the intial guess to the unit before simulation. More...
 
def is_converged (self, limit=1E-6)
 Return the convergence status of the unit. More...
 
def get_type (self)
 Return the type string of the process unit. More...
 
def has_sidestream (self)
 Return whether the unit has a sidestream. More...
 
def add_upstream (self, discharger, upst_branch='Main')
 Add the discharger's branch to inlet. More...
 
def has_discharger (self)
 Return whether the unit's inlet has been connected. More...
 
def get_upstream (self)
 Return the _inlet {} of the unit. More...
 
def totalize_inflow (self)
 Combine the individual flows specified in the self._inlet into one. More...
 
def blend_inlet_comps (self)
 Calculate the flow weighted average model component concentrations. More...
 
def update_combined_input (self)
 Update both total inflow and blended concentrations (model components).
 
def remove_upstream (self, discharger)
 Remove an existing discharger from inlet. More...
 
def set_downstream_main (self, rcvr)
 Define the main outlet by specifying the receiving process unit.
 
def main_outlet_connected (self)
 Return whether the mainstream outlet is connected. More...
 
def get_downstream_main (self)
 Return the process unit connected at the mainstream outlet. More...
 
def set_mainstream_flow_by_upstream (self, f=True)
 Set whether the mainstream flow = (total inflow - side outflow).
 
def set_mainstream_flow (self, flow=0)
 Define the mainstream outlet flow. More...
 
def get_main_outflow (self)
 Return the mainstream outflow. More...
 
def get_main_outlet_concs (self)
 Return a copy of the mainstream outlet concentrations. More...
 
def side_outlet_connected (self)
 Return True if the main outlet is connected, False if not. More...
 
def get_downstream_side (self)
 Return the process unit connected to the side outlet. More...
 
def sidestream_flow_defined (self)
 Return whether the sidestream flow rate has been defined. More...
 
def get_side_outflow (self)
 Return the sidestream outlet flow rate. More...
 
def get_side_outlet_concs (self)
 Return a copy of the sidestream outlet concentrations. More...
 
def set_flow (self, dschgr, flow)
 Specify the flow from the discharger. More...
 
def get_TSS (self, br='Main')
 Return the Total Suspended Solids of the specified branch.
 
def get_VSS (self, br='Main')
 Return the Volatile Suspended Solids of the specified branch.
 
def get_COD (self, br='Main')
 Return the Chemical Oxygen Demand (total) of the specified branch.
 
def get_sCOD (self, br='Main')
 Return the soluble COD of the specified branch.
 
def get_pCOD (self, br='Main')
 Return the particultate COD of the specified branch.
 
def get_TN (self, br='Main')
 Return the total nitrogen of the specified branch. More...
 
def get_orgN (self, br='Main')
 Return the organic nitrogen of the specified branch.
 
def get_inorgN (self, br='Main')
 Return the inorganic nitrogen of the specified branch.
 
def get_pN (self, br='Main')
 Return the particulate nitrogen of the specified branch.
 
def get_sN (self, br='Main')
 Return the soluble nitrogen of the specified branch.
 
def set_as_SRT_controller (self, setting=False)
 Set the current splitter as an Solids Retention Time controller. More...
 
def is_SRT_controller (self)
 Return whether a splitter is an SRT controller.
 

Private Member Functions

def _branch_flow_helper (self)
 Calculate 1 of the 3 branches' flow based on the other 2. More...
 

Private Attributes

 __name__
 
 _type
 
 _in_flow_ds
 
 _mo_flow_ds
 
 _so_flow_ds
 
 _mo_connected
 
 _mo_flow
 
 _prev_mo_comps
 
 _prev_so_comps
 
 _mo_comps
 
 _so_comps
 

Static Private Attributes

int __id
 

Detailed Description

A derived "pipe" class whose main outlet is "None".

The "effluent" class is another form of a "pipe". It differs from the "pipe" class with its outlet being "None".

Constructor & Destructor Documentation

◆ __init__()

def PooPyLab.unit_procs.streams.effluent.__init__ (   self)

Special initialization for the "effluent".

Reason
   1) Mainstream outlet is "None".

Reimplemented from PooPyLab.unit_procs.streams.pipe.

Member Function Documentation

◆ _branch_flow_helper()

def PooPyLab.unit_procs.streams.effluent._branch_flow_helper (   self)
private

Calculate 1 of the 3 branches' flow based on the other 2.

   This function is re-implemented for "effluent" because the actual
   effluent flow rate of a WWTP has to do with its waste sludge flow (WAS
   flow). The WAS flow is set during simulation by PooPyLab. As a result,
   the effluent flow rate is the balance of the plant influent flow and
   WAS flow.

   Occasionally, there may be a WWTP without dedicated WAS unit when the
   effluent flow rate equals to that of the influent.

Reimplemented from PooPyLab.unit_procs.streams.pipe.

◆ discharge()

def PooPyLab.unit_procs.streams.effluent.discharge (   self)

Pass the total flow and blended components to the downstreams.

   This function is re-implemented for "effluent" because there is no
   further downstream units on either the main or side outlet.

Reimplemented from PooPyLab.unit_procs.streams.splitter.


The documentation for this class was generated from the following file: