oemof / oemof-tabular

Load oemof energy systems from tabular data sources.
https://oemof-tabular.readthedocs.io/
BSD 3-Clause "New" or "Revised" License
7 stars 5 forks source link

ExtractionTurbine: Maximal electric capacity does not reduce with heat output #26

Open jnnr opened 3 years ago

jnnr commented 3 years ago

The electrical capacity, or just capacity, of the ExtractionTurbine is not reduced when more heat is produced, but stays the same. Instead of an operation range as sketched in a), the result is an operation range like in b).

ExtractionTurbine_range_of_operation

The reason is that the capacity is set on the electricity output flow, other that in the oemof.solph example, where the capacity is set onto the fuel flow. In the latter case, the constraint follows the iso-fuel lines as shown in the picture a).

I would call this a bug in oemof.tabular because the operation range in a) is what most modelers expect when thinking about an extraction turbine.

Our current workaround is this: We redefine the ExtractionTurbine facade class and set a fuel_capacity on the fuel input, which we get from the capacity by multiplying with the condensing efficiency (https://github.com/modex-flexmex/oemo-flex/pull/109/commits/e653e1b600705ca23473d0c699583b96bb2a2e8b#diff-60ad91b35a63351b018098acda541bc53658590d1cbc7a9d518db584a343295bR644). This only works for the non-investment case at the moment.

Feedback on how to solve this more elegantly and how to proceed with this in oemof.tabular is welcome!

jnnr commented 2 years ago

To solve this while allowing for investment, this has to be approached in solph by setting a constraint on the upper part of the operation range.