You are on page 1of 5

Mtodo recursivo para construir la tabla

Es un algoritmo que permite construir la tabla adicionando o removiendo una unidad a la


vez.
Las unidades de generacin pueden considerarse de dos o varios estados.
La probabilidad depender de los estados que tome la unidad de capacidad C Mw e
indisponibilidad U.
Cuando est en servicio (probabilidad 1-U), la desconexin de los X Mw ocurrira en el
sistema previo. La probabilidad ser (1-U)px.
Cuando est en salida forzada (probabilidad U), solamente una salida forzada de (X-C) Mw
del sistema original determinar una salida de X Mw del sistema nuevo. La probabilidad ser:
Up(X-C)
La probabilidad de que salgan X Mw ser:
p'( XMw) (1 U ) p( X ) Up( X C )

Para la primera unidad:


p '( 0 ) 1 U

p '( C ) U

p'( X C ) 0 X C Mw

Para el caso de unidades multiestado, la probabilidad de que se desconecten X Mw viene


dado por:
n
p'( X ) ai p( X Ci )
i 1

n = nmero de estados (incluye disponibilidad e indisponibilidad completas).


ai = probabilidad de encontrar el estado i de la unidad adicionada.
Ci = capacidad desconectada en el estado i.
Los estados acumulativos, es decir, la probabilidad de que se desconecten X Mw o ms viene
dado por:
P'( XMw) (1 U ) P( X ) UP( X C )

n
P'( X ) ai P( X Ci )
i 1

Para la primera unidad:


P '( 0 ) 1

P '( C ) U

P'( X C ) 1 X C Mw

Ejemplo
Construir la tabla de capacidades desconectadas para un sistema de tres unidades.
UNIDAD CAPACIDAD
MW f/da r/da
1 25 0.01 0.49
2 25 0.01 0.49
3 50 0.01 0.49
clear;
clc;
%restingimos el ingreso hasta 20 generadores
num=input('Ingrese numero de generadores')
clc
while num>20
num=input('Ingrese numero de generadores')
clc
end
%se valida las potencias de ingreso entre un rango de de 10MW A 150MW
for i=1:num
fprintf('\nIngrese capacidad %d [MW]: ',i);
P(i)=input('');
clc
while P(i)<10 || P(i)>1500
fprintf('\nIngrese capacidad %d [MW]: ',i);
P(i)=input('');
clc
end
end

%ingreso tasa de falla y tasa de repacacion


for i=1:num
fprintf('\nIngrese tasa de falla %d: ',i);
tfalla(i)=input('');
fprintf('\nIngrese tasa de reparacin %d: ',i);
trepa(i)=input('');
clc
U(i)=tfalla(i)/(tfalla(i)+trepa(i));
end
fprintf('\t Los valores ingresados son:%d: ');
fprintf('\n \t P[MW] \t t-falla \t t-reparacin \n');
disp([P' tfalla' trepa'])

%Calculo de las combinaciones segun el ingreso de potencias

for i=1:length(P)
COMB(i)=P(i)

%M es la matriz de combinaciones posibles


M=de2bi(0:(2^i)-1);

% Y es la matriz con potencias combiandas


COMBT=M*COMB'
%ordenamos de menor a mayor y almacenamos en Y
k=1;
while k<=length(COMBT)
j=1;
while j<=length(COMBT)
if k~=j
if COMBT(k)==COMBT(j)
COMBT(j)=[];
end
end
j=j+1;
end
k=k+1;
end

display(COMBT)

%calculos de probabilidad
res(1,1)=1;
res(2,1)=0;
for j=1:length(COMBT)

if j==1

res(j,i+1)=1;
else
res(j,i+1)=(1-U(i))*res(j,i)+U(i)*res(j-1,i);
res(j+1,i+1)=0;
end
end
end
fprintf(' \t \t los resultados son \n');
disp(res)

UNIDAD CAPACIDAD
MW f/da r/da
1 25 0.02 0.60
2 25 0.02 0.60
3 50 0.02 0.60
4 50 0.02 0.60
5 100 0.02 0.60

Paso 1 Paso 2 Paso 3 Paso 4 Paso 5


1 1 1 1 1
0.0323 0.0635 0.0937 0.1229 0.1512
0.0010 0.0031 0.0060 0.0098
0 0.0001 0.0003
0 0
0
c

Inicio

num=ingrese vectores

num 20

For i=1 num

P(i)=?

For = 1 num

T fallo (i)

T reparacion (i)

Res (1,1)=0
Condiciones iniciales
Res (2,1)=0

You might also like