Antares Simulator
Power System Simulator
Loading...
Searching...
No Matches
timeSeriesSet.h
1#include <stdexcept>
2#include <string>
3#include <vector>
4
5#include "dataSeries.h"
6
7namespace Antares::Optimisation::LinearProblemDataImpl
8{
10{
11public:
12 explicit TimeSeriesSet(std::string name, unsigned height);
13 void add(const std::vector<double>& ts);
14 double getData(unsigned rank, unsigned hour) override;
15
16private:
17 unsigned height_ = 0;
18 std::vector<std::vector<double>> tsSet_;
19
20public:
21 class AddTSofWrongSize: public std::invalid_argument
22 {
23 public:
24 explicit AddTSofWrongSize(const std::string& name,
25 const size_t& tsSize,
26 const unsigned& height);
27 };
28
29 class Empty: public std::invalid_argument
30 {
31 public:
32 explicit Empty(const std::string& name);
33 };
34
35 class RankTooBig: public std::invalid_argument
36 {
37 public:
38 explicit RankTooBig(const std::string& name, unsigned rank);
39 };
40
41 class HourTooBig: public std::invalid_argument
42 {
43 public:
44 explicit HourTooBig(const std::string& name, unsigned hour);
45 };
46};
47
48} // namespace Antares::Optimisation::LinearProblemDataImpl