Lfybus.m
上传用户:eighthdate
上传日期:2014-05-24
资源大小:270k
文件大小:1k
源码类别:

其他行业

开发平台:

Matlab

  1. %  This program obtains th Bus Admittance Matrix for power flow solution
  2. %  Copyright (c) 1998 by H. Saadat
  3. j=sqrt(-1); i = sqrt(-1);
  4. nl = linedata(:,1); nr = linedata(:,2); R = linedata(:,3);
  5. X = linedata(:,4); Bc = j*linedata(:,5); a = linedata(:, 6);
  6. nbr=length(linedata(:,1)); nbus = max(max(nl), max(nr));
  7. Z = R + j*X; y= ones(nbr,1)./Z;        %branch admittance
  8. for n = 1:nbr
  9. if a(n) <= 0  a(n) = 1; else end
  10. Ybus=zeros(nbus,nbus);     % initialize Ybus to zero
  11.                % formation of the off diagonal elements
  12. for k=1:nbr;
  13.        Ybus(nl(k),nr(k))=Ybus(nl(k),nr(k))-y(k)/a(k);
  14.        Ybus(nr(k),nl(k))=Ybus(nl(k),nr(k));
  15.     end
  16. end
  17.               % formation of the diagonal elements
  18. for  n=1:nbus
  19.      for k=1:nbr
  20.          if nl(k)==n
  21.          Ybus(n,n) = Ybus(n,n)+y(k)/(a(k)^2) + Bc(k);
  22.          elseif nr(k)==n
  23.          Ybus(n,n) = Ybus(n,n)+y(k) +Bc(k);
  24.          else, end
  25.      end
  26. end
  27. clear Pgg