필터 지우기
필터 지우기

I couldn't fix problem

조회 수: 3 (최근 30일)
yasin
yasin 2013년 10월 26일
댓글: yasin 2013년 10월 26일
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

채택된 답변

per isakson
per isakson 2013년 10월 26일
편집: per isakson 2013년 10월 26일
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
yasin
yasin 2013년 10월 26일
편집: yasin 2013년 10월 26일
I want to create this filter
yasin
yasin 2013년 10월 26일
thank you

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

Community Treasure Hunt

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

Start Hunting!

Translated by