Skip to content

Commit 8ed8e3b

Browse files
authored
Merge pull request #76 from e2nIEE/develop
Merge develop onto master
2 parents 937378a + bc4e7fd commit 8ed8e3b

File tree

169 files changed

+17532
-3328
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

169 files changed

+17532
-3328
lines changed

.github/workflows/run_tests_develop.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ jobs:
4141
- name: Upload coverage to Codecov
4242
if: ${{ matrix.python-version == '3.11' }}
4343
uses: codecov/codecov-action@v4
44+
continue-on-error: true
4445
with:
4546
verbose: true
4647
token: ${{ secrets.CODECOV_TOKEN }}

AUTHORS

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,16 @@ Pratikshya Mohanty: Universität Kassel
2020

2121
Erik Prade: Universität Kassel
2222

23+
Carl Ritzenhoff: Universität Kassel
24+
2325
Marko Keber: University of Ljubljana
2426

2527
Izak Oberčkal Pluško: University of Ljubljana
2628

29+
Dr. Katja Klinar: University of Ljubljana
30+
31+
Dr. Tine Seljak: University of Ljubljana
32+
2733

2834

2935
Contributors
@@ -32,11 +38,11 @@ Contributors
3238
Bente Schmidt
3339

3440
Dimitri Novarèze
35-
41+
3642
Alain Dimier
3743

3844
Camille Laporte
39-
45+
4046

4147

4248
Coordination
@@ -46,6 +52,6 @@ Dr. Odile Capron: Universität Kassel
4652

4753
Dr. Anton Bergmann: Universität Kassel
4854

49-
Prof. Dr. Lars Peter Lauven: Universität Kassel
50-
55+
Dr. Ruben Schauer: Universität Kassel
5156

57+
Prof. Dr. Lars Peter Lauven: Universität Kassel

CHANGELOG.rst

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,43 @@
1+
[0.1.3] 2025-11-20
2+
------------------------------
3+
- [ADDED] Solar thermal model
4+
- [ADDED] PV model
5+
- [ADDED] Rankine cycle CHP model
6+
- [ADDED] `Converter` controller: for converting generic to fluid mix mapping as a functionality addition
7+
- [FIXED] `Supervisor` controller
8+
- [ADDED] Option to rerun time step with run_timeseries
9+
- [ADDED] BHP parameters adapted and updated tutorials
10+
- [ADDED] `NetworkCoupling` controller: Can be used to create a coupling between a prosumer and a pandapipes or pandapower network and a tutorial demonstrating building an energy system that couples multiple networks
11+
12+
13+
[0.1.2] - 2025-05-16
14+
-------------------------------
15+
- [ADDED] `Supervisor` controller: allows dynamic attribute control based on input conditions and logical rules.
16+
- [ADDED] `SupervisorData` class: handles input structure for the supervisor controller.
17+
- [ADDED] `Rule` class: defines single-condition logic to modify prosumer attributes.
18+
- [ADDED] `CombiningRules` class: supports logical combination (AND/OR) of multiple `Rule` instances.
19+
- [DOCS] Added detailed documentation and usage examples for the supervisor.
20+
21+
[0.1.2] - 2025-05-07
22+
-------------------------------
23+
- [ADDED] `ConstProfileController` now supports automatic period detection from the DataFrame via a `period` column if no period is explicitly set.
24+
- [CHANGED] Improved period handling logic to reduce user configuration burden and improve flexibility.
25+
- [UPDATED] Tests and tutorials to reflect the new behavior in period detection and ensure compatibility with updated controller logic.
26+
- [FIXED] Runtime Warning due to negative value inside np.log
27+
- [CHANGED] merged duplicate code from dry cooler and heat exchanger
28+
29+
30+
[0.1.2] - 2025-05-02
31+
-------------------------------
32+
- [ADDED] `check_levels` function: ensures that all controllers in a prosumer have the same execution level (with exceptions for ConstProfile and pandapower/pandapipes).
33+
- [ADDED] `check_controllers_orders` function: validates that initiator controllers execute before responder controllers, based on level and order attributes.
34+
- [ADDED] `check_mappings_orders` function: checks that controller mapping orders are continuous and start from zero.
35+
- [ADDED] `check_order` argument to the prosumer constructor: allows enabling or disabling all order validation mechanisms.
36+
- [UPDATED] Tests and tutorials to comply with new order checking mechanisms (minor fixes for compatibility).
37+
- [FIXED] Incorrect reference to "pandapipes" in `CONTRIBUTING.rst` now correctly mentions "pandaprosumer".
38+
- [CHANGED] Unit correction in `dry_cooler.rst` documentation.
39+
- [ADDED] q_exchanged_kw in Heat Exchanger result columns.
40+
141
[0.1.2] - 2025-04-22
242
-------------------------------
343
- [FIXED] ice chp documentation

