11 #ifndef HEADLOSSMODEL_H_ 12 #define HEADLOSSMODEL_H_ 39 static void addCVHeadLoss(
double flow,
double& headLoss,
double& gradient);
43 virtual void setResistance(
Pipe* pipe) = 0;
47 Pipe* pipe,
double flow,
double& headLoss,
double& gradient) = 0;
63 void setResistance(
Pipe* pipe);
64 void findHeadLoss(
Pipe* pipe,
double flow,
double& headLoss,
double& gradient);
77 void setResistance(
Pipe* pipe);
78 void findHeadLoss(
Pipe* pipe,
double flow,
double& headLoss,
double& gradient);
91 void setResistance(
Pipe* pipe);
92 void findHeadLoss(
Pipe* pipe,
double flow,
double& headLoss,
double& gradient);
HeadLossModel(double viscos)
Constructor/destructor.
Definition: headlossmodel.cpp:49
static void findClosedHeadLoss(double flow, double &headLoss, double &gradient)
Static methods for closed links & links with check valves.
Definition: headlossmodel.cpp:71
double viscosity
water viscosity (ft2/sec)
Definition: headlossmodel.h:50
static HeadLossModel * factory(const std::string model, double viscos)
Factory method for creating a headloss model.
Definition: headlossmodel.cpp:61
A circular conduit Link through which water flows.
Definition: pipe.h:23
The Chezy-Manning head loss model.
Definition: headlossmodel.h:87
void setViscosity(double v)
Methods that set model parameters.
Definition: headlossmodel.h:42
The Darcy-Weisbach head loss model.
Definition: headlossmodel.h:73
The Hazen-Williams head loss model.
Definition: headlossmodel.h:59
virtual void findHeadLoss(Pipe *pipe, double flow, double &headLoss, double &gradient)=0
Method that finds a link's head loss and its gradient.
The interface for a pipe head loss model.
Definition: headlossmodel.h:26