Antares Simulator
Power System Simulator
Loading...
Searching...
No Matches
watched-constraints.h
1
2#pragma once
3
4#include <functional>
5#include <map>
6#include <memory>
7#include <regex>
8#include <string>
9#include <vector>
10
12{
14{
15public:
16 explicit WatchedConstraint(const std::string& name, const double slackValue);
17 virtual ~WatchedConstraint() = default;
18 virtual std::string infeasibility() = 0;
19 virtual std::string infeasibilityCause() = 0;
20 double slackValue() const;
21
22protected:
23 const std::vector<std::string>& splitName() const;
24
25private:
26 std::vector<std::string> splitName_;
27 double slack_value_;
28};
29
31{
32 using WatchedConstraint::WatchedConstraint;
33
34public:
35 ~HourlyBC() override = default;
36 std::string infeasibility() override;
37 std::string infeasibilityCause() override;
38};
39
41{
42 using WatchedConstraint::WatchedConstraint;
43
44public:
45 ~DailyBC() override = default;
46 std::string infeasibility() override;
47 std::string infeasibilityCause() override;
48};
49
51{
52 using WatchedConstraint::WatchedConstraint;
53
54public:
55 ~WeeklyBC() override = default;
56 std::string infeasibility() override;
57 std::string infeasibilityCause() override;
58};
59
61{
62 using WatchedConstraint::WatchedConstraint;
63
64public:
65 ~FictitiousLoad() override = default;
66 std::string infeasibility() override;
67 std::string infeasibilityCause() override;
68};
69
71{
72 using WatchedConstraint::WatchedConstraint;
73
74public:
75 ~HydroLevel() override = default;
76 std::string infeasibility() override;
77 std::string infeasibilityCause() override;
78};
79
81{
82 using WatchedConstraint::WatchedConstraint;
83
84public:
85 ~STS() override = default;
86 std::string infeasibility() override;
87 std::string infeasibilityCause() override;
88};
89
91{
92 using WatchedConstraint::WatchedConstraint;
93
94public:
95 ~HydroProduction() override = default;
96 std::string infeasibility() override;
97 std::string infeasibilityCause() override;
98};
99
101{
102public:
103 explicit ConstraintsFactory();
104 std::unique_ptr<WatchedConstraint> create(const std::string&, const double) const;
105 std::regex constraintsFilter();
106
107private:
108 std::map<std::string,
109 std::function<std::unique_ptr<WatchedConstraint>(const std::string&, const double)>>
110 regex_to_ctypes_;
111};
112
113} // namespace Antares::Optimization
Definition watched-constraints.h:101
Definition watched-constraints.h:41
Definition watched-constraints.h:61
Definition watched-constraints.h:31
Definition watched-constraints.h:71
Definition watched-constraints.h:91
Definition watched-constraints.h:81
Definition watched-constraints.h:14
Definition watched-constraints.h:51
Definition constraint-slack-analysis.cpp:45