Antares Xpansion
Investment simulations for Antares studies
Loading...
Searching...
No Matches
CriterionComputation.h
1#pragma once
2
3#include "CriterionInputDataReader.h"
4#include "VariablesGroup.h"
5namespace Benders::Criterion {
6
8 public:
12 explicit CriterionComputation() = default;
13
23 explicit CriterionComputation(
24 const CriterionInputData &criterion_input_data);
25
36 void SearchVariables(const std::vector<std::string> &variables);
37
55 double subproblem_weight, const std::vector<double> &sub_problem_solution,
56 std::vector<double> &criteria,
57 std::vector<double> &patterns_values);
58
67 std::vector<std::vector<int>> &getVarIndices();
68
78
79 bool IsEmpty() const {
80 return criterion_input_data_.Criteria().empty();
81 }
82
83private:
84 std::vector<std::vector<int>> var_indices_ = {};
85 CriterionInputData criterion_input_data_;
86};
87} // namespace Benders::Criterion
Definition CriterionComputation.h:7
CriterionComputation()=default
default constructor
void ComputeCriterion(double subproblem_weight, const std::vector< double > &sub_problem_solution, std::vector< double > &criteria, std::vector< double > &patterns_values)
Computes the criteria based on subproblem solutions.
Definition CriterionComputation.cpp:5
const CriterionInputData & getCriterionInputData() const
Retrieves the criterion input data.
Definition CriterionComputation.cpp:36
std::vector< std::vector< int > > & getVarIndices()
Retrieves the variable indices.
Definition CriterionComputation.cpp:40
void SearchVariables(const std::vector< std::string > &variables)
Searches for relevant variables based on the provided variable names.
Definition CriterionComputation.cpp:29
this class contains all data read from user input file
Definition CriterionInputDataReader.h:80