How can I get the 2 highest peaks ?

4 views (last 30 days)
Bob
Bob on 21 Mar 2016
Edited: Bob on 26 Mar 2016
1)How can I get the 2 peaks from the picture below? Because these commands gives me the only the highest.
[gpeakG1,fpeakG1] = getPeakGain(G1);
gpeakG1_dB = 20*log10(gpeakG1);

Accepted Answer

Star Strider
Star Strider on 25 Mar 2016
I would use the bode function with three output arguments, then use findpeaks with the ‘mag’ and ‘wout’ arguments:
[mag,phase,wout] = bode(sys);
[pks,locs] = findpeaks(mag, wout);
Add the name-value pair arguments you need to get the result you want. The findpeaks function has considerable flexibility, but how much depends on your version of MATLAB, so be sure to read the relevant documentation for your version.
  4 Comments
Bob
Bob on 25 Mar 2016
Thank you it works.

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 22 Mar 2016
For #2, did you take a look at findpeaks()? (Requires the Signal Processing Toolbox.)

Community Treasure Hunt

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

Start Hunting!