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

6 ビュー (過去 30 日間)
Mallouli Marwa
Mallouli Marwa 2016 年 10 月 20 日
回答済み: John D'Errico 2016 年 10 月 20 日
Hi
I have a curve Amplitude=f(frequency) and i want to know the abscissa of the maximum.
Please help me.
  2 件のコメント
Adam
Adam 2016 年 10 月 20 日
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 2016 年 10 月 20 日
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.

サインインしてコメントする。

回答 (1 件)

John D'Errico
John D'Errico 2016 年 10 月 20 日
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.

カテゴリ

Help Center および File ExchangeInterpolation についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by