polynomial interpolation with lagrange form!!!
1 view (last 30 days)
Show older comments
Anas Gharsa
on 25 Jan 2022
Commented: Anas Gharsa
on 28 Jan 2022
I implemented a function of lagrange form and i want to use it to interpolate the function f(x) = sin(4x) for some datapoints!! i wrote the script for that but it always gives me error !!! can anyone help me with that !!!
this is my code
xval = 0:10;
pval = xval.^2;
xx = linspace(0,10);
yy = lagrange1(xx,xval,pval);
plot(xval,pval,'o',xx,yy,'.')
4 Comments
Accepted Answer
Alagu Sankar Esakkiappan
on 28 Jan 2022
Edited: Alagu Sankar Esakkiappan
on 28 Jan 2022
Hello!
I see that you're trying to interpolate a polynomial but running into errors. I checked your code along with your function lagrange1 from your comments. It seems that you are running into an indexing error in the function lagrange1 on the line "Pval = Pval + Lval*f(i)". From what I observed using Breakpoint, you are trying to access f(12) when infact f only contains 11 elements to begin with.
Here are the Workspace values before the exact occurence of error:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/876500/image.png)
If you try to evaluate the expression "Pval = Pval + Lval*f(i)" at this point ( based on values from above image ), you access f(12), thereby running into the error. I suggest for easier debugging, Try creating a Breakpoint on the line where error is caused in MATLAB. It'll give a more comprehensive view of the Codeflow and to narrow down exact occurence of error.
More Answers (0)
See Also
Categories
Find more on Polynomials in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!