Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/ramping model scalian #193

Open
wants to merge 220 commits into
base: New-Antares-Emulator-4
Choose a base branch
from

Conversation

meslubi2021
Copy link
Collaborator

No description provided.

flomnes and others added 30 commits September 22, 2023 09:27
* [DEV] Create STStorageCashFlowByCluster.h
* start

* add FictitiousLoad

* shortTermStorageLevel

* flowDissociation

* bindingConstraintHour

* ghost

* this is not only about constraint builder

* pay attention to the time step

* specific issue

* bug free

* smooth green?

* M&M

* Max Pumping ok?

* Area Hydro Level (_-_)

* finally

* basic

* tiny

* clean code

* add {PMin,PMax}DispatchableGeneration

* clean code

* ConsistenceNODU ok

* NbUnitsOutageLessThanNbUnitsStop

* NbDispUnitsMinBoundSinceMinUpTime

* MinDownTime

* setup Access Control

* remove comments

* remove comments

* treat major code smells

* treat major code smells 2

* more on major code smells

* update after review

* about objects lifetime

* (does not compile) cut into small pieces

* Revert "(does not compile) cut into small pieces"

This reverts commit 5a047c0.

* aesthetic

* remove comment

* smart move

* **** move

* shallow

* customize error exception

* test new variable construction design

* refactor

* update build for NODU

* clean deprecated code

* update build for NumberStoppingDispatchableUnits

* on NumberStartingDispatchableUnits

* on NumberBreakingDownDispatchableUnits

* new build NTCDirect

* missing file  NTCDirect

* Interco Direct/Indirect Cost

* ShortTermStorageInjection

* ShortTermStorageWithdrawal

* ShortTermStorageLevel

* HydProd

* HydProdDown

* HydProdUp

* Pumping

* HydroLevel

* Overflow

* FinalStorage

* fix

* LayerStorage

* Psitive/Negative UnsuppliedEnergy

* remove old code

* remove code

* fix

* move

* clarity matters thanks to @sylvlecl

* There is no need for repetition

* it makes sense:  Constraint->ConstraintFactory

* update

* remove redundant check

* rename things

* unused

* debug

* fiiiiiiiix

* add explicit keyword

* inspect unique_ptr

* resolve conflicts

* quick fix

* suggestion by @flomnes

Co-authored-by: Florian Omnès <[email protected]>

* add docs

* docs for new constraint classes

* update

* complete new classes documentation

* update

* update

* small changes

* small changes 2

* remove comment

* default value for constraint op

* clean code

* smell code

* smell code

* fix

* pretty

* typo

---------

Co-authored-by: Florian Omnès <[email protected]>
* [DEV] Add resultWriter in application.h

* [DEV] Remove Study::prepareWriter

* [DEV] Give resultWriter arg to ISimulation

* [DEV] Add arg resultWriter to importLogsToOutputFolder

* [DEV] Remove from test-store-timeseries-number

* [DEV] Add arg in StoreTimeSeriesNumbersIntoOuput

* [DEV] Add class member resultWriter in economy and adequacy

* [DEV] Removed resultWriter from study

* [FIX] Tests binding constraints

* [DEV] Move class NullResultWriter in src/libs

* [DEV] Use NullResultWriter to avoid arg

* [FIX] use NullDurationCollector
Delete the <u>src/simulation</u> line, which doesn't exist anymore. Replaced by <u>src/solver</u>.
…resSimulatorTeam#1632)

* Use 0 as a default value for ST-storage property initiallevel

* Use 50% for default values, add logs

* Document default value
…aresSimulatorTeam#1644)

* Ramove global NumeroChroniquesTireesParPays : removing from class State

* Move DataSeriesMemoryUsage to series.cpp

* Move DataSeriesMemoryUsage to class

* Use DataSeriesCommon::getValue for thermal

* Fix index

* Remove some uses of ThermiqueParPalier

* [DEV] Add arg year in prepareClustersInMustRunMode

* [FIX] Segfault by using getValue()

* [DEV] Renamed getValue by getAvailablePower

* [DEV] Add getSeriesIndex

* [FIX] segfault with getSeriesIndex

* [FIX] getseriesindex

* [DEV] getMarketBidCost now takes hour and year

* [DEV] use correct size, remove numspace from args

* [FIX] size

* [DEV] private getSeriesIndex

* [DEV] remove ThermiqueParPalier

* [FIX] post_process

---------

Co-authored-by: Florian OMNES <[email protected]>
Co-authored-by: Vincent Payet <[email protected]>
* Remove StudyRuntimeInfos::parameters

* Fix build
…sSimulatorTeam#1651)

* [DEV] TurbineMax/min

