MEASUR-Tools-Suite v1.0.11
The MEASUR Tools Suite is a collection of industrial efficiency calculations written in C++ and with bindings for compilation to WebAssembly.
Loading...
Searching...
No Matches
FanResult.h
Go to the documentation of this file.
1
14#ifndef TOOLS_SUITE_FANRESULT_H
15#define TOOLS_SUITE_FANRESULT_H
16
18
19namespace Fan {
20struct Input {
21 Input(const double fanSpeed, const double airDensity, const Motor::Drive drive, double specifiedEfficiency)
22 : fanSpeed(fanSpeed), airDensity(airDensity), drive(drive), specifiedEfficiency(specifiedEfficiency) {}
23
24 double fanSpeed, airDensity;
25 Motor::Drive drive;
26 double specifiedEfficiency;
27};
28
39 FieldDataModified(const double measuredVoltage, const double measuredAmps, const double flowRate,
40 const double inletPressure, const double outletPressure, const double compressibilityFactor,
41 const double velocityPressure)
42 : measuredVoltage(measuredVoltage), measuredAmps(measuredAmps), flowRate(flowRate),
43 inletPressure(inletPressure), outletPressure(outletPressure), compressibilityFactor(compressibilityFactor),
44 velocityPressure(velocityPressure) {}
45
46 double measuredVoltage, measuredAmps, flowRate, inletPressure, outletPressure, compressibilityFactor,
47 velocityPressure;
48};
49
62 FieldDataBaseline(const double measuredPower, const double measuredVoltage, const double measuredAmps,
63 const double flowRate, const double inletPressure, const double outletPressure,
64 const double compressibilityFactor, Motor::LoadEstimationMethod loadEstimationMethod,
65 const double velocityPressure)
66 : FieldDataModified(measuredVoltage, measuredAmps, flowRate, inletPressure, outletPressure,
67 compressibilityFactor, velocityPressure),
68 measuredPower(measuredPower), loadEstimationMethod(loadEstimationMethod) {}
69
70 double measuredPower;
71 Motor::LoadEstimationMethod loadEstimationMethod;
72};
73} // namespace Fan
74
75class FanResult {
76 public:
77 struct Output {
78 Output(double fanEfficiency, const double motorRatedPower, const double motorShaftPower,
79 const double fanShaftPower, double motorEfficiency, double motorPowerFactor, const double motorCurrent,
80 const double motorPower, const double annualEnergy, double annualCost, const double fanEnergyIndex,
81 const double loadFactor, double driveEfficiency, const double estimatedFLA = 0)
82 : fanEfficiency(fanEfficiency), motorRatedPower(motorRatedPower), motorShaftPower(motorShaftPower),
83 fanShaftPower(fanShaftPower), motorEfficiency(motorEfficiency), motorPowerFactor(motorPowerFactor),
84 motorCurrent(motorCurrent), motorPower(motorPower), annualEnergy(annualEnergy), annualCost(annualCost),
85 fanEnergyIndex(fanEnergyIndex), loadFactor(loadFactor), driveEfficiency(driveEfficiency),
86 estimatedFLA(estimatedFLA) {}
87
88 Output(const MotorShaftPower::Output output, double fanEfficiency, const double motorRatedPower,
89 const double fanShaftPower, const double annualEnergy, double annualCost, const double fanEnergyIndex,
90 const double loadFactor, double driveEfficiency, const double estimatedFLA = 0)
91 : fanEfficiency(fanEfficiency), motorRatedPower(motorRatedPower), motorShaftPower(output.shaftPower),
92 fanShaftPower(fanShaftPower), motorEfficiency(output.efficiency), motorPowerFactor(output.powerFactor),
93 motorCurrent(output.current), motorPower(output.power), annualEnergy(annualEnergy),
94 annualCost(annualCost), fanEnergyIndex(fanEnergyIndex), loadFactor(loadFactor),
95 driveEfficiency(driveEfficiency), estimatedFLA(estimatedFLA) {}
96
97 double fanEfficiency;
98 const double motorRatedPower, motorShaftPower, fanShaftPower;
99 double motorEfficiency, motorPowerFactor;
100 const double motorCurrent, motorPower, annualEnergy;
101 double annualCost;
102 const double fanEnergyIndex, loadFactor;
103 double driveEfficiency;
104 const double estimatedFLA;
105
106 // double fanEfficiency, motorEfficiency, motorPowerFactor;
107 // const double motorRatedPower, motorShaftPower, fanShaftPower, motorCurrent;
108 // const double motorPower, annualEnergy, annualCost, fanEnergyIndex;
109 // const double loadFactor, driveEfficiency, estimatedFLA;
110 };
111
112 FanResult(Fan::Input fanInput, Motor motor, double operatingHours, double unitCost)
113 : fanInput(fanInput), motor(motor), operatingHours(operatingHours), unitCost(unitCost) {}
114
120
126 Output calculateModified(Fan::FieldDataModified const fanFieldData, double fanEfficiency);
127
128 private:
129 double annualSavingsPotential = 0;
130 double optimizationRating = 0;
131 // In values
132 Fan::Input fanInput;
133 Motor motor;
134 double operatingHours, unitCost;
135};
136
137#endif // TOOLS_SUITE_FANRESULT_H
MotorShaftPower class This contains the prototypes for the MotorShaftPower.
Output calculateModified(Fan::FieldDataModified const fanFieldData, double fanEfficiency)
Output calculateExisting(Fan::FieldDataBaseline const fanFieldData)
FieldDataBaseline(const double measuredPower, const double measuredVoltage, const double measuredAmps, const double flowRate, const double inletPressure, const double outletPressure, const double compressibilityFactor, Motor::LoadEstimationMethod loadEstimationMethod, const double velocityPressure)
Definition FanResult.h:62
FieldDataModified(const double measuredVoltage, const double measuredAmps, const double flowRate, const double inletPressure, const double outletPressure, const double compressibilityFactor, const double velocityPressure)
Definition FanResult.h:39