polynomial interpolation with lagrange form!!!

4 visualizzazioni (ultimi 30 giorni)
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 Commenti
Torsten
Torsten il 25 Gen 2022
And the error message ?

Accedi per commentare.

Risposta accettata

Alagu Sankar Esakkiappan
Alagu Sankar Esakkiappan il 28 Gen 2022
Modificato: Alagu Sankar Esakkiappan il 28 Gen 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:
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.

Più risposte (0)

Categorie

Scopri di più su Polynomials in Help Center e File Exchange

Prodotti


Release

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by