Transcript

ALGORITMO EM MATLAB PARA MONTAGEM DE MATRIZ YBUS DE LINHAS DE TRANSMISSAO

%****************************************************************************% FUNCTION YBARRA% Monta as matrizes condutancia [G] e susceptancia [B].%% Rserie = vetor resistencia (pu) dos elementos serie% Xserie = vetor reatancia (pu) dos elementos serie% Yshunt = vetor susceptancia shunt total da linha% Tape = Relacao de transformacao do elemento: 0-linha% CapRea = Potencia reativa na tensao nomina de capacitores e reatores% Nbarra = Numero de barras do sistema% Nramos = Numero de elementos em serie entre barras (linhas ou% trafos)% BarraI = Barra DE de um elemento serie (linha ou transformador)% BarraJ = Barra PARA de um elemento serie%% Autor: Daniel Anjos e Silva%****************************************************************************

%function [B,G,Rserie,Xserie,Ybus] = YBARRA(Rserie,Xserie,Yshunt,Tape,CapRea,Nbarra,Nramos,BarraI,BarraJ)function Ybus = YBARRA(Rserie,Xserie,Yshunt,Tape,Nbarra,Nramos,BarraI,BarraJ)

G = spalloc(Nbarra,Nbarra,4*Nbarra);B = spalloc(Nbarra,Nbarra,4*Nbarra);Zserie = Rserie.*Rserie + Xserie.*Xserie;Rserie = Rserie./Zserie;Xserie = -Xserie./Zserie;for l = 1:Nramos i = BarraI(l); j = BarraJ(l); Tij = Tape(l); Gij = Rserie(l); Bij = Xserie(l); Ysh = Yshunt(l); if ( Tij == 0.0 ), G(i,i) = G(i,i) + Gij; G(j,j) = G(j,j) + Gij; G(i,j) = G(i,j) - Gij; G(j,i) = G(i,j); B(i,i) = B(i,i) + Bij + Ysh; B(j,j) = B(j,j) + Bij + Ysh; B(i,j) = B(i,j) - Bij; B(j,i) = B(i,j); else G(i,i) = G(i,i) + Tij * Tij + Gij; G(j,j) = G(j,j) + Gij; G(i,j) = G(i,j) - Tij * Gij; G(j,i) = G(i,j); B(i,i) = B(i,i) + Tij * Tij * Bij; B(j,j) = B(j,j) + Bij; B(i,j) = B(i,j) - Tij * Bij; B(j,i) = B(i,j); endend%for i = 1:Nbarra% B(i,i) = B(i,i) + CapRea(i);%end

Ybus = G + 1i*B;