On Tue, Mar 15, 2011 at 2:14 PM, aegreen
<address@hidden> wrote:
bpabbott wrote:
>
> pp = spline (x,y);
> pp2 = ppder (ppder (pp));
> d2y_by_dx2 = ppval (pp2, x);
> n = find (abs (d2y_by_dx2) == max (abs (d2y_by_dx2)));
> x_inflection = x(n)
>
Thanks Ben that works great!
I apologize though, typically my data though doesn't have such a discrete
inflection point as I had indicated in the above graph. Is there some way to
use a least squared approach with a piecewise function?
I have inserted an image of the data that I am trying to find an inflection
point in (blue) and the data after it's been filtered with a third order
butterworth filter with a cut off frequency of 0.1Hz, so that you can get an
idea of what I am trying to do.
This problem has been stumping me for months so any thoughts or suggestions
even would be really appreciated, since I understand this is a little
outside the realm of this forum.
http://octave.1599824.n4.nabble.com/file/n3357323/VE.jpeg
--
View this message in context: http://octave.1599824.n4.nabble.com/Inflection-Point-Detection-tp3355507p3357323.html
This is just some ideas that might help. Maybe you have tried it.
If you take the filtered data and curve fit a quadratic to each set of 3 points starting at one end, and then look at the coefficients of each quadratic formula then you should see the points where the quadratic changes from being "open up to open down". This change would be an inflection point.
I hope this is helpful.