Conv two continuous time functions
    8 views (last 30 days)
  
       Show older comments
    
given y(t) and x(t), it is asked to conv them. Note: x(t)=dirac(t-3)-dirac(t-5). The conv result should sum y(t-3)-y(t-5) but it gives me:

y=@(t) 1.0*(t>=0).*exp(-3*t);
x=@(t) 1.0*(t==3)-1.0*(t==5);
delta=0.0001;
tx=2:delta:6; %tx=(-200:300)*delta;
ty=-1:delta:1.5; % ty=(-100:300)*delta;
c=conv(y(ty),x(tx))*delta;
tc=(tx(1)+ty(1)):delta:(tx(end)+ty(end));
figure()
title('c')
subplot(3,1,1)
plot(tx,x(tx))
xlabel('n'); title('x(t)'); ylim([min(x(tx))-1,max(x(tx))+1]); grid on
subplot(3,1,2)
plot(ty,y(ty))
xlabel('n'); title('h(t)'); ylim([min(y(ty))-1,max(y(ty))+1]); grid on
subplot(3,1,3)
plot(tc,c);
xlabel('n'); title('x(t)*h(t)');ylim([min(c)-1,max(c)+1]); grid on
What can i do to solve the problem?
Thanks
0 Comments
Accepted Answer
More Answers (1)
  Immanuel Manohar
 on 2 Oct 2019
        Your dirac Delta is wrong... you're attempting continuous time convolution but you are using unit impulse instead of dirac delta for convolution. To get the correct answer, your dirac delta approximation should have the height of 1/delta. 
1 Comment
  zhitao Luo
 on 2 Jun 2020
				See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


