Antares Xpansion
Investment simulations for Antares studies
Loading...
Searching...
No Matches
MergeWeightsTrajectory.h
1#pragma once
2
3#include "antares-xpansion/benders/logger/User.h"
4#include "antares-xpansion/benders/merge_master_mps/NodeLpDataLocation.h"
5
6constexpr char MERGE_WEIGHTS_CONTEXT[] = "Trajectory Merged Weights Generation";
7constexpr char WEIGHT_SUM_KEY[] = "WEIGHT_SUM";
8
10{
11private:
12 typedef std::map<std::string, double> WeightsMap;
13
14public:
15 MergeWeightsTrajectory(const std::filesystem::path& master_merger_info,
16 const std::filesystem::path& nodal_file,
17 const std::filesystem::path& output_file,
18 Logger logger):
19 master_merger_info_file_(master_merger_info),
20 nodal_lp_folder_file_(nodal_file),
21 output_filepath_(output_file),
22 logger_(std::move(logger))
23 {
24 }
25
26 void load_input_files();
27 void generate_merged_weights_file();
28 void write_merged_weights_file() const;
29
30private:
31 std::filesystem::path master_merger_info_file_;
32 std::filesystem::path nodal_lp_folder_file_;
33 std::filesystem::path output_filepath_;
34
35 Logger logger_;
36 NodesToLpDataLocationMap nodes_lp_info_;
37 WeightsMap nodes_weights_;
38
39 WeightsMap merged_subproblem_weights_;
40
41 // Scaling factor
42 // (will be transmited to the objective functions of the subproblems through the weights file)
43 double scaling_;
44};
Definition MergeWeightsTrajectory.h:10