-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathProj2_Pipe_Segment_Team59.py
More file actions
34 lines (29 loc) · 1.19 KB
/
Proj2_Pipe_Segment_Team59.py
File metadata and controls
34 lines (29 loc) · 1.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File Name: <Pipe_Segment.py>
# Date: <11/6/25>
# By: <Andrew Lullo>
# <lullo>
# Section: <4>
# Team: <59>
from Proj2EnergyFunctions import *
from Slurry import Slurry
GRAVITY = 9.81
class Segment():
def __init__(self, diameter, length, heightChange, frictFact, valveCoeffOut, valveCoeffIn, bendFact1, bendFact2):
self.dia = diameter
self.rad = self.dia / 2
self.len = length
self.deltaH = heightChange
self.frictFact = frictFact
self.valveCoeff1 = valveCoeffOut
self.valveCoeff2 = valveCoeffIn
self.bendFact1 = bendFact1
self.bendFact2 = bendFact2
self.energyLoss = 0
def segLoss(self, slurryIn):
self.energyLoss += slurryIn.getDensity() * slurryIn.getVolFlowRate() * GRAVITY * self.deltaH
self.energyLoss += valveLoss(slurryIn, self.valveCoeff1, self.rad)
self.energyLoss += bendLoss(slurryIn, self.bendFact1, self.rad)
self.energyLoss += bendLoss(slurryIn, self.bendFact2, self.rad)
self.energyLoss += pipeFriction(slurryIn, self.frictFact, self.len, self.dia)
self.energyLoss += valveLoss(slurryIn, self.valveCoeff2, self.rad)
return self.energyLoss