Professional Documents
Culture Documents
PRACTICA N 4
Tema:
Alumno:
Cdigo:
12190096
Horario:
I.
OBJETIVO:
Reforzar los conceptos tericos sobre consolacin, comprender las limitaciones del
ordenador para trabajar con las seales y su consolacin, comprender las limitaciones del
ordenador para trabajar con las seales y su consolacin, comparar los resultados del
ordenador con analticos.
II.
PROCEDIMIENTO:
Para esta prctica hemos desarrollado una funcin que el ayudara a realizar cada ejercicio.
1 paso: En el programa Matlab, ingresar al men File New M-File. Aqu crearemos
la funcin myconv.m
2 paso: digitar en el editor lo siguiente:
Function[y,X]=myconv(x,h)
%esta funcin evala la consolacin de dos funciones finitas
x=x(:);
h=h(:);
nx=length(x);
nh=length(h);
ny=nx+nh-1;
X=zeros(nh,ny)';
for i=1:nh
X((1:nx)+(i-1),i)=x;
end
y=X*h;
y=y(1:1:ny);
y=y/max(abs(y));
3 paso: guardar el archivo con el nombre myconv
1.1. Vamos a calcular la consolacin entre dos seales x(t) y h(t) que, en este caso, van a
ser iguales, x y h van a ser (ambas) un pulso rectangular centrado en t=0, de amplitud
1 y que se extender desde t=-1 a t=1.
SOLUCION
Veamos como generarla en Matlab:
>> t=-5:0.1:5; % base de tiempo de x
>> L=length(t); % longitud
>> p1=find(t==-1);
>> p2=find(t==1); %localizar los puntos
>> x=zeros(1,L);
>> x(p1:p2)=1;% pulso entre -1 y 1
>> figure(1)
>> plot(t,x)
>> h=x; %h es igual a x
>> figure(2)
>> plot(t,h)
>> y=myconv(h,x);% usamos la funcion creada
>> w=-10:0.1:10;% base de tiempo de y
>> figure(3)
>> plot(w,y)
SOLUCION
Para generar el pulso rectangular h(t9 lo haremos como en el ejercicio anterior,
mientras que para generar la funcin triangular x(t) lo haremos de la siguiente
manera:
>> p3=find(t==-2);
>> p4=find(t==0);
>> p5=find(t==2);
>> x=zeros(1,L);
>> x(p3:p4)=t(p3:p4)/2+1;
>> x(p4:p5)=-t(p4:p5)/2+1;
>> figure(4)
>> plot(t,x)
>> h=zeros(1,L);
>> h(p4:p5)=1;
>> figure(5)
>> plot(t,h)
>> y=myconv(h,x);
>> figure(6)
>> plot(w,y)
2.1 Empezaremos por generar una seal que podramos llamar cuasi-finita como es el
caso de
3
x (t )= e
2
3
t .u(t)
2
prcticamente nulos).
Luego haremos la consolacin con la funcin rectangular del ejercicio anterior
SOLUCION:
Para generar x(t) primero debemos generar la funcin pulso unitario u(t), que es
una funcin igual 1 pata t>=0 y para t<0.
>> p6=find(t==5);
>> u=zeros(1,L);
>> u(p4:p6)=1;
>> figure(7)
>> plot(t,u)
>> x=(3/2)*exp(-3*t/2).*u;
>> figure(8)
>> plot(t,x)
>> y=myconv(h,x);
>> figure(9)
>> plot(w,y)
2.2 Ahora vamos a cambiar la seal de entrada por h(t)=u(t). Ntese que vamos a aumentar
considerablemente la complicacin porque se trata de dos seales infinitas y, adems, la h(t) no
tiende a cero como si lo hace x(t).
>> h=u;
>> figure(10)
>> plot(t,h)
>> y=myconv(h,x);
>> figure(11)
>> plot(w,y)
>> h=cos(2*pi*t);
>> figure(12)
>> plot(t,h)
>> y=myconv(h,x);
>> figure(13)
>> plot(w,y)