## 5 Case Study
### Sewage System Calculation
(3) Verification: after the second step, two messages may be displayed. On the one hand, if issues (such as non-compliance with minimum and maximum slopes) are identified, a message is presented to the user requesting manual correction. On the other hand, if there are no issues to correct, a message stating \"no issues\" is displayed. The objects or pipes assigned to each plumbing fixture extracted in the previous nodes are separated into sub-lists, in which each waste flow value is assigned according to sub-list indexes. The pipe positioning determines whether a single element is included in several different-sub lists and received discharges or waste flow from multiple fixtures. This allows the detection and determination, using summary functions, of the total discharge units for each pipe according to their repeated display in sub-lists and their HEU values. The obtained values are loaded into the element parameters of each pipeline. This is  
Figure 13: Presentation of the final results in standard layout format. achieved by indicating the element instance, the parameter name and the new values. In addition, tagging pipe elements and calculating HEU values also provides relevant code-referenced information. This allows differentiation between pipes that contain streams from a single or multiple artefacts, called \"secondary pipelines\" and \"primary pipelines\", respectively (RIDAA). This procedure can also be applied in order to identify ventilation system elements (Figure 13, script 8), where the flow value must be equal to zero because they do not have any relationship with any fixture upstream of their components, as shown in Figure 15.  
Figure 14: Processes for sewage system verification organised into three steps: (**1**) BIM modelling, (**2**) parametric programming and (**3**) verification. All the scripts are presented in the Appendix A.  
Figure 15: Household drainage network layout in a single-family house. Regular design codes for house sewage systems describe a verification-based methodology for network calculation. This involves establishing limits or variation ranges for design parameters, such as diameters, slopes, fitting angles, elevation and HEUs. This approach enables alignment for validation tests through database integration directly into the Dynamo workflow, without requiring external software connections or data transfer. Each verification table is referenced and explained in code documents for sewage calculations, including its application form and limitations. Tables are changed into Dynamo nodes as a list, following the exact order shown in the code documents. These tables are organised after collecting all element parameters and associating and grouping geometry parameters, flow values and slopes into separated lists. They are then linked to verification tables through logic algorithms. The first verification ensures no diameter reduction between any plumbing fixture and its downstream discharges. Workflow criteria assume that the minimum discharge diameter of every fixture is uploaded as an element parameter, has been previously read and is stored in sub-lists. Piping elements from each fixture are uploaded and sorted according to the downstream flow into a list connected to a node that reads internal element diameters. The information obtained is compared with the minimum fixture discharge diameter and loaded into element parameters according to system routing and conditions (Figure 13, script 9). The second verification requires all the information previously calculated and uploaded as element parameters. Where geometric pipe parameters are matched with their corresponding axes within verification tables, diameters and slopes are identified and compared in the tables' rows and columns to obtain the maximum HEU value for each pipe. These tabulated values are also distinguished in terms of primary and secondary pipelines, indicating whether it is necessary to modify segment parameters. Such modifications must be performed by editing parameters manually.