Antares Simulator
Power System Simulator
TwoVarsTwoConstraintsFiller.h
1 
2 #pragma once
3 
4 #include "antares/optimisation/linear-problem-api/linearProblemFiller.h"
5 
7 {
8 
10 {
11 public:
12  explicit TwoVarsTwoConstraintsFiller(OptimEntityContainer& optimEntityContainer):
13  optimEntityContainer_(optimEntityContainer)
14  {
15  }
16 
17  void addVariables(const FillContext& ctx) override;
18  void addConstraints(const FillContext& ctx) override;
19  void addObjectives(const FillContext& ctx) override;
20  OptimEntityContainer& optimEntityContainer_;
21 };
22 
23 void TwoVarsTwoConstraintsFiller::addVariables([[maybe_unused]] const FillContext& ctx)
24 {
25  optimEntityContainer_.Problem().addNumVariable(0, 1, "var-1-by-TwoVarsTwoConstraintsFiller");
26  optimEntityContainer_.Problem().addNumVariable(0, 3, "var-2-by-TwoVarsTwoConstraintsFiller");
27 }
28 
29 void TwoVarsTwoConstraintsFiller::addConstraints([[maybe_unused]] const FillContext& ctx)
30 {
31  optimEntityContainer_.Problem().addConstraint(1, 2, "constr-1-by-TwoVarsTwoConstraintsFiller");
32  optimEntityContainer_.Problem().addConstraint(1, 3, "constr-2-by-TwoVarsTwoConstraintsFiller");
33 }
34 
35 void TwoVarsTwoConstraintsFiller::addObjectives([[maybe_unused]] const FillContext& ctx)
36 {
37 }
38 
39 } // namespace Antares::Optimisation::LinearProblemApi
Context for filling linear problem data. Contains temporal information.
Definition: ILinearProblemData.h:35
virtual IMipVariable * addNumVariable(double lb, double ub, const std::string &name)=0
Create a continuous variable.
virtual IMipConstraint * addConstraint(double lb, double ub, const std::string &name)=0
Add a bounded constraint to the problem.
Definition: OptimEntityContainer.h:46
Namespace for the classes related to the linear problem API.
Definition: SimulationTableGenerator.h:41