[Scilab-users] To find maximum value in a random curve
Dang, Christophe
Christophe.Dang at sidel.com
Thu Feb 20 09:47:48 CET 2014
Hello,
> De la part de bomber1978
> Envoyé : mercredi 19 février 2014 11:32
>
> I have a random 2D-curve which is defined by a set of points
> (I don't know the equation of the curve) [...]
> How can I find the maximum, minimum, & inflexion points on this curve.
This is more a methodology problem than a Scilab problem.
You don't have a model to fit your data, so you have two solutions:
perform a non-parametric analysis, e.g.
the min() and max() functions give you the extrema of the values you have, but you don't have things like inflection point.
smooth the data, extract the second derivative
and detect when it goes through 0.
You can look at the Savitzky-Golay algorithm,
which gives the derivatives.
You have an example of its implementation here when the points are evenly spaced :
http://commons.wikimedia.org/wiki/File:Savitzky-golay_pic_gaussien_bruite.svg
If the point sare not evenly spaced, you then have to perform a polynomial regression on a sliding interval "manually".
Hope this helps.
--
Christophe Dang Ngoc Chan
Mechanical calculation engineer
______________________________________________________________________
This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error), please notify the sender immediately and destroy this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden.
______________________________________________________________________
More information about the users
mailing list