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
MotorEfficiency.h
1#pragma once
2
13#include <array>
14#include <exception>
15#include <stdexcept>
16
17#include "MotorData.h"
18
20 public:
28 MotorEfficiency(Motor::LineFrequency lineFrequency, double motorRpm, Motor::EfficiencyClass efficiencyClass,
29 double motorRatedPower)
30 : lineFrequency(lineFrequency), motorRpm(motorRpm), efficiencyClass(efficiencyClass),
31 motorRatedPower(motorRatedPower) {};
32
39 double calculate(double loadFactor, double specifiedEfficiency = -1);
40
45 std::array<double, 5> calculate25intervals();
46
51 Motor::LineFrequency getLineFrequency() const { return lineFrequency; }
52
57 void setLineFrequency(Motor::LineFrequency lineFrequency) { this->lineFrequency = lineFrequency; }
58
63 double getMotorRpm() const { return motorRpm; }
64
69 void setMotorRpm(double motorRpm) { this->motorRpm = motorRpm; }
70
75 Motor::EfficiencyClass getEfficiencyClass() const { return efficiencyClass; }
76
81 void setEfficiencyClass(Motor::EfficiencyClass efficiencyClass) { this->efficiencyClass = efficiencyClass; }
82
87 double getHp() const { return hp; }
88
93 void setHp(double hp) { this->hp = hp; }
94
99 double getMotorKwh() const { return motorKwh; }
100
105 void setMotorKwh(double motorKwh) { this->motorKwh = motorKwh; }
106
111 double getMotorAmps() const { return motorAmps; }
112
117 void setMotorAmps(double motorAmps) { this->motorAmps = motorAmps; }
118
123 double getActualEfficiency() const { return actualEfficiency; }
124
129 void setActualEfficiency(double actualEfficiency) { this->actualEfficiency = actualEfficiency; }
130
135 double getKWloss0() const { return kWloss0; }
136
137 private:
138 const std::array<std::array<double, 4>, 5> determinePartialLoadCoefficients(std::size_t pole) const;
139
140 Motor::LineFrequency lineFrequency;
141 double motorEff = 0.0;
142 double motorRpm;
143 Motor::EfficiencyClass efficiencyClass;
144 double hp;
145 double motorKwh;
146 double motorAmps;
147 double kWloss0 = 0.0;
148 double actualEfficiency;
149 double motorRatedPower;
150};
151
Contains the declaration of MotorEfficiency class including the getters and setters as well as the ca...
MotorEfficiency(Motor::LineFrequency lineFrequency, double motorRpm, Motor::EfficiencyClass efficiencyClass, double motorRatedPower)
void setEfficiencyClass(Motor::EfficiencyClass efficiencyClass)
void setMotorRpm(double motorRpm)
Motor::LineFrequency getLineFrequency() const
std::array< double, 5 > calculate25intervals()
double getKWloss0() const
void setHp(double hp)
double getMotorKwh() const
void setActualEfficiency(double actualEfficiency)
double getMotorAmps() const
void setLineFrequency(Motor::LineFrequency lineFrequency)
Motor::EfficiencyClass getEfficiencyClass() const
double getHp() const
void setMotorKwh(double motorKwh)
double getMotorRpm() const
void setMotorAmps(double motorAmps)
double calculate(double loadFactor, double specifiedEfficiency=-1)
double getActualEfficiency() const