%uboost.m- Este es un programa auxiliar que  calcula
%el valor de la  razón de trabajo para el convertidor
%boost en el problema de seguimiento, este programa es 
%llamado por el  programa boostp.m 
%
function f=uboost(M1);
global Alpha z j xd Phi1 Phi2 Phi3 Z0 T Mua
if Mua==0,
	Ter1=((1+Phi1^(M1))/2-Alpha)*Z(j);
	Ter2=0;
	Ter3=0;
	Ter4=Phi3/2*(1+Phi1^(M1));
else
	var1=Phi1^(Mua);
	var2=Phi1^(1-Mua);
	var3=Phi1^(M1);
	var4=Phi1^(-Mua);
	Ter1=(var1*(1+var3)/(1+var1)-Alpha)*z(j);
	Ter2=-sign(Mua)*Phi2*(1-var1)*var1*(1+var3)/(1+var1);
	Ter3=sign(Mua)*Phi2*(2-var1*(1+var3));
	Ter4=Phi3/2*(1-Mua)*(1+var3);
end
f=Ter1+Ter2+Ter3+Ter4+Alpha*xd(j)-xd(j+1)
