I have been writing code to implement basic power/optimization
calculations. I started with power flow, then DC power flow, then OPF. I
have been using MATPOWER as a source of case systems and to check my
I am in the process of implementing N-1 (in hopes of moving on to N-1-1).
I need help on two fronts.
1) I am having trouble understanding the workflow/algorithm for these.
Some appear to find violations for different contingencies and then stop.
Others appear to use the violations and update the OPF constraints to
pursue a new dispatch that will result in no violations in the base case
and in as many as possible contingency cases.
a) Are those broad descriptions of the workflow in the ballpark?
b) Given the iterative/decomposed approach is correctly described above,
what are the new constraints that are added to the OPF problem in order to
find a new dispatch? I can't just keep adding "assume 0 flow on this
branch that caused a violation" constraints.
2) If someone has non-propitiatory code that uses MATPOWER to calculate N-1
and/or N-1-1 SCOPF, I would appreciate that being passed along. I'm hoping
to keep checking my code using reasonably tested code. I suppose this
could also be a way of answer question 1b.
Glad to be apart of this list,