How can i know the abscissa of the maximum of a curve ?

6 Ansichten (letzte 30 Tage)
Mallouli Marwa
Mallouli Marwa am 20 Okt. 2016
Beantwortet: John D'Errico am 20 Okt. 2016
Hi
I have a curve Amplitude=f(frequency) and i want to know the abscissa of the maximum.
Please help me.
  2 Kommentare
Adam
Adam am 20 Okt. 2016
Isn't the abscissa just the y-axis value of your function - i.e. Amplitude?
So just run your function and call
max( Amplitiude )
on the result.
John D'Errico
John D'Errico am 20 Okt. 2016
Adam - Sorry, but no. Back to grade school for this.
https://en.wikipedia.org/wiki/Abscissa
The y axis is the ordinate, not the abscissa.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

John D'Errico
John D'Errico am 20 Okt. 2016
So you have a function of a single variable, and you need to know the location of the min.
If you have the function itself, then use fminbnd.
If you have only data points, thus (x,y) pairs, then use min. It returns the index of the minimum value(look at the second output argument), then use that index on the vector of x values.
If you want to find a minimum on data points, but you need an interpolated minimum, then you can use fminbnd on a spline fit. Don't expect it to be very good though.

Kategorien

Mehr zu Interpolation finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by