Is my bode plot inaccurate?

3 views (last 30 days)
Quid
Quid on 17 Feb 2014
Edited: Mischa Kim on 18 Feb 2014
Given the following transfer function
s = tf('s');
P = 125/(s*(s+1)*(s+5));
bode(P);
Why at 5 rad/s is magnitude -3.19 dB?
Should it not be -7.6 dB?
I get -7.6 dB if I compute the magnitude at 5 rad/s:
>> 20*log10(125/(5*(5+1)*(5+5)))
ans =
-7.6042

Accepted Answer

Mischa Kim
Mischa Kim on 18 Feb 2014
Edited: Mischa Kim on 18 Feb 2014
Quid, the Bode plot is correct. To compute the magnitude of the P you need to replace (substitute) the complex frequency s by iw = i5.
syms s
Ps = 125/(s*(s+1)*(s+5));
Pw = subs(Ps,s,i*5);
aPw = double(20*log10(abs(Pw)))
aPw =
-3.180633349627616
pPw = (180/pi)*double(angle(Pw))
pPw =
1.463099324740202e+02
  4 Comments
Quid
Quid on 18 Feb 2014
Edited: Quid on 18 Feb 2014
Mischa, there must be a mistake in your example... phase at 5 rad/s is -214 deg not 146 deg, how is it possible? Look at the diagram that I posted.
Quid
Quid on 18 Feb 2014
Ok thanks, but I don't see how to use the angle function to compute the correct phase at a given frequency, because the angle function always returns angles between [-pi, pi]. I think that there is no simple formula in this case, am I right?

Sign in to comment.

More Answers (0)

Categories

Find more on Get Started with Control System Toolbox in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!