* [FIX] Use new to call constructor for vector

* [DEV] niveauxbas apports

* [DEV] DONNEES_MENSUELLES_ETENDUES

* [DEV] CoutLineaire CoefficientsDeLaMatriceDesContraintes

* [DEV] Sens

* [FIX] Using new

* [DEV] NombreDeTermesDesLignes IndicesDebutDeLigne

* [DEV] IndicesColonnes

* [DEV] Xmin Xmax SecondMembre

* [DEV] X CoutsReduits CoutsMarginauxDesContraintes

* [DEV] PositionDeLaVariable ComplementDeLaBase

* [DEV] AdresseOuPlacerLaValeurDesVariablesOptimisees

* [DEV] CORRESPONDANCE_DES_VARIABLES_PB_ETENDU

* [DEV] NbJoursDUnProbleme

* [DEV] ProblemeSpx

* [DEV] TypeDeVariable

* [DEV] CorrespondanceDesVariables

* [DEV] ProblemeLineaireEtenduPartieFixe

* [DEV] ProblemeLineaireEtenduPartieVariable

* [DEV] Var scope

* [DEV] ProblemeHydrauliqueEtendu

* [DEV] Use unique_ptr for Probleme

* [DEV] Remove probleme in struct

* [DEV] Remove probleme in monthly

* [DEV] Remove probleme in daily/

* [DEV] DONNEES_MENSUELLES_ETENDUES&

* [FIX] code smells

* [FIX] vois* for probspx

* [DEV] std::vector<PROBLEME_SPX*> ProblemeSpx for daily and monthly

* [DEV] Remove error checking for unique_ptr

* [FIX] Code smell
…am#1659)

* [DEV] Remove RenouvelableParPalier from alea

* [DEV] Changed arg of valueAtTimeStep

* [DEV] use year for valueAtTimeStep calls

* [DEV] Removed RenouvelableParPalier from struct

* [FIX] warning

* [FIX] args hour, year for valueAtTimeStep

* [FIX] Remove unused var

* [DEV] Try Eolien for output var

* [FIX] Arg name for hourInYear

* [FIX] Compile

* [DEV] Add getIndex

* [DEV] Remove Eolien

* [DEV] Consommation

* [DEV] Remove Consommation from struct

* [DEV] Remove Hydraulique

* [DEV] Remove (long) conversion for getIndex

* [FIX] Replace wind with load

* [DEV] Guillaume comments

* [DEV] Solar

* [DEV] Remove NumeroChroniquesTireesParPays, struct NUMERO_CHRONIQUES_TIREES_PAR_PAYS

* [DEV] Rename getAvailablePower with getCoefficient

* [DEV] Use getCoefficient instead of scratchpad for wind

* [DEV] Use getCoefficient instead of scratchpad for solar and load

* [DEV] remove ts from scratchpad

* [DEV] problem.year as year

* [DEV] Code smell

* [DEV] Code smell 2

* [DEV] Code smell const lambda

* [DEV] Code smell const

* [DEV] getColumn

* [FIX] Results

* [FIX] windSeries

* [FIX] Use double*

* [FIX] const
* [DEV] Renamed timeSeries into timeSeriesEnum

* [DEV] Renamed timeSeriesEnum in timeSeriesType
…nt (AntaresSimulatorTeam#1656)

* checkHourlyMinGeneration - check in all cases

* fix comments
* clean branch

* update .yml

* update deploy branch

* ooooooook

* set develop as gh-pages deployer

* move Doxyfile

* just for test

* checks: ok

* update README.md

* try clone instead of submodule
…am#1679)

* De-templatize `HydroManagement::prepareNetDemand`

Templates make for larger binaries since 2 functions are required.

* Swap 2 lines of code
* disable ghpages for pr

* Revert "disable ghpages for pr"

This reverts commit 3c162df.

* disable ghpages for pr
* try fix

* first test long test 2

* move implementation details

* restore .yml
)

* New log msg when solver not found in or-tools

* New log msg when solver not found in or-tools : oops, correct an oblivion
…orTeam#1678)

* Remove dependency to UI : removal from solver

* Remove dependency to UI : calling the main arguments pre-processing from outside

* Remove dependency to UI : removal from analyzer

* Remove dependency to UI : replace the dependency to UI in other stand alone targets + correct new target include files paths

* Remove dependency to UI : forgot to add header file to repository

* Remove dependency to UI : introduce a RAII to automatically destroy the allocated memory

