How can i find the minimum value of spline data

6 vues (au cours des 30 derniers jours)
esat gulhan
esat gulhan le 8 Août 2020
Commenté : Alan Stevens le 8 Août 2020
How can i find the minimum value of spline curve.
My code is below:
x=[0 0.34906585 0.698131701 1.047197551 1.396263402 1.745329252 2.094395102 2.443460953 2.792526803]
y=[0 0.342020143 0.64278761 0.866025404 0.984807753 0.984807753 0.866025404 0.64278761 0.342020143]
s=spline(x,y)
min(ppval(s))
it does not work

Réponse acceptée

Alan Stevens
Alan Stevens le 8 Août 2020
Change your last two lines to:
s=spline(x,y);
min(ppval(s,x))
(though it's fairly clear that the minimum occurs at x = 0!)
  2 commentaires
esat gulhan
esat gulhan le 8 Août 2020
Hi, thanks anywa but when i try min another spline data
x=[0 0.592699082 1.185398163 1.878097245 2.570796327 3.263495408 3.95619449 4.648893572 5.341592654]
y=[0 -0.55860177 -0.926648825 -0.953153478 -0.540302306 0.121601061 0.727452453 0.997984844 0.808496404]
s=spline(x,y);
min(ppval(s,x))
the answer is -0.953153478, it is wrong, it is the minimum of vector y not the minimum of spline (x,y)
The real minimum of this spline is at aproximately -0.99942679143809 at 1.5707963 it is smaller then -0.95.
So how can i find the real miniumum of spline
Alan Stevens
Alan Stevens le 8 Août 2020
You need a much finer resolution for the interpolation. Try
x=[0 0.592699082 1.185398163 1.878097245 2.570796327 3.263495408 3.95619449 4.648893572 5.341592654];
y=[0 -0.55860177 -0.926648825 -0.953153478 -0.540302306 0.121601061 0.727452453 0.997984844 0.808496404];
X = 0:0.01:max(x);
Y=spline(x,y,X);
plot(X,Y)
min(Y)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Splines dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by