Piotr Oleszczyk 157944.docx

(45 KB) Pobierz

Piotr Oleszczyk 157944

 

 

 

 

 

 

 

Metody numeryczne

Temat: Interpolacje

 

 

 

 

 

 

 

 

 

 

 

 

Prowadzący: dr inż. P. Regucki

1. Wyznaczenie poszczególnych wartości funkcji dla zadanych x

2. Wyznaczenie wielomianu interpolacyjnego metodą Lagrange'a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

P(x)=0.305x2-0.769x+0.5

2. Obliczenie błędu lokalnego

Błąd lokalny

3. Wyznaczenie funkcji określającej błąd maksymalny

gdzie :

n +1 - liczba punktów

pierwsza pochodna

druga pochodna

trzecia pochodna

n + 1 = 3

Funkcja ma maksymalną wartość dla ξ=0.25

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4. Obliczenia w matlabie:

>>  x=[0.25 0.75 1.5];

y=1./((3*x+1).^2);

[C,L]=lagran(x,y)

xpom=linspace(x(1),x(3));

ypom=polyval(C,xpom);

yy=1./((3*xpom+1).^2);

subplot(2,1,1)

hh1=plot(x,y,'rx',xpom,ypom,'k-',xpom,yy,'b-');

legend('punkty','wielomian','funkcja')

    Errormax=abs((1/6)*((-648/((3*0.25+1)^5)))*(xpom-x(1)).*(xpom-x(2)).*(xpom-x(3)));

   subplot(2,1,2)

hh2=plot(xpom,Errormax,'k-');

legend('Error max');

grid on

 

C =

 

    0.3052   -0.7690    0.4997

 

 

L =

 

    1.6000   -3.6000    1.8000

   -2.6667    4.6667   -1.0000

    1.0667   -1.0667    0.2000

5. Wnioski:

Jak widać na załączonym niżej wykresie błąd lokalny jest duży i w miarę wzrostu wartości x błąd ten rośnie. Wielomian interpolacyjny znacznie odbiega od wykresu funkcji f(x), może to być spowodowane zbyt niskim stopniem wielomianu ponieważ im wyższy stopień tym wielomian interpolacyjny bardziej zbiega się z zadaną funkcją

 

8)      „Interpolacje” – Dla funkcji f(x)=1/(3x+1)2 w punktach {0.25, 0.75, 1.5} wyprowadź ręcznie postać wielomianu interpolacyjnego metodą wielomianów Lagrange’a. Wyznacz następnie postać wielomianu interpolacyjnego używając stosownego skryptu Octava (Matlaba). Do sprawozdania dołączyć należy zastosowany kod programu. Następnie sprawdź i skomentuj we wnioskach błąd lokalny dla x = 1.0. Wyznacz postać funkcji określającej błąd maksymalny Errormax(x) i wykreśl ją używając komendy plot. Wykreśl podane punkty {xi,f(xi)} przebieg funkcji f(x) oraz przebieg wyznaczonego wielomianu interpolacyjnego używając komendy plot. Wydruki wykresów (wraz z kodem) dołącz do sprawozdania.

Student:               Oleszczyk Piotr                            SR TN 9.15

 

Zgłoś jeśli naruszono regulamin