Shiyang,
   Thanks for the information. However, i could not figure out external 
numbering for buses with inner indices 591,3574. Does the n2i variable in 
ext2int.m hold the external to internal index transformation? If so, then 
find(n2i == 591) returned 228 which i assume is the external numbering. This 
bus is listed in the some branch to and from bus list. find(n2i == 3574) 
returned an empty matrix.

Hence, i wrote a small topological check code to find which buses are isolated.

%% define named indices into bus, gen, branch matrices
[PQ, PV, REF, NONE, BUS_I, BUS_TYPE, PD, QD, GS, BS, BUS_AREA, VM, ...
    VA, BASE_KV, ZONE, VMAX, VMIN, LAM_P, LAM_Q, MU_VMAX, MU_VMIN] = idx_bus;
[F_BUS, T_BUS, BR_R, BR_X, BR_B, RATE_A, RATE_B, RATE_C, ...
    TAP, SHIFT, BR_STATUS, PF, QF, PT, QT, MU_SF, MU_ST, ...
    ANGMIN, ANGMAX, MU_ANGMIN, MU_ANGMAX] = idx_brch;
[GEN_BUS, PG, QG, QMAX, QMIN, VG, MBASE, GEN_STATUS, PMAX, PMIN, ...
    MU_PMAX, MU_PMIN, MU_QMAX, MU_QMIN, PC1, PC2, QC1MIN, QC1MAX, ...
    QC2MIN, QC2MAX, RAMP_AGC, RAMP_10, RAMP_30, RAMP_Q, APF] = idx_gen;

data = 'case3375wp';

%% read data
mpc = loadcase(data);

isolated_bus = [];
nbranch = length(mpc.branch(:,1));
nbus = length(mpc.bus(:,1));
% Include only ON branches
kk = find(mpc.branch(:,BR_STATUS) == 1);
branch = mpc.branch(kk,:);
for(i=1:nbus)
  % Check if bus i is in the from or to bus list,
  % If not then add it to the list of isolated buses
  ii = find(branch(:,F_BUS) == mpc.bus(i,BUS_I));
  jj = find(branch(:,T_BUS) == mpc.bus(i,BUS_I));
  if(isempty(ii) & isempty(jj))
    isolated_bus = [isolated_bus;mpc.bus(i,BUS_I)];
  end
end

and found that bus 10287 (external numbering) is isolated. It's internal number 
is 285. Setting its bus type to NONE (4) resulted in converged power flow.

Thanks,
Shri

On May 16, 2012, at 12:06 PM, ?????D wrote:

> Shri,
> 
> I think you are right. There may be some problems with case3375wp.
> 
> sprank(J) = 6355 < 6357, the size of J. So the Jacobian matrix is surely 
> singular.
> 
> As far as I know, Matpower doesn??t apply a topological check before PF 
> calculation. So if some parts of the system are actually isolated but not 
> assigned the bus type ??4?? (none) to, Jacobian matrix will have all-zero 
> rows and columns, then singular.
> 
> For case3375wp, bus 591, 3574 (inner index) are actually isolated. You could 
> find their external index; assigned them bus type 4; then run the case again.
> 
> I think Dr. Zimmerman may correct this mistake in the next version.
> 
>  
> 
> Shiyang Li
> 
>  
> -----????????-----
> ??????: [email protected] 
> [mailto:[email protected]]???? Shrirang Abhyankar
> ????????: 2012??5??16?? 23:57
> ??????: MATPOWER discussion forum
> ????: case3375wp
>  
> There seems to be something amiss with the case3375wp data. Matlab complains 
> of singular Jacobian matrix.
>  
> mpopt= mpoption;
> mpoption(31) = 2;
> runpf('case3375wp',mpopt,'pfresults');
>  
> (printpf is commented out)
>  
> it    max P & Q mismatch (p.u.)
> ----  ---------------------------
>   0         2.442e+01Warning: Matrix is singular to working precision.
> > In newtonpf at 125
>   In runpf at 224
>  
>   1               NaNWarning: Matrix is singular to working precision.
> > In newtonpf at 125
>   In runpf at 224
>  
>   2               NaNWarning: Matrix is singular to working precision.
> > In newtonpf at 125
>   In runpf at 224
>  
>   3               NaNWarning: Matrix is singular to working precision.
> > In newtonpf at 125
>   In runpf at 224
>  
>   4               NaNWarning: Matrix is singular to working precision.
> > In newtonpf at 125
>   In runpf at 224
>  
>   5               NaNWarning: Matrix is singular to working precision.
> > In newtonpf at 125
>   In runpf at 224
>  
>   6               NaNWarning: Matrix is singular to working precision.
> > In newtonpf at 125
>   In runpf at 224
>  
>   7               NaNWarning: Matrix is singular to working precision.
> > In newtonpf at 125
>   In runpf at 224
>  
>   8               NaNWarning: Matrix is singular to working precision.
> > In newtonpf at 125
>   In runpf at 224
>  
>   9               NaNWarning: Matrix is singular to working precision.
> > In newtonpf at 125
>   In runpf at 224
>  
> 10               NaN
> Newton's method power flow did not converge in 10 iterations.
>  
> Thanks,
> Shri

Reply via email to