parent
0561f915c9
commit
ff2f5510d8
17
dataRead.m
17
dataRead.m
|
|
@ -1,15 +1,22 @@
|
|||
function [ fsY0, fsY1, fsY2,phaseASpotLoadP,phaseBSpotLoadP,phaseCSpotLoadP ...
|
||||
phaseASpotLoadQ,phaseBSpotLoadQ,phaseCSpotLoadQ,setIJ,nodeNum,Balance,phaseABCY] = dataRead(lineZ,dataFile )
|
||||
data=dlmread(dataFile);
|
||||
baseHighU=data(1,2);
|
||||
fsY0=0;
|
||||
fsY1=0;
|
||||
fsY2=0;
|
||||
zeroEntries=find(data(:,1)==0);
|
||||
lines=data(zeroEntries(1)+1:zeroEntries(2)-1,:);
|
||||
[setIJ,nodeNum]=numberNode(lines);
|
||||
if size(setIJ,2)>size(setIJ,1)
|
||||
setIJ=setIJ';
|
||||
end
|
||||
Balance=data(1,1);
|
||||
Balance=nodeNum(setIJ==Balance);
|
||||
%%three-phase
|
||||
phaseABCY=sparse(3*length(nodeNum),3*length(nodeNum));
|
||||
%% 601 begin
|
||||
[fs30,fs31,fs32,retphaseABCY]=lineWithConfig(setIJ,nodeNum,lineZ,lines,601);
|
||||
[fs30,fs31,fs32,retphaseABCY]=lineWithConfig(setIJ,nodeNum,lineZ,lines,601,baseHighU);
|
||||
%phaseABCY ÈýÏàµÄµ¼ÄɾØÕó3n x 3n ά
|
||||
fsY0=fs30;
|
||||
fsY1=fs31;
|
||||
|
|
@ -17,12 +24,18 @@ fsY2=fs32;
|
|||
phaseABCY=phaseABCY+retphaseABCY;
|
||||
% 601 end
|
||||
%% 602 begin
|
||||
[fs30,fs31,fs32,retphaseABCY]=lineWithConfig(setIJ,nodeNum,lineZ,lines,602);
|
||||
[fs30,fs31,fs32,retphaseABCY]=lineWithConfig(setIJ,nodeNum,lineZ,lines,602,baseHighU);
|
||||
fsY0=fsY0+fs30;
|
||||
fsY1=fsY1+fs31;
|
||||
fsY2=fsY2+fs32;
|
||||
phaseABCY=phaseABCY+retphaseABCY;
|
||||
% 602 end
|
||||
%%
|
||||
[fs30,fs31,fs32,retphaseABCY]=lineWithConfig(setIJ,nodeNum,lineZ,lines,123,baseHighU);
|
||||
fsY0=fsY0+fs30;
|
||||
fsY1=fsY1+fs31;
|
||||
fsY2=fsY2+fs32;
|
||||
phaseABCY=phaseABCY+retphaseABCY;
|
||||
%% spot load
|
||||
busNum=length(nodeNum);
|
||||
spotloads=data(zeroEntries(3)+1:zeroEntries(4)-1,:);
|
||||
|
|
|
|||
|
|
@ -1,13 +1,21 @@
|
|||
function [ fs30,fs31,fs32,phaseABCY ] = lineWithConfig(setIJ,nodeNum,lineZ,lines,config )
|
||||
function [ fs30,fs31,fs32,phaseABCY ] = lineWithConfig(setIJ,nodeNum,lineZ,lines,config,baseHighU )
|
||||
phase3Entry=find(lines(:,1)==config);
|
||||
if isempty(phase3Entry)
|
||||
fs30=0;
|
||||
fs31=0;
|
||||
fs32=0;
|
||||
phaseABCY=0;
|
||||
fprintf('warning: line type %d not found.\n',config)
|
||||
return;
|
||||
end
|
||||
phase3Line=lines(phase3Entry,:);
|
||||
phase3Line(:,4)=phase3Line(:,4)/1000;
|
||||
entry=find(lineZ(:,1)==config);
|
||||
phase3R=lineZ(entry+1:entry+3,:);
|
||||
phase3X=lineZ(entry+5:entry+7,:);
|
||||
phase3B2=lineZ(entry+9:entry+11,:);
|
||||
phase3Y=1./(phase3R+1j*phase3X);%原始的三相导纳
|
||||
%phase3Y=1./(1j*phase3X);%原始的三相导纳
|
||||
phase3Z=phase3R+1j*phase3X;
|
||||
phase3Y=inv(phase3Z);
|
||||
%让对角和非对角相等
|
||||
phase3Y(1,3)=phase3Y(1,2);
|
||||
phase3Y(3,1)=phase3Y(2,1);
|
||||
|
|
@ -15,18 +23,7 @@ phase3Y(3,2)=phase3Y(3,1);
|
|||
phase3Y(2,3)=phase3Y(1,3);
|
||||
phase3Y(2,2)=phase3Y(1,1);
|
||||
phase3Y(3,3)=phase3Y(1,1);
|
||||
% phase3Y(1,3)=10;
|
||||
% phase3Y(3,2)=10;
|
||||
% phase3Y(2,3)=10;
|
||||
% phase3Y(2,2)=phase3Y(1,1);
|
||||
% phase3Y(3,3)=phase3Y(1,1);
|
||||
% phase3Y(1,2)=10;
|
||||
% phase3Y(2,1)=10;
|
||||
% phase3Y(3,1)=10;
|
||||
% phase3Y(1,3)=10;
|
||||
%标幺值
|
||||
baseHighU=4.16;
|
||||
baseLowU=0.48;
|
||||
baseS=1;
|
||||
baseY=baseS/(baseHighU^2);
|
||||
phase3Y=phase3Y/baseY;
|
||||
|
|
@ -41,7 +38,7 @@ Tf2p=inv(Tp2f);
|
|||
% Tf2p=[1 1 1;
|
||||
% 1 a^2 a;
|
||||
% 1 a a^2];
|
||||
fs3Y=Tp2f*phase3Y*Tf2p;
|
||||
% fs3Y=Tp2f*phase3Y*Tf2p;
|
||||
Zl=phase3Y(1,1);
|
||||
Zm=phase3Y(2,1);
|
||||
fs3Y=3/3*diag([Zl+2*Zm,Zl-Zm,Zl-Zm]);%这里不是1/3,IEEE上的公式错了。
|
||||
|
|
|
|||
6
run.m
6
run.m
|
|
@ -2,7 +2,7 @@ clc
|
|||
clear
|
||||
lineZ=readLineZ('.\feeder13\lineParameter.txt');
|
||||
[ fsY0, fsY1, fsY2,phaseASpotLoadP,phaseBSpotLoadP,phaseCSpotLoadP ...
|
||||
phaseASpotLoadQ,phaseBSpotLoadQ,phaseCSpotLoadQ,setIJ,nodeNum,Balance,phaseABCY]=dataRead(lineZ,'.\feeder13\data2.txt');
|
||||
phaseASpotLoadQ,phaseBSpotLoadQ,phaseCSpotLoadQ,setIJ,nodeNum,Balance,phaseABCY]=dataRead(lineZ,'.\feeder13\data1.txt');
|
||||
a=exp(1j*2*pi/3);
|
||||
Tp2f=1/3*[1 1 1;
|
||||
1 a a^2;
|
||||
|
|
@ -81,10 +81,6 @@ while(k<=kmax && maxD> EPS)
|
|||
end
|
||||
Vf1=Vmf1.*exp(1j*Vaf1);
|
||||
%%
|
||||
V=[1.0*exp(1j*0);1.0*exp(-1j*pi/180*120);1.0*exp(1j*pi/180*120)];
|
||||
abs(Tp2f*V);
|
||||
Tf2p*Tp2f*V;
|
||||
%%
|
||||
(Vf0.*conj(fsY00*Vf0)+Vf1.*conj(fsY11*Vf1)+Vf2.*conj(fsY22*Vf2))*3;
|
||||
conj(Tf2p*[If0(2);If1(2);If2(2)]).*(Tf2p*[Vf0(2);Vf1(2);Vf2(2)]);
|
||||
IpABC=Tf2p*conj([If0';If1';If2']);
|
||||
|
|
|
|||
Loading…
Reference in New Issue