Commit 3bbf20e6 authored by DanaKi404's avatar DanaKi404
Browse files

changes

parent 205bf998
relaxfixedinfeas = 1
relaxfixedinfeas 1
* feasopt 1
iis 1
......@@ -38,7 +38,7 @@ q_balance(gn(grid, node), msft(m, s, f, t)) // Energy/power balance dynamics sol
=E=
// The right side of the equation contains all the changes converted to energy terms
+ p_stepLength(m, f, t) * [((1/p_stepLength(m, f, t))${gnGroup(grid, node,'wastewaterBalance')}) + 1${not gnGroup(grid, node,'wastewaterBalance')}]// Multiply with the length of the timestep to convert power into energy
+ p_stepLength(m, f, t) // Multiply with the length of the timestep to convert power into energy
* (
// Self discharge out of the model boundaries
- p_gn(grid, node, 'selfDischargeLoss')${ gn_state(grid, node) }
......@@ -83,8 +83,8 @@ q_balance(gn(grid, node), msft(m, s, f, t)) // Energy/power balance dynamics sol
+ ts_influx_(grid, node, s, f, t) // Incoming (positive) and outgoing (negative) absolute value time series
// Dummy generation variables, for feasibility purposes
+ vq_gen('increase', grid, node, s, f, t) // Note! When stateSlack is permitted, have to take caution with the penalties so that it will be used first
- vq_gen('decrease', grid, node, s, f, t) // Note! When stateSlack is permitted, have to take caution with the penalties so that it will be used first
// + vq_gen('increase', grid, node, s, f, t) // Note! When stateSlack is permitted, have to take caution with the penalties so that it will be used first
// - vq_gen('decrease', grid, node, s, f, t) // Note! When stateSlack is permitted, have to take caution with the penalties so that it will be used first
) // END * p_stepLength
;
......@@ -1091,9 +1091,8 @@ q_rampUpLimit(ms(m, s), gnuft_ramp(grid, node, unit, f, t))
} ..
// Ramp speed of the unit?
+ (
+ v_genRamp(grid, node, unit, s, f, t)
+ sum(gnuRescapable(restype, 'up', grid, node, unit)${ ord(t) < tSolveFirst + p_gnReserves(grid, node, restype, 'reserve_length')
v_genRamp(grid, node, unit, s, f, t)
+ (sum(gnuRescapable(restype, 'up', grid, node, unit)${ ord(t) < tSolveFirst + p_gnReserves(grid, node, restype, 'reserve_length')
and not gnuOfflineRescapable(restype, grid, node, unit)
},
+ v_reserve(restype, 'up', grid, node, unit, s, f+df_reserves(grid, node, restype, f, t), t) // (v_reserve can be used only if the unit is capable of providing a particular reserve)
......@@ -1226,9 +1225,8 @@ q_rampDownLimit(ms(m, s), gnuft_ramp(grid, node, unit, f, t))
} ..
// Ramp speed of the unit?
+ (
+ v_genRamp(grid, node, unit, s, f, t)
- sum(gnuRescapable(restype, 'down', grid, node, unit)${ ord(t) < tSolveFirst + p_gnReserves(grid, node, restype, 'reserve_length')
v_genRamp(grid, node, unit, s, f, t)
- (sum(gnuRescapable(restype, 'down', grid, node, unit)${ ord(t) < tSolveFirst + p_gnReserves(grid, node, restype, 'reserve_length')
and not gnuOfflineRescapable(restype, grid, node, unit)
},
+ v_reserve(restype, 'down', grid, node, unit, s, f+df_reserves(grid, node, restype, f, t), t) // (v_reserve can be used only if the unit is capable of providing a particular reserve)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment