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
PowerFactor.h
1
25#ifndef TOOLS_SUITE_POWERFACTOR_H
26#define TOOLS_SUITE_POWERFACTOR_H
27
28#include <cmath>
29
31 public:
32 enum Mode {
33 ApparentPower_RealPower,
34 ApparentPower_ReactivePower,
35 ApparentPower_PhaseAngle,
36 ApparentPower_PowerFactor,
37 RealPower_ReactivePower,
38 RealPower_PhaseAngle,
39 RealPower_PowerFactor,
40 ReactivePower_PhaseAngle,
41 ReactivePower_PowerFactor,
42 };
43 struct Output {
44 Output(double realPower, double reactivePower, double apparentPower, double powerFactor, double phaseAngle,
45 double realDemand, double demandPenalty, double proposedReactivePower, double proposedCapacitance)
46 : realPower(realPower), reactivePower(reactivePower), apparentPower(apparentPower),
47 powerFactor(powerFactor), phaseAngle(phaseAngle), realDemand(realDemand), demandPenalty(demandPenalty),
48 proposedReactivePower(proposedReactivePower), proposedCapacitance(proposedCapacitance) {}
49
50 Output() = default;
51 double realPower = 0, reactivePower = 0, apparentPower = 0, powerFactor = 0, phaseAngle = 0, realDemand = 0,
52 demandPenalty = 0, proposedReactivePower = 0, proposedCapacitance = 0;
53 };
54
58 PowerFactor() = default;
59
85 Output calculate(Mode mode, double input1, double input2, double inputPowerFactor = 0.95);
86
87 private:
88 double realPower = 0, reactivePower = 0, apparentPower = 0, powerFactor = 0, phaseAngle = 0;
89};
90
91#endif // TOOLS_SUITE_POWERFACTOR_H
Output calculate(Mode mode, double input1, double input2, double inputPowerFactor=0.95)
PowerFactor()=default