Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
INGENIERÍA DE Versión 03
TELECOMUNICACIONES Fecha 2009-06-09
1 IDENTIFICACIÓN
2 IDENTIFICACIÓN
3 RECURSOS REQUERIDOS
Equipo de cómputo:
Octave o Matlab, TheMathworks Inc.
4 PROCEDIMIENTO
t=linspace(-1,5,1000);
omega=linspace(0,100,1000);
x=exp(-2*t).*(t>=0);
fmagnitud=1./sqrt(2^2+omega.^2);
subplot(2,2,[1 2])
plot(t,x)
xlabel('t');ylabel('x(t)=e^{-at}u(t)')
subplot(224)
plot(omega,-atan(omega/2),'--r')
xlabel('\omega');ylabel('Fase')
Página 1 de 7
GUÍA DE TRABAJO Código FDE 048
INGENIERÍA DE Versión 03
TELECOMUNICACIONES Fecha 2009-06-09
subplot(223)
plot(omega,fmagnitud)
xlabel('\omega');ylabel('|X({\omega})|')
Ahora se analizará una señal rectangular genérica 𝑥(𝑡) = 𝑟𝑒𝑐𝑡(𝑡⁄𝜏). En este caso:
𝑋(𝜔) = 𝜏𝑆𝑎(𝜔𝜏⁄2)
Cuando Matlab/Octave tiene instalada la libería de procesamiento de señales, se puede
disponer de la función 𝑠𝑖𝑛𝑐(𝑡):
Sin embargo, en caso de no contar con la librería en cuestión, debe generarse la función:
function [y]=sa(x)
y=ones(size(x));
i=find(x~=0);
y(i)=sin(x(i))./x(i);
function [y]=rectangulo(x,tau)
y=ones(size(x));
y=[x>=-tau/2]-[x>=tau/2];
Página 2 de 7
GUÍA DE TRABAJO Código FDE 048
INGENIERÍA DE Versión 03
TELECOMUNICACIONES Fecha 2009-06-09
% Señal en el tiempo
x=inline('rectangulo(t,tau)','t','tau');
t=linspace(-2,2,500);
subplot(211)
plot(t,x(t,1),...
t,x(t,.5),'g',...
t,x(t,2),'r')
grid on; axis tight;xlabel('t');ylabel('x(t)');
legend('\tau =1','\tau =0.5','\tau =2')
title('x(t)=rect(t/{\tau})')
axis([min(t) max(t) -.2 1.2])
%Transformada de Fourier
X=inline('tau*sa(omega*tau/2)','omega','tau');
omega=linspace(-4*pi,4*pi,200);
subplot(212)
plot(omega,X(omega,1),...
omega,X(omega,.5),'g',...
omega,X(omega,2),'r')
grid on; axis tight;xlabel('\omega');ylabel('X(\omega)');
legend('\tau =1','\tau =0.5','\tau =2')
title('X(\omega)={\tau}Sa({\omega}{\tau}/2)')
tau=pi;T_0=2*pi;n=[0:10];
C_n=tau/T_0*sa(n*pi*tau/T_0);
stem(n,C_n);xlabel('n');ylabel('C_n')
title(['Espectro de Fourier para {\tau}=',...
num2str(tau),', y T_0=',num2str(T_0)])
Página 3 de 7
GUÍA DE TRABAJO Código FDE 048
INGENIERÍA DE Versión 03
TELECOMUNICACIONES Fecha 2009-06-09
Nota: a medida que aumenta el período, el muestreo espectral se observa más fino, es
decir, la resolución frecuencial mejora. Si el período es igual a 𝜏, toda la energía estará
concentrada en 𝑐𝑛 = 0, es decir, será una señal en DC.
∞
1 ∞
𝐸 = ∫ 𝑥 2 (𝑡)𝑑𝑡 = ∫ |𝑋(𝜔)|2 𝑑𝜔
−∞ 2𝜋 −∞
1 ∞ 2
∫ (𝜏𝑆𝑎(𝜔𝜏⁄2)) 𝑑𝜔
2𝜋 −∞
Matlab/Octave permite calcular integrales simbólicas, siempre y cuando cuente con esta
librería.
La sintaxis int(S,v), retorna la integral indefinida de S con respecto a la variable simbólica
v.
La sintaxis int(S,v,a,b) retorna la integral de S con respecto a la variable simbólica v desde
a hasta b.
En este caso, los valores a y b deben ser numéricos y no simbólicos
2
Por ejemplo, para hallar la integral ∫−2 𝑥 𝑛 𝑑𝑥
syms x n
int(x^n,x,-2,2)
ans =
2^(n+1)*(1+(-1)^n)/(n+1)
Página 4 de 7
GUÍA DE TRABAJO Código FDE 048
INGENIERÍA DE Versión 03
TELECOMUNICACIONES Fecha 2009-06-09
(n + 1) n
2 (1 + (-1) )
--------------------
n+1
>> int(sin(2*x))
ans =
-1/2*cos(2*x)
x=
2*csgn(tau)*pi
Por lo tanto,
1 ∞ 2
𝐸= ∫ (𝜏𝑆𝑎(𝜔𝜏⁄2)) 𝑑𝜔 = 𝑐𝑠𝑔𝑛(𝜏)
2𝜋 −∞
Donde 𝑐𝑠𝑔𝑛(𝑥) es la función signo complejo de x, definida como :
1 𝑠𝑖 𝑅𝑒(𝑥) > 0, 𝑜 𝑠𝑖 𝑅(𝑥) = 0 𝑒 𝐼𝑚(𝑥) > 0
𝑐𝑠𝑔𝑛(𝑥) = {
−1 𝑠𝑖 𝑅𝑒(𝑥) < 0, 𝑜 𝑠𝑖 𝑅(𝑥) = 0 𝑒 𝐼𝑚(𝑥) < 0
En este caso 𝜏 es un valor real, por lo que se puede decir que:
Página 5 de 7
GUÍA DE TRABAJO Código FDE 048
INGENIERÍA DE Versión 03
TELECOMUNICACIONES Fecha 2009-06-09
𝐸=𝜏
function [W,E_W]=parseval(tau,beta,tol)
W=0;
E_W=0;
step=2*pi/tau; %pasos en el dominio de la frecuencia
X_2=@(omega,Tau) (Tau*sa(omega*Tau/2)).^2;
while(abs(errel)>tol)
if (errel>0)
W=W+step;
elseif (errel<0)
step=step/2;
W=W-step;
end
E_W=1/(2*pi)*quad(@(omega) X_2(omega,tau),-W,W);
errel=(E-E_W)/E;
end
Nota: El Matlab conviene usar el comando integral en lugar de quad, pues este último será
eliminado en futuras versiones. En Octave se debe usar quad.
Página 6 de 7
GUÍA DE TRABAJO Código FDE 048
INGENIERÍA DE Versión 03
TELECOMUNICACIONES Fecha 2009-06-09
► Ejecute el programa paso a paso si se busca hallar el ancho de banda que proporciona
el 85% de la energía de una señal rectangular con 𝜏 = 50. Se admite una tolerancia del
0.5%.
► Modifique el programa de tal forma que solo ejecute un ciclo de iteración cuando se
presiona enter. En cada ciclo de iteración debe actualizar el título de tal forma que se
visualice: Número de iteración, ancho de banda actual, energía actual, energía deseada y
error. Debe además mostrar líneas verticales en las frecuencias que constituyen el ancho
de banda en cada iteración.
6 BIBLIOGRAFÍA
LATHI, B. P. (2005). Linear systems and signals. 2 ed. New York: Oxford University
Press. ISBN 139780195158335
Página 7 de 7