41 std::vector<unsigned int> yearsIndices;
44 std::map<uint, bool> yearFailed;
47 std::map<unsigned int, unsigned int> performedYearToSpace;
50 std::map<unsigned int, unsigned int> spaceToPerformedYear;
53 std::map<unsigned int, bool> isFirstPerformedYearOfASet;
56 std::map<unsigned int, bool> isYearPerformed;
59 unsigned int nbPerformedYears;
68 unsigned int yearForTSgeneration;
122 void setNbAreas(uint nbAreas)
127 void setPowerFluctuations(Data::PowerFluctuations powerFluctuations)
129 pPowerFluctuations = powerFluctuations;
135 for (uint a = 0; a != pNbAreas; a++)
137 pThermalNoisesByArea[a].assign(pThermalNoisesByArea[a].size(), 0);
141 pNbClustersByArea.assign(pNbAreas, 0);
144 pReservoirLevels.assign(pNbAreas, 0);
145 pUnsuppliedEnergy.assign(pNbAreas, 0);
146 pSpilledEnergy.assign(pNbAreas, 0);
149 switch (pPowerFluctuations)
151 case Data::lssFreeModulations:
153 for (uint a = 0; a != pNbAreas; a++)
155 pHydroCostsByArea_freeMod[a].assign(8784, 0);
160 case Data::lssMinimizeRamping:
161 case Data::lssMinimizeExcursions:
163 pHydroCosts_rampingOrExcursion.assign(pNbAreas, 0);
167 case Data::lssUnknown:
174 Data::PowerFluctuations pPowerFluctuations;
177 std::vector<std::vector<double>> pThermalNoisesByArea;
178 std::vector<size_t> pNbClustersByArea;
181 std::vector<double> pReservoirLevels;
184 std::vector<double> pUnsuppliedEnergy;
185 std::vector<double> pSpilledEnergy;
188 std::vector<std::vector<double>> pHydroCostsByArea_freeMod;
189 std::vector<double> pHydroCosts_rampingOrExcursion;
195 randomNumbers(uint maxNbPerformedYearsInAset, Data::PowerFluctuations powerFluctuations):
196 pMaxNbPerformedYears(maxNbPerformedYearsInAset)
199 pYears.resize(maxNbPerformedYearsInAset);
202 for (uint y = 0; y < maxNbPerformedYearsInAset; ++y)
204 pYears[y].setPowerFluctuations(powerFluctuations);
212 for (uint i = 0; i < pMaxNbPerformedYears; i++)
217 yearNumberToIndex.clear();
220 uint pMaxNbPerformedYears;
221 std::vector<yearRandomNumbers> pYears;
227 std::map<uint, uint> yearNumberToIndex;