12.07.2015 Views

Algoritmi per l'interpolazione polinomiale Implementazione MATLAB

Algoritmi per l'interpolazione polinomiale Implementazione MATLAB

Algoritmi per l'interpolazione polinomiale Implementazione MATLAB

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

4 POSIZIONAMENTO DEI NODI 1110.50−0.5T 0(x)T 1(x)T 2(x)−1−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 14.2 cheby.mFigura 5: Polinomi di ChebychevLa function xi = cheby(n) restituisce un vettore x che contiene i primi n nodidi Chebychev. Il nodo k-esimo viene calcolato implementando la relazione( 2k + 1)x k = cos2n + 2 π k = 0, . . . , nnel modo seguente:xi = [0:n-1];xi = cos( (2*xi + 1)/(2*n + 2) * pi );In figura 5 sono plottati i primi 3 polinomi di Chebychev.Lo script test_cheby.m interpola la funzione f = sin(πx) utilizzando sia nodiequispaziati che nodi di Chebychev. Per il calcolo dei polinomi interpolanti sonostate usate le function neville e newton.In figura 6 è mostrato l’errore di interpolazione al variare del grado del polinomiointerpolante e del posizionamento dei nodi. Dal plot si nota che sebbene entrambigli errori decrescano al crescere di n, l’errore dovuto all’utilizzo di nodi di Chebychevsi mantiene più basso.Risulta invece interessante verificare un caso in cui i nodi equispaziati si comportanomolto male. Lo script test_runge.m interpola la funzione di Rungef(x) =11 + 25x 2

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!