Peak Value from bodemag plot

I am trying to calculate the peak value of the bodemag plot. Attached is the code I am trying to use
[gpeak,fpeak] = getPeakGain(SS_1)
gpeak_dB = 20*log10(gpeak);
However that doesn't seem to work for bodemag plots, only for bode plots because it isn't giving me the correct peak for the plot attached.
How do I calculate the peak of a bodemag plot?

 Accepted Answer

Try this:
F = openfig('untitled.fig');
getF = get(F);
Lines = findobj(F, 'Type','Line');
for k = 1:numel(Lines)
X{k} = Lines(k).XData;
Y{k} = Lines(k).YData;
[Ymax,Idx] = max(Y{k});
FM{k,:} = [X{k}(Idx) Ymax Idx];
end
MagFreq = array2table(cell2mat(FM), 'VariableNames',{'Frequency','Magnitude','Index'})
producing:
MagFreq =
Frequency Magnitude Index
_________ ___________ _____
NaN NaN 1
NaN NaN 1
1e-20 1.2722e-14 1
1e-20 0 1
1e-20 1.2722e-14 1
1e-20 2.5444e-14 1
1e-20 0 1
1e-20 1.7358e-14 1
1.6051 0.52101 35
1e-20 -2.5073e-14 1
1.3159 0.062431 32
1e-20 -2.5073e-14 1
It is not difficult to extract the values, however it is definitely not straightforward.

4 Comments

Hi Star Strider,
Thanks for the quick response.
If I am looking at the table correctly, i would pick the largest magnitude in the table as the maximum value of the bodemag plot, is that correct?
Thanks
My pleasure.
If I am looking at the table correctly, i would pick the largest magnitude in the table as the maximum value of the bodemag plot, is that correct?
It depends on the information you want. There are 12 entries, 10 of them finite. I have no idea what they represent because I only have the figure that plots them.
So, probably yes. The maximum magnitude is 0.52101 dB at 1.6051 rad/s
Note that the values are in dB because they are plotted in dB. No conversion to dB is necessary.
That makes a lot of sense! Thank you so much for your input and help!
As always, my pleasure!

Sign in to comment.

More Answers (0)

Asked:

JD
on 1 Mar 2020

Commented:

on 1 Mar 2020

Community Treasure Hunt

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

Start Hunting!