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!

 采纳的回答

p=polyfit([2-n, 1,n], [0, .03,0] ,2);
y=polyval(p,1:n)

3 个评论

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.
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.

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息

产品

版本

R2015a

Community Treasure Hunt

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

Start Hunting!

Translated by