poniedziałek, 12 listopada 2012

Interpolacja



INTERPOLACJA

         Zadaniem interpolacji jest utworzenie funkcji, która przebiega przez zadane punkty. Stosuje się różne klasy funkcji do interpolowania – wielomiany algebraiczne, funkcje sklejane, funkcje trygonometryczne.

Zadanie interpolacji możemy sformułować następująco:
W przedziale [a,b] mamy danych n+1 różnych punktów x0,x1,...,xn (węzły interpolacji) oraz wartości funkcji y=f(x) w tych punktach f(x0)=y0,f(x1)=y1,...,f(xn)=yn . Znaleźć funkcję F(x), która w węzłach interpolacji ma te same wartości co f(x) i przybliża f(x) w punktach.


I.                Interpolacja wielomianowa:

Twierdzenie
         Istnieje dokładnie jeden wielomian interpolacyjny stopnia co najwyżej n (n³0), który w punktach x0, x1,...,xn przyjmuje wartości y0,y1,...,yn

Wzór Lagrange’a
x0, x1,...,xn – zadany zbiór punktów
y0,y1,...,yn  - zadane wartości funkcji w punktach

oznaczmy Wn+1=(x-x0)(x-x1)...(x-xn)
 - jest to wzór interpolacyjny Lagrange’a, podstawiając do
niego zadane wartości otrzymujemy wzór wielomianu przechodzącego przez zadane punkty




II.             Interpolacja funkcjami sklejanymi

Interpolacja funkcjami sklejanymi polega na „łączeniu punktów”, w każdym odcinku przybliżamy funkcję wielomianem ustalonego (niskiego) stopnia, tak aby funkcja przybliżająca była ciągła wraz z pochodnymi na przedziale interpolacji [a,b]

Interpolacja funkcjami sklejanymi stopnia pierwszego

Załóżmy, że dysponujemy zbiorem n+1 węzłów interpolacji wraz z wartościami funkcji
(x0,y0), (x1,y1), ..., (xn,yn). W przypadku wielomianowych metod interpolacji może się zdarzyć,
że charakter interpolowanej funkcji uniemożliwia dobre odwzorowanie za pomocą
wielomianu interpolującego. Możemy w takich przypadkach spróbować zastosować liniową
interpolację pomiędzy poszczególnymi węzłami:


sk(x)=yk+dk(x-xk)      gdzie   

W ten sposób otrzymamy zestaw funkcji interpolujących przebieg pomiędzy węzłami
dzielącymi przedział interpolacji na podprzedziały. Sklejając te funkcje razem otrzymamy
funkcję interpolującą następującej postaci:
Można zwrócić uwagę na to, że pochodna funkcji s(x) jest nieciągła we wszystkich punktach
xk dla k=1,...,n-1
 

Interpolacja liniowa: [łac.], [mat] wyznaczanie funkcji w zadanym przedziale na podstawie przyjmowanych przez nią wartości w pewnych punktach tego przedziału.

Mając dowolne dwa punkty A1, A2 możemy poprowadzić przez nie prostą i obliczyć jej równanie. Da nam to możliwość określenia wartości dla dowolnego argumentu X.



Ogólne równanie prostej ma postać:


Współczynnik kierunkowy prostej a:


Parametr b:


Przykładowa funkcja dla Delphi/Pascal:

 
function Interpolacja(X1,Y1, X2,Y2, X : Double) : Double;
{ interpolacja liniowa }
var 
  a, b : Double;
begin
 { współczynnik kierunkowy prostej }
 a := (Y2 - Y1) / (X2 - X1);
 { parametr b }
 b := ((-X1) * (Y2 - Y1) - (X2 - X1) * (-Y1)) / (X2 - X1);
 Interpolacja := a * X + b;
end;
 
// sposób użycia:
y := Interpolacja(1,100, 2,200, 50); { y = 5000 } 
 
KLIKNIJ 
 
 
http://dydaktyka.polsl.pl/kwmimkm/Inerpolacja_czebyszewa_trygonometryczna.pdf 
  

Brak komentarzy:

Prześlij komentarz