Calculate aFRR remuneration in resolution of seconds
Project description
aFRR remuneration
A tool to calculate the aFRR remuneration for the european energy market.
About
This project was initiated with the start of aFRR remuneration in temporal resolution of seconds on October 1st 2021 which is one further step to fulfill the EU target market design. The motivation for creating this python package is to provide a tool for evaluating remuneration of aFRR activation events by TSOs. Therefore, it provides an implementation of the calculation procedure described in the model description as python code.
Installation
We aim to release a package on PyPi soonish. Until then, please see in development installation how to install the package from sources.
Usage
Here is some example code that shows how use functionality of this package. Make sure you have a file at hand with data about setpoints and actual values of an aFRR activation event. See the example files from regelleistung.net to understand the required file format. Note, you have to make sure that data starts at the beginning of an aFRR activation event.
from afrr_renumeration.aFRR import calc_acceptance_tolerance_band, calc_underfulfillment_and_account
from afrr_renumeration.data import parse_tso_data
# load the setpoint and the measured value for example by reading the tso data
file = "20211231_aFRR_XXXXXXXXXXXXXXXX_XXX_PT1S_043_V01.csv"
tso_df = parse_tso_data(file)
# calculate the tolerance band
band_df = calc_acceptance_tolerance_band(
setpoint=tso_df["setpoint"], measured=tso_df["measured"]
)
# calculate acceptance values and other relevant serieses like the under-/overfulfillment
underful_df = calc_underfulfillment_and_account(
setpoint=band_df.setpoint,
measured=band_df.measured,
upper_acceptance_limit=band_df.upper_acceptance_limit,
lower_acceptance_limit=band_df.lower_acceptance_limit,
lower_tolerance_limit=band_df.lower_tolerance_limit,
upper_tolerance_limit=band_df.upper_tolerance_limit,
)
Next Steps
We plan to
- Add a testfile with artificial data
- Add an example with a valid MOL
Feel free to help us here!
Contributing
Contributions are highly welcome. For more details, please have a look in to contribution guidelines.
Development installation
For installing the package from sources, please clone the repository with
git clone git@github.com:energy2market/afrr-remuneration.git
Then, in the directory afrr-remuneration
(the one the source code was cloned to), execute
poetry install
which creates a virtual environment under ./venv
and installs required package and the package itself to this virtual environment.
Read here for more information about poetry.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file afrr-remuneration-0.0.1.tar.gz
.
File metadata
- Download URL: afrr-remuneration-0.0.1.tar.gz
- Upload date:
- Size: 13.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.12 CPython/3.8.12 Linux/5.11.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e08f32da1968f65ba20e784085081d8b3ce46bbbd73f685abad763b887a2533a |
|
MD5 | 7247a9c53de4381c69dd706437154ec0 |
|
BLAKE2b-256 | 9e28bfff8972d84ec6ad9ec4525e8f9ccddccea2bfe9f13acc042829807b618d |
File details
Details for the file afrr_remuneration-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: afrr_remuneration-0.0.1-py3-none-any.whl
- Upload date:
- Size: 12.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.12 CPython/3.8.12 Linux/5.11.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a1a976573e49be14c34bf704c72581b85f927149597c741f9150a708e106dda5 |
|
MD5 | 40b4048430457f96787fd6b762cf3c1e |
|
BLAKE2b-256 | 19d462b92179275780793df3b20445df0096b1f76016e29febb0b0f636c6d4b2 |