AMO-Tools-Suite  v.0.9.0
Set of tools for calculating energy efficiency in industrial equipment
All Classes Namespaces Files Functions Variables Enumerations Friends Macros Pages
Classes | Protected Member Functions | Protected Attributes | List of all members
HeadToolBase Class Referenceabstract

Contains the entire hierarchy of the HeadTool classes. calculate(): Calculates the operating pump head. More...

#include <HeadTool.h>

Inheritance diagram for HeadToolBase:
HeadTool HeadTool HeadTool HeadToolSuctionTank HeadToolSuctionTank HeadToolSuctionTank

Classes

struct  Output
 

Protected Member Functions

 HeadToolBase (const double specificGravity, const double flowRate, const double suctionPipeDiameter, const double suctionLineLossCoefficients, const double dischargePipeDiameter, const double dischargeGaugePressure, const double dischargeGaugeElevation, const double dischargeLineLossCoefficients)
 
virtual HeadToolBase::Output calculate ()=0
 
double velocity (double diameter, double flow)
 Contains the implementations of the HeadTool hierarchy methods. calculate(): Calculates the operating pump head. More...
 
double velocityHead (double velocity, double gravity)
 
 HeadToolBase (const double specificGravity, const double flowRate, const double suctionPipeDiameter, const double suctionLineLossCoefficients, const double dischargePipeDiameter, const double dischargeGaugePressure, const double dischargeGaugeElevation, const double dischargeLineLossCoefficients)
 
virtual HeadToolBase::Output calculate ()=0
 
double velocity (double diameter, double flow)
 
double velocityHead (double velocity, double gravity)
 
 HeadToolBase (const double specificGravity, const double flowRate, const double suctionPipeDiameter, const double suctionLineLossCoefficients, const double dischargePipeDiameter, const double dischargeGaugePressure, const double dischargeGaugeElevation, const double dischargeLineLossCoefficients)
 
virtual HeadToolBase::Output calculate ()=0
 
double velocity (double diameter, double flow)
 
double velocityHead (double velocity, double gravity)
 

Protected Attributes

const double specificGravity
 specific gravity - unitless
 
const double flowRate
 flow rate in gpm
 
const double suctionPipeDiameter
 suction pipe diameter in inches
 
const double suctionLineLossCoefficients
 suction line loss coefficient - unitless
 
const double dischargePipeDiameter
 discharge pipe diameter in inches
 
const double dischargeGaugePressure
 discharge gauge pressure in psi
 
const double dischargeGaugeElevation
 discharge gauge elevation in ft
 
const double dischargeLineLossCoefficients
 discharge line loss coefficients - unitless
 
const double gravity = 32.1740
 gravity constant
 
const double PI = 3.141592653589793238463
 value of Pi
 

Detailed Description

Contains the entire hierarchy of the HeadTool classes. calculate(): Calculates the operating pump head.

Author
Preston Shires (pshires)

Head Tool Base class Contains all of the basic properties of a head tool. Used to calculate velocity and velocity head so those values can be used in the HeadToolSuctionTank class or HeadTool class to calculate all of the values in the returned map.

Author
Preston Shires (pshires)

Head Tool Base class Contains all of the basic properties of a head tool. Used to calculate velocity and velocity head so those values can be used in the HeadToolSuctionTank class or HeadTool class to calculate all of the values in the returned map.

Author
Preston Shires (pshires)

Head Tool Base class Contains all of the basic properties of a head tool. Used to calculate velocity and velocity head so those values can be used in the HeadToolSuctionTank class or HeadTool class to calculate all of the values in the returned map.

Definition at line 20 of file HeadTool.h.

Constructor & Destructor Documentation

◆ HeadToolBase() [1/3]

HeadToolBase::HeadToolBase ( const double  specificGravity,
const double  flowRate,
const double  suctionPipeDiameter,
const double  suctionLineLossCoefficients,
const double  dischargePipeDiameter,
const double  dischargeGaugePressure,
const double  dischargeGaugeElevation,
const double  dischargeLineLossCoefficients 
)
inlineprotected

Constructor for the abstract HeadToolBase class with all inputs specified

Parameters
specificGravitydouble, specific gravity - unitless
flowRatedouble, flow rate in gpm (gallons per minute)
suctionPipeDiameterdouble, diameter of suction pipe in inches
suctionLineLossCoefficientsdouble, suction line loss coefficient - unitless
dischargePipeDiameterdouble, diameter of discharge pipe in inches
dischargeGaugePressuredouble, gauge pressure of discharge in psig (pounds per square inch gauge)
dischargeGaugeElevationdouble, gauge elevation of discharge in feet
dischargeLineLossCoefficientsdouble, line loss coefficients of discharge - unitless

Definition at line 45 of file HeadTool.h.

◆ HeadToolBase() [2/3]