CONTRIBUTING.rst

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ Setup your git repository
1212
If you want to contribute for the first time, you can set up your environment like this:
1313

1414
#. If you have not done it yet: install git and create a github account
15-
#. Create a fork of the official pandapipes repository by clicking on "Fork" on the official pandapipes repository (see https://help.github.com/articles/fork-a-repo/)
15+
#. Create a fork of the official pandapipes repository by clicking on "Fork" on the official pandapipes repository (see https://help.github.com/articles/fork-a-repo/)
1616
#. Clone the forked repository to your local machine: ::
1717

1818
git clone https://github.com/YOUR-USERNAME/pandaprosumer.git
@@ -32,11 +32,11 @@ If you want to contribute for the first time, you can set up your environment li
3232
[branch "develop"]
3333
remote = origin
3434
merge = refs/heads/develop
35-
35+
3636
The develop branch is now configured to automatically track the official pandapipes develop branch. So if you are on the develop branch and use: ::
3737

3838
git pull
39-
39+
4040
your local repository will be updated with the newest changes in the official pandaprosumer repository.
4141

4242
Since you cannot push directly to the official pandaprosumer repository, if you are on develop and do: ::
@@ -74,15 +74,15 @@ Contribute from your develop branch
7474

7575
git add --all
7676
git commit -m"commit message"
77-
77+
7878
If there is an open issue that the commit belongs to, reference the issue in the commit message, for example for issue 3: ::
7979

8080
git commit -m"commit message #3"
8181

8282
#. Push your changes to your fork: ::
8383

8484
git push
85-
85+
8686
#. Put in a Pull request to the main repository: https://help.github.com/articles/creating-a-pull-request-from-a-fork/
8787

8888
#. For each Pull request, some checks will start automatically. It is required that the travis-ci
@@ -93,7 +93,7 @@ Contribute from your develop branch
9393
git add --all
9494
git commit -m"I have updated the pull request after discussions #3"
9595
git push
96-
96+
9797
The pull request will be automatically updated.
9898

9999
Contribute from a feature branch
@@ -110,24 +110,24 @@ Contribute from a feature branch
110110
#. Create a new feature branch: ::
111111

112112
git checkout -b my_branch
113-
113+
114114
#. Make changes in the code
115115

116116
#. Add and commit your change: ::
117117

118118
git add --all
119119
git commit -m"commit message"
120-
120+
121121
If there is an open issue that the commit belongs to, reference the issue in the commit message, for example for issue 3: ::
122122

123123
git commit -m"commit message #3"
124-
124+
125125
#. Push your changes to your fork: ::
126126

127127
git push -u pp_fork my_branch
128-
129-
this pushes the new branch to your fork and also sets up the remote tracking.
130-
128+
129+
this pushes the new branch to your fork and also sets up the remote tracking.
130+
131131
#. Put in a Pull request to the official repository (see https://help.github.com/articles/creating-a-pull-request-from-a-fork/).
132132

133133
#. For each Pull request, some checks will start automatically. It is required that the travis-ci
@@ -156,4 +156,4 @@ Adding Tests for new functionality
156156

157157
If you have added new functionality, you should also add a new function that tests this functionality. pytest automatically detects all functions in the pandaprosumer/test folder that start with 'test' and are located in a file that also starts with 'test' as relevant test cases.
158158

159-
Tests with pytest can be quite complex. For how to handle e.g. pytest fixtures, xfailing tests etc. refer to the documentation of pytest.
159+
Tests with pytest can be quite complex. For how to handle e.g. pytest fixtures, xfailing tests etc. refer to the documentation of pytest.

contributing.rst

Lines changed: 0 additions & 163 deletions
This file was deleted.

doc/source/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
project = 'Pandaprosumer'
1515
copyright = '2025, Uni Kassel, European Institute for Energy Research'
1616
author = 'Uni Kassel, European Institute for Energy Research'
17-
release = '0.1'
17+
release = '0.3'
1818

1919
# -- General configuration ---------------------------------------------------
2020
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration

doc/source/control/const_profile.rst

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,14 @@ The controller can write the values to the any input of a controller in the same
1818

1919
.. autoclass:: pandaprosumer.controller.const_profile.ConstProfileController
2020
:members:
21+
22+
23+
Period Handling
24+
================
25+
26+
A period needs to be defined to use the `ConstProfileController`.
27+
28+
If no period is explicitly set for the controller, it will try to detect a `period` column in the DataFrame provided by the DataSource.
29+
If this column exists, a default period will automatically be created and used.
30+
31+
If neither a period is defined nor a `period` column is present in the DataFrame, an error will be raised.

0 commit comments

Comments
 (0)