Plotting a magnitude response calculated by hand

10 次查看(过去 30 天)
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
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.

类别

Help CenterFile Exchange 中查找有关 Get Started with Optimization Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by