* Add & use IntoUTF8ArgsTranslator::convert (AntaresSimulatorTeam#1684)

* Add & use IntoUTF8ArgsTranslator::convert

* Fix header inclusion

* Fix windows build

* Fix build

* Fix build (bis)

* Remove ref to argc, make IntoUTF8ArgsTranslator's API homogenous

* Apply clang-format

---------

Co-authored-by: Florian Omnès <[email protected]>
…m#1685)

* Fixes swallowed exceptions in computation thread

Exceptions are now transferred from the computation thread
to the main one using std::future mechanisms.
Only the first encountered exception is thrown in the main
thread.

Signed-off-by: Sylvain Leclerc <[email protected]>

* - transfer exceptions occuring in zip_writer too
- some cleanup
- an integration test to check behaviour in simulation

Signed-off-by: Sylvain Leclerc <[email protected]>

* Take into account review

Signed-off-by: Sylvain Leclerc <[email protected]>

* - Separate thread pool for zip IO
- Addition of a flush method for writers, to synchronize
- Addition of tests for zip writer

Signed-off-by: Sylvain Leclerc <[email protected]>

* Some comments

Signed-off-by: Sylvain Leclerc <[email protected]>

* Throw more exceptions from zip writer

Signed-off-by: Sylvain Leclerc <[email protected]>

* Fix headers

Signed-off-by: Sylvain Leclerc <[email protected]>

* Fix missing header (windows build)

Signed-off-by: Sylvain Leclerc <[email protected]>

* Take into account review

Signed-off-by: Sylvain Leclerc <[email protected]>

* Fix windows build again

Signed-off-by: Sylvain Leclerc <[email protected]>

---------

Signed-off-by: Sylvain Leclerc <[email protected]>
* Fix segfault when a study is invalid

* Re-throw loading exceptions in case of failure

* Formatting

* Rename
flomnes and others added 25 commits March 13, 2024 11:22
…mulatorTeam#1843)

Co-authored-by: NikolaIlic <[email protected]>
Co-authored-by: Milos-RTEi <[email protected]>
Co-authored-by: Milos <[email protected]>
Co-authored-by: nikolaredstork <[email protected]>
Co-authored-by: payetvin <[email protected]>
Co-authored-by: Florian Omnès <[email protected]>
Allow end to end testing on studies for the time series generator tool
Remove calls to deprecated Yuni functions, only for Yuni::Math, excluding the ui directory, which is deprecated as well.

Close AntaresSimulatorTeam#1978

---------

Co-authored-by: Florian Omnès <[email protected]>
```diff
1c1
< CorrespondanceDesVariables.NumeroDeVariableVolume[0] = Var;
---
> CorrespondanceDesVariables.NumeroDeVariableVolume[Pdt] = Var;
6c6
<   = &(DonneesAnnuelles.Volume[0]);
---
>   = &(DonneesAnnuelles.Volume[Pdt]);
```
Allow user to set latest/non latest for new releases.

---------

Co-authored-by: Florian Omnès <[email protected]>
…SimulatorTeam#2007)

We make groups of **S**hort **T**erm **S**torage dynamic. 
This means that accepted groups are no longer fixed in the code.
Instead, any group can be defined by user.
It has consequences on the **Thematic Trimming**, which now accepts only
one item (namely **STS BY GROUP**) regarding STS groups output
variables.
Turning it to on prints all variables related to groups. 

Note : 
- We added a default group name (in case user doesn't specify a group
name for a cluster) : "**sts-def-group**". Feel free to amend it.
- A new test (a study) was created. Please find it
[here](https://github.com/AntaresSimulatorTeam/Antares_Simulator/files/14802896/ST-dynamic-groups.zip).
Look at its **user's notes** to know its intentions.
- upon a @sylvlecl suggestion, doc was updated accordingly

## Required
- [x] Merge
https://github.com/AntaresSimulatorTeam/Antares_Simulator_Tests_NR/pull/18/files,
generate new reference results

---------

Co-authored-by: Florian Omnès <[email protected]>
- Fix thematic trimming variable names for short-term-storage by
@flomnes in
AntaresSimulatorTeam/Antares_Simulator_Tests_NR#18
- Add a study with dynamic STS groups (v9.1.0) by @flomnes in
AntaresSimulatorTeam/Antares_Simulator_Tests_NR#19
… ramping model to fix issue with ramping behavior + update of the output ramping cost to be aligned with the constraints
@meslubi2021 meslubi2021 self-assigned this Jul 17, 2024
Copy link

mergify bot commented Jul 17, 2024

⚠️ The sha of the head commit of this PR conflicts with #28. Mergify cannot evaluate rules on this PR. ⚠️

…nits as it is already included in the starting thermal units term
Copy link

mergify bot commented Aug 26, 2024

⚠️ The sha of the head commit of this PR conflicts with #183. Mergify cannot evaluate rules on this PR. ⚠️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.