Determining indices upon which a sequence of real numbers is convex

1 visualización (últimos 30 días)
I have a vector, X, of real numbers which has a minimum at index k, where 1<k<n.
I want to determine the smallest index k1 and largest index k2, for which the sequence is strictly convex on k1,..,k,...k2. Here, convexity means 2X(i) < X(i-1)+X(i+1) for k1+1<=i<=k2-1.
In calculus terms, this question is analogous to determining the largest subinterval about a local minimum upon which the function's second derivative is positive.

Respuesta aceptada

Roger Stafford
Roger Stafford el 25 de Jun. de 2014
k1 = k+1-find(diff([x(k+1:-1:1),-inf],2)<=0,'first');
k2 = k-1+find(diff([x(k-1:n),-inf],2)<=0,'first');

Más respuestas (0)

Categorías

Más información sobre Polynomials en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by