Finding a parabolic function having two known points and curve shape

Hi,
I want to build a vector y that follows a parabolic function having two sets of points: (1,0.03) and (n,0), being n a variable that is defined earlier in my code. This means that the vector indexes go from 1 to n, being y(1) = 0.03 and y(n) = 0.
The curve must look like this (pardon my sloppy Paint skills):
I thought of creating a for loop, but don't know what to put inside it. Something like:
for i = 1:n
y(i) = %(insert polynomial function which I can't figure out here)
end
Any thoughts?
Thanks!

 Réponse acceptée

Matt J
Matt J le 17 Oct 2018
Modifié(e) : Matt J le 17 Oct 2018
p=polyfit([2-n, 1,n], [0, .03,0] ,2);
y=polyval(p,1:n)

3 commentaires

Thanks for your reply! That works. Could you however please explain how you got to this? I may need to adapt it in a few other parts of my code.
Matt J
Matt J le 17 Oct 2018
Modifié(e) : Matt J le 17 Oct 2018
We used polyfit to get the coefficients, p, of the parabola from the known points that it passes through.
Then we used polyval to evaluate the parabola on 1:n.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Curve Fitting Toolbox dans Centre d'aide et File Exchange

Produits

Version

R2015a

Community Treasure Hunt

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

Start Hunting!

Translated by