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
SludgeVolumeIndex.h
Go to the documentation of this file.
1
11#pragma once
12
13#include <vector>
14
16 public:
17 enum SVIParameter { SVISN, SVIGN, SVIGS, SVISS, VoK };
18
20 GraphDataPoint(double SolidsConcentration, double SolidsFlux)
21 : SolidsConcentration(SolidsConcentration), SolidsFlux(SolidsFlux) {}
22
23 GraphDataPoint() = default;
24 double SolidsConcentration = 0, SolidsFlux = 0;
25 };
26
27 struct Output {
28 Output(double TotalAreaClarifier, double SurfaceOverflow, double AppliedSolidsLoading, double RasConcentration,
29 double UnderFlowRateX2, double UnderFlowRateY1, double OverFlowRateX2, double OverFlowRateY2,
30 double StatePointX, double StatePointY, std::vector<GraphDataPoint> GraphData)
31 : TotalAreaClarifier(TotalAreaClarifier), SurfaceOverflow(SurfaceOverflow),
32 AppliedSolidsLoading(AppliedSolidsLoading), RasConcentration(RasConcentration),
33 UnderFlowRateX2(UnderFlowRateX2), UnderFlowRateY1(UnderFlowRateY1), OverFlowRateX2(OverFlowRateX2),
34 OverFlowRateY2(OverFlowRateY2), StatePointX(StatePointX), StatePointY(StatePointY), GraphData(GraphData) {
35 }
36
37 Output() = default;
38 double TotalAreaClarifier = 0, SurfaceOverflow = 0, AppliedSolidsLoading = 0, RasConcentration = 0,
39 UnderFlowRateX2 = 0, UnderFlowRateY1 = 0, OverFlowRateX2 = 0, OverFlowRateY2 = 0, StatePointX = 0,
40 StatePointY = 0;
41 std::vector<GraphDataPoint> GraphData;
42 };
43
57 SludgeVolumeIndex(SVIParameter sviParameter, double sviValue, int numberOfClarifiers, double areaOfClarifier,
58 double MLSS, double influentFlow, double rasFlow, double sludgeSettlingVelocity)
59 : sviParameter(sviParameter), sviValue(sviValue), numberOfClarifiers(numberOfClarifiers),
60 areaOfClarifier(areaOfClarifier), MLSS(MLSS), influentFlow(influentFlow), rasFlow(rasFlow),
61 sludgeSettlingVelocity(sludgeSettlingVelocity) {}
62
83
84 private:
85 SVIParameter sviParameter = SVIParameter::SVISN;
86 double sviValue = 0;
87 int numberOfClarifiers = 0;
88 double areaOfClarifier = 0;
89 double MLSS = 0;
90 double influentFlow = 0;
91 double rasFlow = 0;
92 double sludgeSettlingVelocity = 0;
93
94 static double Round(double value) { return (float)((int)(value * 100 + .5)) / 100; }
95};
SludgeVolumeIndex(SVIParameter sviParameter, double sviValue, int numberOfClarifiers, double areaOfClarifier, double MLSS, double influentFlow, double rasFlow, double sludgeSettlingVelocity)