HeadToolBase::HeadToolBase ( const double  specificGravity,
const double  flowRate,
const double  suctionPipeDiameter,
const double  suctionLineLossCoefficients,
const double  dischargePipeDiameter,
const double  dischargeGaugePressure,
const double  dischargeGaugeElevation,
const double  dischargeLineLossCoefficients 
)
inlineprotected

Constructor for the abstract HeadToolBase class with all inputs specified

Parameters
specificGravitydouble, specific gravity - unitless
flowRatedouble, flow rate in gpm (gallons per minute)
suctionPipeDiameterdouble, diameter of suction pipe in inches
suctionLineLossCoefficientsdouble, suction line loss coefficient - unitless
dischargePipeDiameterdouble, diameter of discharge pipe in inches
dischargeGaugePressuredouble, gauge pressure of discharge in psig (pounds per square inch gauge)
dischargeGaugeElevationdouble, gauge elevation of discharge in feet
dischargeLineLossCoefficientsdouble, line loss coefficients of discharge - unitless

Definition at line 45 of file HeadTool.h.

◆ HeadToolBase() [3/3]

HeadToolBase::HeadToolBase ( const double  specificGravity,
const double  flowRate,
const double  suctionPipeDiameter,
const double  suctionLineLossCoefficients,
const double  dischargePipeDiameter,
const double  dischargeGaugePressure,
const double  dischargeGaugeElevation,
const double  dischargeLineLossCoefficients 
)
inlineprotected

Constructor for the abstract HeadToolBase class with all inputs specified

Parameters
specificGravitydouble, specific gravity - unitless
flowRatedouble, flow rate in gpm (gallons per minute)
suctionPipeDiameterdouble, diameter of suction pipe in inches
suctionLineLossCoefficientsdouble, suction line loss coefficient - unitless
dischargePipeDiameterdouble, diameter of discharge pipe in inches
dischargeGaugePressuredouble, gauge pressure of discharge in psig (pounds per square inch gauge)
dischargeGaugeElevationdouble, gauge elevation of discharge in feet
dischargeLineLossCoefficientsdouble, line loss coefficients of discharge - unitless

Definition at line 45 of file HeadTool.h.

Member Function Documentation

◆ calculate() [1/3]

virtual HeadToolBase::Output HeadToolBase::calculate ( )
protectedpure virtual

Calculates the operating pump head

Returns
unordered map with all its values calculated

Implemented in HeadTool, HeadTool, HeadTool, HeadToolSuctionTank, HeadToolSuctionTank, and HeadToolSuctionTank.

◆ calculate() [2/3]

virtual HeadToolBase::Output HeadToolBase::calculate ( )
protectedpure virtual

Calculates the operating pump head

Returns
unordered map with all its values calculated

Implemented in HeadTool, HeadTool, HeadTool, HeadToolSuctionTank, HeadToolSuctionTank, and HeadToolSuctionTank.

◆ calculate() [3/3]

virtual HeadToolBase::Output HeadToolBase::calculate ( )
protectedpure virtual

Calculates the operating pump head

Returns
unordered map with all its values calculated

Implemented in HeadTool, HeadTool, HeadTool, HeadToolSuctionTank, HeadToolSuctionTank, and HeadToolSuctionTank.

◆ velocity() [1/3]

double HeadToolBase::velocity ( double  diameter,
double  flow 
)
protected

Contains the implementations of the HeadTool hierarchy methods. calculate(): Calculates the operating pump head.

Calculates the velocity

Parameters
diameterconst double, diameter in inches
flowconst double, flow rate in gpm
Returns
double, velocity in ft/s
Author
Preston Shires (pshires)

Definition at line 12 of file HeadTool.cpp.

◆ velocity() [2/3]

double HeadToolBase::velocity ( double  diameter,
double  flow 
)
protected

Calculates the velocity

Parameters
diameterconst double, diameter in inches
flowconst double, flow rate in gpm
Returns
double, velocity in ft/s

◆ velocity() [3/3]

double HeadToolBase::velocity ( double  diameter,
double  flow 
)
protected

Calculates the velocity

Parameters
diameterconst double, diameter in inches
flowconst double, flow rate in gpm
Returns
double, velocity in ft/s

◆ velocityHead() [1/3]

double HeadToolBase::velocityHead ( double  velocity,
double  gravity 
)
protected

Calculates the velocity head

Parameters
velocityconst double, velocity in ft/s
gravityconst double, gravity in ft/s^2

Definition at line 16 of file HeadTool.cpp.

◆ velocityHead() [2/3]

double HeadToolBase::velocityHead ( double  velocity,
double  gravity 
)
protected

Calculates the velocity head

Parameters
velocityconst double, velocity in ft/s
gravityconst double, gravity in ft/s^2

◆ velocityHead() [3/3]

double HeadToolBase::velocityHead ( double  velocity,
double  gravity 
)
protected

Calculates the velocity head

Parameters
velocityconst double, velocity in ft/s
gravityconst double, gravity in ft/s^2

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