SpineOpt.jl icon indicating copy to clipboard operation
SpineOpt.jl copied to clipboard

Problems with unit ramp limits

Open Mastomaki opened this issue 8 months ago • 6 comments

Description

Ramping down will be difficult when time resolution changes.

How to reproduce

Set the following unit and unit-output node parameters for a simple generator unit:

fix_units_on: 1 unit_capacity: 100 minimum_operating_point: 0.4 ramp_up_limit: 0.1 ramp_down_limit: 0.1

Set the following model parameters:

temporal block resolution ["1h","1h","1h","1h","4h","4h"] model start: 2021-05-01T00:00:00

We will then have the ramp down limit constraint with t_before and t_after as follows:

t_before=2021-05-01T03:00 (1_hour)->2021-05-01T04:00, t_after=2021-05-01T04:00 (4_hours) ->2021-05-01T08:00

Realized constraint:

3.6 * unit_flow[t_after] >= 640 * units_on[t_after] -200 * units_on[t_before] + 0.9 * unit_flow[t_before] -800 * units_shut_down[t_after]

Let's suppose the the demand (and thus unit output) is as follows:

unit_flow[t_before] = 90 unit_flow[t_after] = 70

It should be possible within the 0.1 ramp limit but the constraint will not be fulfilled unless units_shut_down[t_after] > 0.

Expected behavior The ramping should be possible without shutting down units.

Desktop (please complete the following information):

  • Which SpineOpt version? 0.7.2
  • Which Spineinterface version? 0.13.7

Mastomaki avatar May 30 '24 11:05 Mastomaki