y_bus.m

来自「蟻拓演算法應用在電力系統的無效功率潮流分析」· M 代码 · 共 23 行

M
23
字号
%  change the bus no. to the connective integer no.
%  remark: let bus 1 is swing bus, bus 2~ ngen+1 is PV bus, bus ngen+2~nbus is PQ bus
a=busdata(:,1);      kb=busdata(:,2);      c=[linedata(:,1), linedata(:,2)];
nbus=length(a);      nbr=size(c,1);
%busdata(:,1)=sort(randperm(nbus))'; 
%for i=1:nbus
 %   Index=find(c==a(i));
  %  linedata(Index)=i;
  %end
%  This program obtains th Bus Admittance Matrix for power flow solution
j=sqrt(-1);
nl = linedata(:,1);     nr = linedata(:,2);        R = linedata(:,3);
X  = linedata(:,4);     Bc = j*(linedata(:,5))/2;  a = linedata(:,6);
Index = find( a<= 0);   a(Index) = 1;
y= ones(nbr,1)./(R + j*X);        %branch admittance
Ybus=zeros(nbus,nbus);   
for k=1:nbr;
    nlk = nl(k);      nrk = nr(k);
    Ybus(nlk,nrk) = Ybus(nlk,nrk) - y(k)/a(k);
    Ybus(nrk,nlk) = Ybus(nlk,nrk);
    Ybus(nlk,nlk) = Ybus(nlk,nlk) + y(k)/(a(k)^2) + Bc(k);
    Ybus(nrk,nrk) = Ybus(nrk,nrk) + y(k) + Bc(k);
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?