Dear Matpower Community,

I am using MATPOWER 5.1.
The aim is to convert PSS Sincal grids to the MATPOWER format and run a load 
flow simulation.


I will use an easy example to illustrate the problem. The Slack is on a 20 kV 
voltage level directly connected to a transfomer. Then there is a Sn=1 MVA, 20 
kV/ 400 kV transformer. Followed by a line (5.83 m, NAYY 185 mm²) and a load 
with P=0.1 MW and Q=0 Mvar. The raw file is attached (mintest1.raw).

If I use:
mpc = psse2mpc('mintest1.raw')

The following failure appears:
Error using  ./
Matrix dimensions must agree.

Error in psse_convert_xfmr (line 108)
    R(cz3)  = trans2(cz3,25).^2 ./ trans2(cz3,21) ./ Zbs(fbus(cz3));

This failure only happens if I use a grid with one transformer only, if there 
are several transformer in parallel everything runs fine.

It seems that the variables cw2, cw3, cw23, cz2, cz3 and cz23 are 0x0 matrices 
but they need to be 0x1 matrices. I don´t know if this is a bug or I just 
didn´t understand how this functions works. Nevertheless I changed the 
psse_convert_xfmr.m file by assigning the above mentioned variables (cw2,..) to 
a 0x1 matrix if the grid has only one transformer and now it works seems to 
work and the load flow shows (running PF with Newton-Raphson) the same results 
as in PSS Sincal.

Here is the code I inserted in the two winding transformer section:

if nt2 > 0
    B=size(trans2);                 %%new code
    A=B(1, 1);                      %%new code
    if A==1                         %%new code
    cw2 = zeros(0,1);               %%new code
    cw3 = zeros(0,1);               %%new code
    cw23 = zeros(0,1);              %%new code
    cz2 = zeros(0,1);               %%new code
    cz3 = zeros(0,1);               %%new code
    cz3 = zeros(0,1);               %%new code
    cz23 = zeros(0,1);              %%new code
    else                            %%new code
    cw2 = find(trans2(:,5) == 2);   %% CW = 2
    cw3 = find(trans2(:,5) == 3);   %% CW = 3
    cw23 = [cw2;cw3];               %% CW = 2 or 3
    cz2 = find(trans2(:,6) == 2);   %% CZ = 2
    cz3 = find(trans2(:,6) == 3);   %% CZ = 3
    cz3 = zeros(0,1);
    cz23 = [cz2;cz3];               %% CZ = 2 or 3
    end


It would be nice if anyone could tell me if he had the same problem or if it is 
only with my electrical grids/ raw files.

Kind regards,

Matthias Resch

---------------------------------------------
M.Sc. Matthias Resch
Researcher

Optimized energy systems

Reiner Lemoine Institut gGmbH
Ostendstraße 25
12459 Berlin
Tel.:    +49 30 53042011
Mobile: +49 160 4154188
Fax.:   +49 30 53042010
Email: [email protected]<mailto:[email protected]>
www.reiner-lemoine-institut.de<http://www.reiner-lemoine-institut.de/>

CEO: Dr. Claus Beneking
Amtsgericht Berlin-Charlottenburg, HRB 124659 B


Attachment: mintest1.raw
Description: mintest1.raw

Attachment: psse_convert_xfmr.m
Description: psse_convert_xfmr.m

Reply via email to