Interpolacja jest metoda numeryczna polegająca na wyznaczaniu w danym przedziale tzw. funkcji interpolacyjnej, która przyjmuje w nim z góry zadane wartości w ustalonych punktach, nazywanych węzłami. Stosowana jest ona często w naukach doświadczalnych, gdzie dysponuje się zazwyczaj skończoną liczbą danych do określenia zależności między wielkościami oraz w celu uproszczenia skomplikowanych funkcji, np. podczas całkowania numerycznego.
W naszym zadaniu badaliśmy 3 funkcje f(x). Dla każdej z nich wybieraliśmy w przedziale [-5;5] n równooddalonych argumentów. Wartości funkcji dla tych argumentów były jakby naszymi wynikami pomiaru. Problem polegał na, tym że należało znaleźć funkcję p(x), która opisywałaby te wyniki. Oznacza to że wykres funkcji p(x) ma przechodzić przez wybrane przez nas punkty na wykresie funkcji f(x).
Do wyznaczenia szukanej funkcji interpolacyjnej p(x) posłużył nam program wykorzystujący metodę Lagrange'a.
_ (x-^)(x-xL). (x-x._1[jx-x^J (x-xn)
P" X h*' (*; -*o)(*i -*lM*j Xj ~ Xn )
gdzie xoj Xj , x2... równoodległe argumenty funkcji, czyli x, = x0+hi, a y j = f(x}) wartości funkcji w wybranych przez nas punktach.
Fragment kodu źródłowego:
function [war]=p(arg,x,y,ni) war=Q; for i=l:nl s=y(i); for j=l:nl if i~=j
s=s*(arg-x(j))/(x(i)-x(j));
end
end
war=war+s;
end
end
Poniżej przedstawiliśmy wyniki naszego doświadczenia, wykres czerwony przedstawia funkcję f(x) natomiast czarny wielomian interpolacyjny. xQ jest pierwszym branym pod uwagę argumentem funkcji, h oznacza odległość między kolejnymi argumentami, n - ilość węzłów interpolacji.