hydrobricks
Loading...
Searching...
No Matches
ProcessRunoffSocont.h
1#ifndef HYDROBRICKS_PROCESS_RUNOFF_SOCONT_H
2#define HYDROBRICKS_PROCESS_RUNOFF_SOCONT_H
3
4#include "Forcing.h"
5#include "Includes.h"
6#include "ProcessOutflow.h"
7
8class HydroUnit;
9
21 public:
22 explicit ProcessRunoffSocont(WaterContainer* container);
23
24 ~ProcessRunoffSocont() override = default;
25
31 static void RegisterProcessSettings(SettingsModel* modelSettings);
32
36 void SetHydroUnitProperties(HydroUnit* unit, Brick* brick) override;
37
41 void SetParameters(const ProcessSettings& processSettings) override;
42
43 protected:
44 float _slope; // [m/m]
45 const float* _beta; // []
46 double* _areaFraction; // []
47 double _areaUnit; // [m²]
48 double _exponent;
49
53 const vecDouble& GetRates() override;
54
60 [[nodiscard]] double GetArea() const;
61};
62
63#endif // HYDROBRICKS_PROCESS_RUNOFF_SOCONT_H
Definition Brick.h:22
Definition HydroUnit.h:18
Definition ProcessOutflow.h:8
Definition ProcessRunoffSocont.h:20
static void RegisterProcessSettings(SettingsModel *modelSettings)
Definition ProcessRunoffSocont.cpp:15
void SetParameters(const ProcessSettings &processSettings) override
Definition ProcessRunoffSocont.cpp:28
void SetHydroUnitProperties(HydroUnit *unit, Brick *brick) override
Definition ProcessRunoffSocont.cpp:19
double GetArea() const
Definition ProcessRunoffSocont.cpp:33
const vecDouble & GetRates() override
Definition ProcessRunoffSocont.cpp:41
Definition SettingsModel.h:70
Definition WaterContainer.h:9
Definition SettingsModel.h:30