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

Add detailed hydro power model #35

Merged
merged 43 commits into from
Nov 22, 2024
Merged

Add detailed hydro power model #35

merged 43 commits into from
Nov 22, 2024

Conversation

peraaslid
Copy link
Collaborator

New nodes HydroReservoir, HydroGenerator, HydroPump and HydroGate.

Linn Emelie Schaffer and others added 25 commits September 18, 2024 15:17
…ksjoner. Lagt til flomvei i eksempel. Lagt til constraints_capacity for Inflow constraints_level_aux og constraints_level_sp for HydroReservoir.
…ation changed to HydroGenerator, added TODOs
Move from added_datastruct to datastructures.
Update checks.
Implement flow and vol constraints and datatypes. Move constraints to Data[].
Export new types.
* add reservoir constraint tests
* Add gate schedule test
* update hydro reservoir docstring
* Fix Hydro generator docstring
* Add documentation structure
* Add new nodes to methods-fields
* include nodes in make.jl
* Fix docstring format for HydroGate and HydroReservoir
* fix HydroGenerator docstring
* Export new module to make available in doc
* Update checks.jl
---------

Co-authored-by: Julian Straus <[email protected]>
Co-authored-by: linnemeliesch <[email protected]>
* Adjust/Changes in EMB (#27)

* Modifications to docstrings
* Updated CI to LTS and updated dependencies
* Adjusted documentation based on changes in EMB
* Minor update in the level balance description
* Change how constraints are defined
* Fix code based on changes in base
* Use reservoir inner constructor
* use inner constructor for hydro gate
* Use variable durations in test and general refactoring
* Code refactoring of gate opex and more documentation
* Fix links and equations
* Include reservoir opex description
* Refactor restriction function and rewrite test

---------

Co-authored-by: Julian Straus <[email protected]>
* Moved HydroGenerator and pq_curve to datastructures.jl Deleted added_datastruct.jl.
* defined new type AbstractPqCurve
* Model PQ_curve as energy equivalent for hydropower generator
* Modelling of pq_curve as PqPoints (power - discharge points) for hydropower generator nodes
* Added abstract type for HydroUnit, updated HydroPump struct
* Add hydro generator test
* use resource as input to constraint
* Include power and discharge constraints for generator. Include capacity scaling of PQ-curve.
* Add hydrogenerator tests.
* Add pump module and simple test
* Add hydro generator and pump checks
* Only build penalty constraints when active
* Refactor building of pq_curve to reuse code for pump and generator
---------

Co-authored-by: Linn Emelie Schaffer <[email protected]>
* Bug fix scaling of PQ-curve/maximum capacity HydroUnit node.
* documentation HydroGenerator
* Simplified constraints_flow_in for pump
* Added documentation to HydroPump
* Added description of detailed hydropower, high-level.
* updated index.md in documenatation
* Include illustration
* Fix links in doc
---------

Co-authored-by: Linn Emelie Schaffer <[email protected]>
Co-authored-by: Per Aaslid <[email protected]>
@peraaslid peraaslid requested a review from JulStraus November 19, 2024 12:32
@peraaslid peraaslid self-assigned this Nov 19, 2024
@JulStraus JulStraus added documentation Improvements or additions to documentation enhancement New feature or request labels Nov 20, 2024
Copy link
Member

@JulStraus JulStraus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are a few things we have to fix. Some of them can be taken as separate issue for the final release, some of them should be fixed beforehand. I will write for each point whether I will do it directly.

docs/src/nodes/detailed-hydropower.md Outdated Show resolved Hide resolved
src/checks.jl Show resolved Hide resolved
src/constraint_functions.jl Show resolved Hide resolved
src/constraint_functions.jl Outdated Show resolved Hide resolved
src/constraint_functions.jl Outdated Show resolved Hide resolved
src/datastructures.jl Outdated Show resolved Hide resolved
src/datastructures.jl Outdated Show resolved Hide resolved
Copy link
Member

@JulStraus JulStraus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updates to the existing comments

docs/src/nodes/detailed-hydropower.md Outdated Show resolved Hide resolved
docs/src/nodes/detailed-hydropower.md Outdated Show resolved Hide resolved
src/constraint_functions.jl Show resolved Hide resolved
src/checks.jl Show resolved Hide resolved
JulStraus and others added 8 commits November 20, 2024 15:53
- Several subpages for improved accesibility
- Updated crosslinks as well
- Moved input and output to function declarations from constructor
- Moved call of `build_pq_constaints` ot `constraints_capacity`
…stractScheduleType, MinConstraintType to MinSchedule, MaxConstraintType to MaxSchedule, and ScheduleConstraintType to EqualSchedule
@peraaslid
Copy link
Collaborator Author

All comments from review has been resolved @JulStraus

Copy link
Member

@JulStraus JulStraus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good now. We wait with version increase and registration until the BatteryStorage nodes are merged as well.

@JulStraus JulStraus merged commit 73e6da6 into main Nov 22, 2024
5 checks passed
@JulStraus JulStraus mentioned this pull request Nov 22, 2024
@JulStraus JulStraus deleted the dev_hydro_rebase branch December 17, 2024 06:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants