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
PneumaticValve.h
Go to the documentation of this file.
1#pragma once
2
12#include <cmath>
13#include <functional>
14#include <stdexcept>
15#include <vector>
16
18 public:
24 PneumaticValve(double inletPressure, double outletPressure)
25 : inletPressure(inletPressure), outletPressure(outletPressure),
26 flowRate(0.6875 * std::sqrt(inletPressure - outletPressure) * std::sqrt(inletPressure + outletPressure)),
27 flowRateKnown(false) {}
28
35 PneumaticValve(double inletPressure, double outletPressure, double flowRate)
36 : inletPressure(inletPressure), outletPressure(outletPressure), flowRate(flowRate), flowRateKnown(true) {}
37
41 double calculate() {
42 if (!flowRateKnown) {
43 return flowRate;
44 }
45 return flowRate /
46 (0.6875 * std::sqrt(inletPressure - outletPressure) * std::sqrt(inletPressure + outletPressure));
47 }
48
49 private:
50 double inletPressure, outletPressure, flowRate;
51 bool flowRateKnown;
52};
53
PneumaticValve(double inletPressure, double outletPressure)
PneumaticValve(double inletPressure, double outletPressure, double flowRate)