How to plot the frequency response of a discrete cosine function?

My attempt:
I tried doing it but I can't get the freq response to be plotted between pi and pi. Any help would be appreciated.

답변 (1개)

Rick Rosson
Rick Rosson 2015년 11월 14일
편집: Rick Rosson 2015년 11월 14일
L = 1000;
n = 0:L-1;
x1 = fftshift(fft(x))/L;
dw = 2*pi/L;
w = -pi:dw:pi-dw;
stem(w,mag);

댓글 수: 5

Thank you Rick. I got the magnitude right this time. But the phase plot I get a a lot of fluctuations, like noise.
L = 1000;
n = 0:L-1;
x=5*cos((0.13*pi*n)+(pi/13));
x1 = fftshift(fft(x))/L;
dw = 2*pi/L;
w = -pi:dw:pi-dw;
mag=abs(x1)
stem(w,mag);
title('Magnitude Plot');
phase=angle(x1);
figure
plot(w,phase)
title('Phase Plot');
phase = angle(x1);
phase(mag<0.01) = nan;
figure;
plot(w,phase/pi);
ylabel('Phase Angle (pi-radians)');
Rick sorry but I still can't get the phase response. I uploaded the image.
L = 1000;
n = 0:L-1;
x=5*cos((0.13*pi*n)+(pi/13));
x1 = fftshift(fft(x))/L;
dw = 2*pi/L;
w = -pi:dw:pi-dw;
mag=abs(x1)
stem(w,mag);
title('Magnitude Plot');
phase = angle(x1);
phase(mag<0.01) = nan;
figure;
plot(w,phase/pi);
ylabel('Phase Angle (pi-radians)');
Try using stem instead of plot:
stem(w,phase/pi);
Thank you so much Rick. It's working now.

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

카테고리

질문:

2015년 11월 13일

댓글:

2015년 11월 17일

Community Treasure Hunt

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

Start Hunting!

Translated by