It seems to me that you simply want to run an OPF (seems like you are using a
DC power flow model, so that would be rundcopf
<http://www.pserc.cornell.edu//matpower/docs/ref/matpower5.1/rundcopf.html>)
with your loads defined as dispatchable (curtailable) loads. See section 6.4.2
in the MATPOWER User’s Manual
<http://www.pserc.cornell.edu/matpower/docs/MATPOWER-manual-5.1.pdf>. You can
use the load2disp
<http://www.pserc.cornell.edu//matpower/docs/ref/matpower5.1/load2disp.html>
function to convert the loads. If the value of the loads is higher than the
cost of generation, then all load will be served unless load-shedding is
required to maintain feasibility. The OPF automatically enforces the line flow
limits.
Ray
> On Jan 11, 2016, at 5:56 PM, Bijay Hughes <[email protected]> wrote:
>
> Hi Ray,
>
> I have a scenario where a line fails, and this initially failed line triggers
> more failures. This continues until the system experiences a blackout. My
> plan is to prevent blackout by performing a load-shedding. I have
> load-shedding protocol as an optimization problem.
>
> Objective Function:
>
> Maximize loads in the bus
>
> Constraint:
>
> Power flowing in the branches should be always less than the capacity of
> lines.
>
> My question is how to control the power flow in the lines. I have the
> capacity of lines. I guess I need to modify the powerflow code runpf.m or
> makeBdc.m? But the question is which part? Given the capacity of lines, I
> have to solve for the optimum voltage angles such that the load at the buses
> is maximized. This will tell me how much load was needed to curtail to
> minimize the cascading failure. The relation for voltage angles and power
> flow is given by: Pf = BF * Va + PFINJ in makeBdc.m file.
>
> Any help would be greatly appreciated, Ray. I look forward to your replies.
>
> Best,
>
> Bijay