Commit e33fda52 authored by Juha Kiviluoma's avatar Juha Kiviluoma
Browse files

Updating issue #47. It should now be possible to use same reserve for multiple...

Updating issue #47. It should now be possible to use same reserve for multiple categories. So, a unit can have a multiplier in the new table p_nuRes2Res indicating the ratio at which e.g. primary reserve from the unit can contribute to secondary reserve.
parent 875ac16f
......@@ -170,6 +170,7 @@ alias(op, op_, op__);
alias(eff, eff_, eff__);
alias(fuel, fuel_);
alias(effLevel, effLevel_);
alias(restype, restype_);
......@@ -53,6 +53,7 @@ Parameters
p_nReserves(node, restype, *) "Data defining the reserve rules in each node"
p_nuReserves(node, unit, restype, *) "Reserve provision data for units"
p_nnReserves(node, node, restype, up_down) "Reserve provision data for node node connections"
p_nuRes2Res(node, unit, restype, up_down, restype) "One type of reserve can be used also in second reserve category (with a possible multiplier)"
p_gnPolicy(grid, node, param_policy, *) "Policy data for grid, node"
p_groupPolicy(group, param_policy) "Two-dimensional policy data for groups"
p_groupPolicy3D(group, param_policy, *) "Three-dimensional policy data for groups"
......@@ -42,6 +42,7 @@ $loaddc restypeReleasedForRealization
$loaddc p_nReserves
$loaddc p_nuReserves
$loaddc p_nnReserves
$loaddc p_nuRes2Res
$loaddc ts_reserveDemand
$loaddc p_gnBoundaryPropertiesForStates
$loaddc p_gnPolicy
......@@ -100,6 +100,12 @@ q_resDemand(restypeDirectionNode(restype, up_down, node), ft(f, t))
+ v_reserve(restype, up_down, node, unit, f+df_reserves(node, restype, f, t), t)
) // END sum(nuft)
// Reserve provision from other reserve categories when they can be shared
+ sum((nuft(node, unit, f, t), restype_)${p_nuRes2Res(node, unit, restype, up_down, restype_)},
+ v_reserve(restype_, up_down, node, unit, f+df_reserves(node, restype_, f, t), t)
* p_nuRes2Res(node, unit, restype, up_down, restype_)
) // END sum(nuft)
// Reserve provision to this node via transfer links
+ sum(gn2n_directional(grid, node_, node)${restypeDirectionNodeNode(restype, up_down, node_, node)},
+ (1 - p_gnn(grid, node_, node, 'transferLoss') )
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