92 Rozdział 8
function zwarcia % function zwarcia
% - czyta dane wezlowe i gałęziowe z wybranego pliku
% - wyznacza macierz admitancji zwarciowych Y % - wyznacza macierz impedancji zwarciowych Z = inv(Y)
% - następnie dla poszczególnych wezlow sieci
% - impedancje zastępcza zwarciowa wezla w omach
% - impedancje zastpecza zwarciowa wezla w omach
% - prąd początkowy zwarciowa w wezle
% - moc zwarciowa w wezle
%
% wybieranie pliku z danymi do obliczeń
wdold=cd;
disp(wdold);
[fname,ścieżka]=uigetfile...
'Wybierz plik z danymi zgodny z formatem siec.m'); eval(['cd(''’,ścieżka,''')']); pwd; % aktualna ścieżka dostępu % czytanie pliku w formacie siec.m zwdat=strtok(fname,1.');
% zwdat -zmienna pamiętajaca nazwę pliku z danymi %
j=sqrt(-l); % definicja mnożnika części urojonej liczby zespolonej
tO=clock; % początek czasu obliczeń % czytanie danych z pliku zwdat wezly=[]; galezie=[];
[wezly,galezie]=feval(zwdat);
[n,mw]=size(wezly); % wymiary tablicy danych węzłowych
[nbr,mbr]=size(galezie); % wymiary tablicy danych gałęziowych %
Yzw=zeros(n,n);
wp=galezie(:,1) ; wk=galezie(: , 2) ; rgal=galezie(:,3); xgal=galezie(:,4); zgal = rgal +j *xgal; ygal=l./zgal;
% macierz admitancji zwarciowych for k=l:nbr
i =wp(k) ; j =wk(k) ;
zg=zgal(k); yg=ygal(k); i f i * j > 0
Yzw(i,i)=Yzw(i,i)+yg; Yzw(i,j)=-ygal(k);
Yzw(j,j)=Yzw(j,j)+yg; Yzw(j,i)=-ygal(k);
end
if i = = 0 Yzw(j,j)=Yzw(j,j)+yg; end