Plotting a magnitude response calculated by hand

I have calculated a magnitude response and phase response by hand as:
| H(w) | = | 0.5*[1+cos(w)] |
<H(w) = -w
And now I want to plot the magnitude response, but it does not look like I would expect it to (a lowpass filter). The plot is shown below.
I'm pretty sure my equations are right. So how do it get it to actually look like a magnitude response in the plot? halp.png

回答 (1 件)

Astha Singh
Astha Singh 2018 年 12 月 12 日

1 投票

Hello Stine,
To obtain the expected plot of the magnitude of the frequency response, you would need to plot the same in the frequency (here, 'w') range: (-π,π).
You can set the X-Tick labels in the plot accordingly.
A sample code is attached
w=-linspace(-pi , pi, 100);
mag = abs( 0.5*(1+cos(w)) );
plot(w,mag)
xticks(-pi: pi/2 : pi)
xticklabels({'-\pi', '-\pi/2','0','\pi/2','\pi'})
This leads to the expected low pass frequency response curve for the above system.

カテゴリ

質問済み:

2018 年 12 月 5 日

回答済み:

2018 年 12 月 12 日

Community Treasure Hunt

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

Start Hunting!

Translated by