MATLAB: How can i display a list of maximum of a curve

MATLAB

Hi
I have a curve Amplitude=f(frequency) and i want to know the abscissa of all maximums.
Please help me.

Best Answer

Try looking up the findpeaks() function.
https://www.mathworks.com/help/signal/ug/find-peaks-in-data.html
Seems to take in a curve and find the peaks and output the location of those 'n' # of peaks.
your code should look something like this:
________________________________________
frequency = some matrix of frequencies;
Amplitude=f(frequency);
[pks, locs] = findpeaks(Amplitude);
%if you want to see it is true
plot(frequency,Amplitude,frequency(locs),pks)
________________________________________________
Your abscissa's that you are looking for would be essentially frequency(locs), where locs is the index number in the matrix 'frequency' that contains your independent variable (called frequency or x or abscissa) corresponding to your peaks.
Let me know if you have any questions.