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

Ordered segmental unit flow for units having multiple in/out flows

Open nnhjy opened this issue 1 year ago • 2 comments

A SOS2-like implementation is available for unit_flow_ops of individual unit_flows to enforce priority on unit flow segments at lower operating points. The implementation needs to expand for multiple in/out unit flows of a unit.

" One thing to keep in mind is how we would constrain e.g. different fuels in these settings. I guess the only way at this point would be to model this via 2 units with a designated user constraints. Alternatively we could also think of a constraint in the form of (draft example):

sum(unit_flow_op_active(u,n_i,d_i,op,s,t) for (u,n_i,d_i,op,s,t) in
unit_flow_op_indices(unit=u,op=op,s=s,t=t)) <= 1 forall (u,op,s,t)

This could be an optional constraint to have a binary choice of which fuels and corresponding heat rates are used.

Originally posted by @mihlema in https://github.com/spine-tools/SpineOpt.jl/pull/506#discussion_r1127305410 "

nnhjy avatar Apr 21 '23 12:04 nnhjy