Matlab higher order Bode error
Show older comments
Hey,
I searched the site for this problem, people asked same questions, however I couldn't find any working answer for my problem.
The problem is, when I try to draw a Bode plot of second or higher order such as,
>> G=tf([1], [1 1 1]);
>> bode(G)
I get an error message saying
Error using +
Matrix dimensions must agree.
Error in freqgrid>psum (line 387)
p = [zeros(1,l2-l1) p1] + [zeros(1,l1-l2)
p2];
Error in freqgrid>LocalAddPhaseExtrema
(line 349)
rhs1 =
psum(conv(d1,d2),2*[psum(conv(polyder(d2),d1),-conv(polyder(d1),d2))
0]);
Error in freqgrid (line 138)
w = LocalAddPhaseExtrema(w,z{1},p{1});
Error in ltipack.ltidata/freqresp (line
45)
w = freqgrid(z,p,Ts,Grade,Focus);
Error in resppack.ltisource/magphaseresp
(line 34)
[mag,phase,w,FocusInfo] =
freqresp(SysData(ct),grade,wspec,true);
Error in wavepack.waveform/draw (line 25)
feval(this.DataFcn{:});
Error in wrfc.plot/draw (line 17)
draw(wf)
Error in
wrfc.plot/init_listeners>LocalRefreshPlot
(line 79)
draw(this)
Warning: Error occurred while evaluating
listener callback.
> In DynamicSystem/bodeplot (line 140)
In DynamicSystem/bode (line 95)
"Bode" command works for first order transfer functions though.
Can you explain what is the problem ?
Thanks in advance
3 Comments
Star Strider
on 24 Oct 2016
Your code:
G=tf([1], [1 1 1]);
bode(G)
runs without error for me in R2016b, and produces the appropriate plot.
ANIL ALAN
on 25 Oct 2016
Star Strider
on 25 Oct 2016
Hi Anil,
Answers (1)
Joshua Long
on 26 Oct 2016
Edited: Joshua Long
on 26 Oct 2016
This error can occur if the "draw.m" function used to draw the Bode plot is corrupted or if a defined function is getting higher priority over the default system defined function.
To resolve this issue please execute the following commands in you MATLAB command prompt and restart MATLAB:
>> rehash toolboxcache
>> restoredefaultpath
>> savepath
1 Comment
ANIL ALAN
on 27 Oct 2016
Categories
Find more on Dynamic System Models in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!