Antares Simulator
Power System Simulator
Loading...
Searching...
No Matches
opt_fonctions.h
1/*
2 * Copyright 2007-2024, RTE (https://www.rte-france.com)
3 * See AUTHORS.txt
4 * SPDX-License-Identifier: MPL-2.0
5 * This file is part of Antares-Simulator,
6 * Adequacy and Performance assessment for interconnected energy networks.
7 *
8 * Antares_Simulator is free software: you can redistribute it and/or modify
9 * it under the terms of the Mozilla Public Licence 2.0 as published by
10 * the Mozilla Foundation, either version 2 of the License, or
11 * (at your option) any later version.
12 *
13 * Antares_Simulator is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * Mozilla Public Licence 2.0 for more details.
17 *
18 * You should have received a copy of the Mozilla Public Licence 2.0
19 * along with Antares_Simulator. If not, see <https://opensource.org/license/mpl-2-0/>.
20 */
21#ifndef __SOLVER_OPTIMISATION_FUNCTIONS_H__
22#define __SOLVER_OPTIMISATION_FUNCTIONS_H__
23
24#include <antares/optimization-options/options.h>
25#include <antares/solver/utils/opt_period_string_generator.h>
26#include <antares/writer/i_writer.h>
27#include "antares/config/config.h"
28#include "antares/solver/optimisation/opt_structure_probleme_a_resoudre.h"
29#include "antares/solver/simulation/ISimulationObserver.h"
30#include "antares/study/parameters/adq-patch-params.h"
31
32#include "adequacy_patch_csr/hourly_csr_problem.h"
33
36
37void OPT_OptimisationHebdomadaire(const OptimizationOptions& options,
38 PROBLEME_HEBDO* pProblemeHebdo,
40 Solver::Simulation::ISimulationObserver& simulationObserver);
41void OPT_NumeroDeJourDuPasDeTemps(PROBLEME_HEBDO*);
42void OPT_NumeroDIntervalleOptimiseDuPasDeTemps(PROBLEME_HEBDO*);
43void OPT_ConstruireLaListeDesVariablesOptimiseesDuProblemeLineaire(PROBLEME_HEBDO*);
44void OPT_ConstruireLaListeDesVariablesOptimiseesDuProblemeQuadratique(PROBLEME_HEBDO*);
45void OPT_InitialiserLesPminHebdo(PROBLEME_HEBDO*);
46void OPT_InitialiserLesContrainteDEnergieHydrauliqueParIntervalleOptimise(PROBLEME_HEBDO*);
47void OPT_MaxDesPmaxHydrauliques(PROBLEME_HEBDO*);
48void OPT_InitialiserLesBornesDesVariablesDuProblemeLineaire(PROBLEME_HEBDO*,
49 const int,
50 const int,
51 const int);
52void OPT_InitialiserLesBornesDesVariablesDuProblemeQuadratique(PROBLEME_HEBDO*, int);
53void OPT_InitialiserLeSecondMembreDuProblemeLineaire(PROBLEME_HEBDO*, int, int, int, const int);
54void OPT_InitialiserLeSecondMembreDuProblemeQuadratique(PROBLEME_HEBDO*, int);
55void OPT_InitialiserLesCoutsLineaire(PROBLEME_HEBDO*, const int, const int);
56void OPT_InitialiserLesCoutsQuadratiques(PROBLEME_HEBDO*, int);
57bool OPT_AppelDuSolveurQuadratique(PROBLEME_ANTARES_A_RESOUDRE*, const int);
58
59bool OPT_PilotageOptimisationLineaire(const OptimizationOptions& options,
60 PROBLEME_HEBDO* problemeHebdo,
62 Solver::Simulation::ISimulationObserver& simulationObserver);
63void OPT_VerifierPresenceReserveJmoins1(PROBLEME_HEBDO*);
64bool OPT_PilotageOptimisationQuadratique(PROBLEME_HEBDO*);
65
71bool OPT_AppelDuSimplexe(const OptimizationOptions& options,
73 int,
74 const int,
77void OPT_LiberationProblemesSimplexe(const PROBLEME_HEBDO*);
78
79bool OPT_OptimisationLineaire(const OptimizationOptions& options,
80 PROBLEME_HEBDO* problemeHebdo,
82 Solver::Simulation::ISimulationObserver& simulationObserver);
83void OPT_RestaurerLesDonnees(PROBLEME_HEBDO*);
84/*------------------------------*/
85
86void OPT_CalculerLesPminThermiquesEnFonctionDeMUTetMDT(PROBLEME_HEBDO*);
87double OPT_CalculerAireMaxPminJour(int, int, int, int, std::vector<int>&, std::vector<int>&);
88
89void OPT_ChainagesDesIntercoPartantDUnNoeud(PROBLEME_HEBDO*);
90
91void OPT_AllocateFromNumberOfVariableConstraints(PROBLEME_ANTARES_A_RESOUDRE* ProblemeAResoudre);
92void OPT_AllocDuProblemeAOptimiser(PROBLEME_HEBDO*);
93int OPT_DecompteDesVariablesEtDesContraintesDuProblemeAOptimiser(PROBLEME_HEBDO*);
94
95/*------------------------------*/
96
97void OPT_ConstruireLaListeDesVariablesOptimiseesDuProblemeLineaireCoutsDeDemarrage(PROBLEME_HEBDO*,
98 bool);
99void OPT_InitialiserLesBornesDesVariablesDuProblemeLineaireCoutsDeDemarrage(PROBLEME_HEBDO*,
100 const int,
101 const int);
102void OPT_InitialiserLesCoutsLineaireCoutsDeDemarrage(PROBLEME_HEBDO*, const int, const int);
103void OPT_InitialiserLeSecondMembreDuProblemeLineaireCoutsDeDemarrage(PROBLEME_HEBDO*, int, int);
104void OPT_DecompteDesVariablesEtDesContraintesCoutsDeDemarrage(PROBLEME_HEBDO*);
105void OPT_InitialiserNombreMinEtMaxDeGroupesCoutsDeDemarrage(PROBLEME_HEBDO*);
106void OPT_AjusterLeNombreMinDeGroupesDemarresCoutsDeDemarrage(PROBLEME_HEBDO*);
107double OPT_SommeDesPminThermiques(const PROBLEME_HEBDO*, int, uint);
108
109#endif /* __SOLVER_OPTIMISATION_FUNCTIONS_H__ */
Definition i_writer.h:34
The ISimulationObserver class is an interface for observing the simulation.
Definition ISimulationObserver.h:36
Definition opt_period_string_generator.h:40
Definition adq-patch-params.h:91
Definition opt_structure_probleme_a_resoudre.h:37
Definition sim_structure_probleme_economique.h:403