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

A derived "splitter" class with a blinded sidestream. More...

Inheritance diagram for PooPyLab.unit_procs.streams.pipe:
PooPyLab.unit_procs.streams.splitter PooPyLab.unit_procs.base.poopy_lab_obj PooPyLab.unit_procs.bio.asm_reactor PooPyLab.unit_procs.streams.effluent PooPyLab.unit_procs.streams.influent PooPyLab.unit_procs.streams.WAS

Public Member Functions

def __init__ (self)
 A few special steps are taken when initializing a "pipe": More...
 
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 discharge (self)
 Pass the total flow and blended components to the downstreams. 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
 
 _has_sidestream
 
 _in_flow_ds
 
 _mo_flow_ds
 
 _so_flow_ds
 
 _so_flow_defined
 
 _mo_comps
 
 _so_comps
 
 _mo_flow
 
 _total_inflow
 

Static Private Attributes

int __id
 

Detailed Description

A derived "splitter" class with a blinded sidestream.

No biochemical reactions are modelled in the pipe class. A pipe is only used to connect process units.

A pipe can have multiple upstream dischargers but only one downstream (main) receiver.

Constructor & Destructor Documentation

◆ __init__()

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

A few special steps are taken when initializing a "pipe":

       1) Its sidestream is connected to None, with the sidestream flow is
       fixed at 0 m3/d, and the _so_flow_defined set to True;

       2) Its _has_sidestream flag is fixed to False;

       3) Its sidestream flow data source (_so_flow_ds) is set to
flow_data_src.PRG;

Reimplemented from PooPyLab.unit_procs.streams.splitter.

Reimplemented in PooPyLab.unit_procs.streams.WAS, PooPyLab.unit_procs.streams.effluent, and PooPyLab.unit_procs.streams.influent.

Member Function Documentation

◆ _branch_flow_helper()

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

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

   For a "pipe", the sidestream flow is set to 0 m3/d. The mainstream
   outlet flow always equals to the total inlet flow.

Reimplemented from PooPyLab.unit_procs.streams.splitter.

Reimplemented in PooPyLab.unit_procs.streams.effluent, and PooPyLab.unit_procs.streams.influent.

◆ set_downstream_side()

def PooPyLab.unit_procs.streams.pipe.set_downstream_side (   self,
  receiver 
)

Define the downstream side outlet's connection.

   A "pipe" has no sidestream (set to "None"). This function is
   essentially by-passed with a warning message if called.

Reimplemented from PooPyLab.unit_procs.streams.splitter.

◆ set_sidestream_flow()

def PooPyLab.unit_procs.streams.pipe.set_sidestream_flow (   self,
  flow 
)

Define the flow rate for the sidestream.

   This function is bypassed for a "pipe" whose sidestream is set to
   "None" and sidestream flow 0 m3/d. A warning message is displayed if
   called.

Reimplemented from PooPyLab.unit_procs.streams.splitter.


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