In case24_ieee_rts.m, bus 13 is the reference bus, that is, the BUS_TYPE column (2) is REF (3). In MATPOWER, the reference bus serves as a voltage angel reference (other voltages computed as differences from this bus) and, in the case of power flow, as a real power slack bus (where the power is computed from all other injections and flows).
So, for example, if you open enough lines in the 24-bus example so that a connected section of the network (an island) is no longer connected to the portion containing bus 13, then you will have to set one of the buses in this new island to have BUS_TYPE = REF. -- Ray Zimmerman Senior Research Associate 419A Warren Hall, Cornell University, Ithaca, NY 14853 phone: (607) 255-9645 On Feb 22, 2013, at 2:45 PM, Jiashen Teh <[email protected]> wrote: > Dear Dr Ray, > > Insightful as always! > > However, I wish to understand more about your statement > "ensure that there is a voltage reference bus in each island" > > Take the IEEE 24 bus network for example, > Does Bus 14 , the reference bus is an example of voltage reference bus in a > huge island? In this case, the island is 24 bus network. > > Yours sincerely, > > Jiashen Teh > PhD Student > Electrical Energy & Power Systems Group, School of Electrical & Electronic > Engineering > Ferranti Building (B18), The University of Manchester, M13 9PL, United Kingdom > Tel: +44 (0) 161 306 2263; Mobile: +44 (0) 792 322 4864 > From: [email protected] > [[email protected]] on behalf of Ray Zimmerman > [[email protected]] > Sent: 22 February 2013 19:15 > To: MATPOWER discussion forum > Subject: Re: Problems after certain loops > > The first issue is most likely related to switching off a transmission line > and by so doing creating a disconnected network. MATPOWER should be able to > handle this case if you can ensure that there is a voltage reference bus in > each island. > > In the second case, there is no longer any network. In theory, such a problem > should have a solution if all buses are converted to reference buses, but > that is such a degenerate case that I'm nearly certain MATPOWER will not be > able to handle it. I'm afraid you'll have to find a different way to solve > that problem. > > -- > Ray Zimmerman > Senior Research Associate > 419A Warren Hall, Cornell University, Ithaca, NY 14853 > phone: (607) 255-9645 > > > > > On Feb 22, 2013, at 10:42 AM, Jiashen Teh > <[email protected]> wrote: > >> Dear Dr Ray, >> >> May I know why I have this error message as follow: >> >> Error using opf_model/add_constraints (line 102) >> @opf_model/add_constraints: number of columns of A does not match >> number of variables, A is 24 x 71, nv = 72 >> >> Error in opf_setup (line 228) >> om = add_constraints(om, 'Pmis', Amis, bmis, bmis, {'Va', 'Pg'}); %% nb >> >> Error in opf (line 219) >> om = opf_setup(mpc, mpopt); >> >> Error in runopf (line 96) >> [r, success] = opf(casedata, mpopt); >> >> Error in rundcopf (line 94) >> [varargout{1:nargout}] = runopf(casedata, mpopt, fname, solvedcase); >> >> I run DCOPF for few thousand loops. Randomly at certain iterations only, i >> will have the above message shown. >> >> During each iterations, i will randomly switch on and off certain generators >> and transmission line. The weird thing is that I only have problems at >> certain particular iteration(s) and not before or after the problematic >> iteration. >> >> May I know why? Thanks in advance. >> >> On Second issue, i think this is related as well. >> I add an additional expensive generator at all load buses with sufficient >> generation to meet the load and disable all transmission lines. when I run >> DCOPF in this condition, MATLAB will show me "exceeds matrix index error >> message". >> >> Yours sincerely, >> >> Jiashen Teh >> PhD Student >> Electrical Energy & Power Systems Group, School of Electrical & Electronic >> Engineering >> Ferranti Building (B18), The University of Manchester, M13 9PL, United >> Kingdom >> Tel: +44 (0) 161 306 2263; Mobile: +44 (0) 792 322 4864 >
