Borrar filtros
Borrar filtros

I couldn't fix problem

3 visualizaciones (últimos 30 días)
yasin
yasin el 26 de Oct. de 2013
Comentada: yasin el 26 de Oct. de 2013
if true
eksi_kisim=linspace(0,1,2000);
arti_kisim=linspace(1,0,2000);
filter=[zeros(1,3513) eksi_kisim arti_kisim zeros(1,3513)];
channel_st= abs(shift_xx).*filter;
filter_st=ifft(channel_st);
figure;
dt=filter_st.*cos(wc*t);
plot(t,abs(dt));
title('dt grafic');
xlabel('time');
ylabel('dt');
axis([0 1 -5 15]);
figure;
tt=fft(dt);
plot(abs(fftshift(tt)));
title('dt spectrum grafic');
xlabel('frequency');
ylabel('dt');
% filter code
[B,A]= butter(5,0.25);
out=filter(B,A,dt);
figure;
plot(t,out);
axis([0 1 0 8]);
% code
end
out=filter(B,A,dt); in that line Subscript indices must either be real positive integers or logicals. this error come up

Respuesta aceptada

per isakson
per isakson el 26 de Oct. de 2013
Editada: per isakson el 26 de Oct. de 2013
In this line
filter=[zeros(1,3513) eksi_kisim arti_kisim zeros(1,3513)];
you make filter a double array. Because of that the function filter cannot be called. Surely, that was not your intention.
  2 comentarios
yasin
yasin el 26 de Oct. de 2013
Editada: yasin el 26 de Oct. de 2013
I want to create this filter
yasin
yasin el 26 de Oct. de 2013
thank you

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by