• Nie Znaleziono Wyników

1 METODY NUMERYCZNE

N/A
N/A
Protected

Academic year: 2021

Share "1 METODY NUMERYCZNE"

Copied!
31
0
0

Pełen tekst

(1)

Met.Numer. wykład 3 1

METODY NUMERYCZNE

dr hab.inż. Katarzyna Zakrzewska, prof.AGH

Wykład 3.

Met.Numer. wykład 3 2

Plan

• Aproksymacja

• Interpolacja wielomianowa

• Przykłady

Aproksymacja

Metody numeryczne zajmują się rozwiązywaniem zadań matematycznych za pomocą działań arytmetycznych. Zachodzi zatem potrzeba przybliżania wielkości nie arytmetycznych wielkościami arytmetycznymi i badania błędów wywołanych takimi przybliżeniami. Wybór przybliżenia zależy od tego, którym z możliwych kryteriów posłużymy się w ocenie skuteczności danego przybliżenia.

Jaki jest dopuszczalny błąd wyniku?

Jak szybko można otrzymać rozwiązanie – jaka jest

szybkość zbieżności danej metody, np. procesu

iteracyjnego?

(2)

Met.Numer. wykład 3 4

Co to jest interpolacja ?

Dane są punkty (x0,y0), (x1,y1), ….(xn,yn). Znaleźć nieznaną wartość y dla dowolnego x.

Met.Numer. wykład 3 5

Różnica pomiędzy aproksymacją i interpolacją

interpolacja

aproksymacja

Aproksymacja

Chcemy przybliżyć funkcję f(x) kombinacją (najczęściej liniową) funkcji należących do pewnej szczególnej klasy.

Klasy funkcji:

dla N pierwszych wyrazów szeregu Taylora

...) , 1 , 0 ( } { x

n

n =

...) , 1 , 0 ( )}

(

{ p

n

x n =

ogólniej: pn(x) jest wielomianem stopnia n

...) 2 , 1 , 0 ( )}

cos(

),

{sin( nx nx n =

wielomiany trygonometryczne Największe znaczenie posiada aproksymacja wielomianowa

(3)

Met.Numer. wykład 3 7

Aproksymacja

Aproksymacja liniowa funkcji f(x)

klasy funkcji:

współczynniki stałe:

...) , 1 , 0 ( )}

( { g

n

x n =

) ( ...

) ( ) ( )

( x a

0

g

0

x a

1

g

1

x a g x

f ≈ + + +

m m

Przybliżenia liniowe stosuje się ponieważ badanie aproksymacji kombinacjami nieliniowymi funkcji przybliżających jest bardzo trudne jak analiza większości zagadnień nieliniowych.

) ..., , 1 , 0

( i m

a

i

=

Czasami stosuje się przybliżenia wymierne:

) ( ...

) ( ) (

) ( ...

) ( ) ) ( (

1 1 0 0

1 1 0 0

x g b x g b x g b

x g a x g a x g x a f

k k

m m

+ + +

+ +

≈ +

Met.Numer. wykład 3 8

Aproksymacja

współczynniki są tak dobrane, aby w punktach

funkcja przybliżająca wraz z jej pierwszymi ri pochodnymi (rijest liczbą całkowitą nieujemną) była zgodna z f(x) i jej pochodnymi (z dokładnością do błędów zaokrągleń)

) ..., , 1 , 0

( i m

a

i

=

Kryteria wyboru stałych współczynników

•przybliżenie interpolacyjne

) , ...

, 2 , 1

( i p

x

i

=

Trzy typy przybliżeń o dużym znaczeniu

Aproksymacja

szukamy minimum wyrażenia będącego całką z kwadratu różnicy pomiędzy f(x) i jej przybliżeniem w przedziale

<x1,x2> lub sumą ważoną kwadratów błędów rozciągniętą na zbiór dyskretny punktów z przedziału <x1,x2>

) ..., , 1 , 0

( i m

a

i

=

Kryteria wyboru stałych współczynników

•przybliżenie średniokwadratowe

•przybliżenie jednostajne

znalezienie najmniejszego maksimum różnicy między f(x) i jej przybliżeniem w przedziale <x1,x2>

(4)

( )

[ ]

2

min

2

= ∑

n

− + =

i

y

i

ax

i

b

S

Met.Numer. wykład 3 10

4 6 8 10 12 14 16

0 20 40 60

f(xi) yi

xi y

x f(x)=ax+b a=3.23, b=-2.08

Metoda najmniejszych kwadratów Regresja liniowa

Postulat metody

Met.Numer. wykład 3 11

Warunek minimum funkcji dwu zmiennych:

0 0

2

2

=

= ∂

b S a

S

Otrzymujemy układ równań liniowych dla niewiadomych a i b

= ∑

∑ +

= ∑ + ∑

i i

i i i i

y bn x a

y x x b x

a

2

Rozwiązując ten układ równań uzyskuje się wyrażenia na współczynniki a i b szukanej prostej f(x)=ax+b

Metoda najmniejszych kwadratów Regresja liniowa

W

y x x y b x

W

y x y x a n

i i i i i

i i i i

∑ ∑ − ∑ ∑

=

∑ − ∑ ∑

=

2

( )

2

2

− ∑

= nx

i

x

i

W

gdzie: W (wyznacznik główny układu równań) wyraża się wzorem

Metoda najmniejszych kwadratów Regresja liniowa

(5)

Met.Numer. wykład 3 13

Z praw statystyki można wyprowadzić wyrażenia na odchylenia standardowe u(a) i u(b) obu parametrów prostej a,b:

n a x u b u

W S n a n u

i

=

= −

2 2

) ( ) (

) 2 (

Metoda najmniejszych kwadratów Regresja liniowa

Met.Numer. wykład 3 14

Aproksymacja wielomianowa

Wspólną właściwością potęg zmiennej i wielomianów trygonometrycznych (a także funkcji wykładniczych) jest to, że w przybliżeniach korzystających z każdej z tych klas przesunięcie układu współrzędnych zmienia współczynniki, ale nie zmienia postaci przybliżenia.

Zastosowanie w obliczeniach wielomianów jako funkcji przybliżających wiąże się z faktem, że maszyna cyfrowa wykonuje w praktyce działania arytmetyczne.

Jeżeli P(x) jest wielomianem lub funkcją wymierną to P(x+α) jest również tej postaci, a jeśli T(x) jest liniowym lub wymiernym przybliżeniem zbudowanym z sinusów lub cosinusów, to takie jest również T(x+α).

Aproksymacja wielomianowa

mają taką zaletę, że przy zmianie skali zmiennej zmieniają się tylko współczynniki, a nie zmienia się kształt

przybliżenia. Przykład: wielomian P(kx) jest również wielomianem zmiennej x.

Przybliżenia funkcjami

Tej własności nie mają przybliżenia trygonometryczne, gdyż dla niecałkowitego k na ogół sin(nkx) nie jest elementem klasy

...) , 1 , 0 ( } { x

n

n =

...) 2 , 1 , 0 ( )}

{sin( nx n =

(6)

Met.Numer. wykład 3 16

Najczęściej wybiera się wielomiany gdyż można łatwo:

ƒ obliczać ich wartości

ƒ różniczkować

ƒ całkować

Aproksymacja wielomianowa

Met.Numer. wykład 3 17

Z przybliżeń wielomianowych wywodzą się metody:

• interpolacji

• ekstrapolacji

• różniczkowania numerycznego

• kwadratur

• rozwiązywania numerycznego równań różniczkowych zwyczajnych

Powiązania pomiędzy tymi metodami są łatwo dostrzegalne, gdyż metody interpolacyjne są podstawą wzorów różniczkowania numerycznego, kwadratur i rozwiązywania numerycznego równań różniczkowych.

Aproksymacja wielomianowa

INTERPOLACJA WIELOMIANOWA

Założenie:

W przedziale [a,b] danych jest (n+1) różnych punktów x0, x1, …, xn, które nazywamy węzłami interpolacji, oraz wartości pewnej funkcji y = f(x) w tych punktach:

f(xi) = yidla i = 0, 1, ..., n.

interpolacja

(7)

Met.Numer. wykład 3 19

Zadanie interpolacji:

Wyznaczenie przybliżonych wartości funkcji w punktach nie będących węzłami oraz oszacowanie błędu tych przybliżonych wartości.

1. W tym celu należy znaleźć funkcję F(x), zwaną funkcją interpolującą, która będzie „przybliżać” funkcję f(x) w przedziale [a,b].

2. Funkcja F(x) w węzłach interpolacji przyjmuje takie same wartości co funkcja y = f(x).

3. W zagadnieniu interpolacji wielomianowej funkcja F(x) jest wielomianem stopnia co najwyżej n.

INTERPOLACJA WIELOMIANOWA

Twierdzenie

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

Met.Numer. wykład 3 20

Interpolacja - metoda bezpośrednia

. ...

...

1

0 n

n

x a x

a a

y = + + +

Przez n+1 punktów (x0,y0), (x1,y1), ….(xn,yn) przechodzi dokładnie jeden wielomian stopnia n

gdzie a0, a1, …. ansą stałymi współczynnikami (R)

•Ułożyć n+1 równań aby znaleźć n+1 stałych

•Podstawić wartość x do wielomianu, aby znaleźć y

Przykład

Znaleźć prędkość w chwili t=16 s stosując metodę bezpośrednią dla dwóch punktów

t(s) v(m/s)

0 0

10 227.04

15 362.78

20 517.35

22.5 602.97

30 901.67

Tabela 1 Prędkość v jako funkcja czasu t

0 5 10 15 20 25 30

0 200 400 600 800 1000

predkosc v(m/s)

czas t(s)

dane

(8)

Met.Numer. wykład 3 22

Interpolacja liniowa

( ) t a a t

v =

0

+

1

( ) 15 = a

0

+ a

1

( ) 15 = 362 . 78 v

( ) 20 = a

0

+ a

1

( ) 20 = 517 . 35 v

93 .

0

= − 100 a

914 .

1

= 30 a

A zatem v ( ) t = − 100 . 93 + 30 . 914 t , 15t20

( ) 16 100.93 30.914 ( ) 16 393.7 m/s

v = − + =

(x0, y0)

( )x f1

(x1, y1)

x y

Rozwiązanie układu równań

Met.Numer. wykład 3 23

Nie można obecnie wyświetlić tego obrazu.

( ) t a

0

a

1

t a

2

t

2

v = + +

( )

10=a0+a1

( )

10+a2

( )

102=227.04 v

( ) 15 = a

0

+ a

1

( ) 15 + a

2

( ) 15

2

= 362 . 78 v

05 .

0

= 12

a a

1

= 17 . 733 a

2

= 0 . 3766

Interpolacja kwadratowa

(x0, y0) (x1, y1)

(

x2, y2

)

( )

x f2

y

x ( ) 20 = a

0

+ a

1

( ) 20 + a

2

( ) 20

2

= 517 . 35

v

Rozwiązanie układu równań

( ) t = 12 . 05 + 17 . 733 t + 0 . 3766 t

2

, 10t20 v

( ) 16 = 12 . 05 + 17 . 733 ( ) 16 + 0 . 3766 ( ) 16

2

v

=392.19m/s

( ) t = 12 . 05 + 17 . 733 t + 0 . 3766 t

2

, 10 ≤ t ≤ 20 v

( ) m s

v 16 = 392 . 19 /

Błąd względny

% 38410 . 0

19 100 . 392

70 . 393 19 . 392

=

− ×

=

a

Interpolacja kwadratowa

0 5 10 15 20 25 30

0 200 400 600 800 1000

V(m/s)

t(s)

(9)

Met.Numer. wykład 3 25

( )

33

2 2 1

0

a t a t a t

a t

v = + + +

( ) ( ) ( )

3

( )

3

2 2 1

0

10 10 10

04 . 227

10 a a a a

v = = + + +

( ) ( ) ( )

3

( )

3

2 2 1

0

15 15 15

78 . 362

15 a a a a

v = = + + +

( ) 20 517 . 35 a

0

a

1

( ) 20 a

2

( ) 20

2

a

3

( ) 20

3

v = = + + +

( ) ( ) ( )

3

( )

3

2 2 1

0

22 . 5 22 . 5 22 . 5

97 . 602 5 .

22 a a a a

v = = + + +

y

x

( )

x f3

(

x3, y3

)

(x2, y2) (x1, y1) (x0, y0)

Interpolacja sześcienna

Met.Numer. wykład 3 26

04 . 227 1000 100

10

1 2 3

0

+ a + a + a =

a

78 . 362 3375 225

15

1 2 3

0

+ a + a + a =

a

35 . 517 8000 400

20

1 2 3

0

+ a + a + a =

a

97 . 602 625 . 11390 25 . 506 5 .

22

1 2 3

0

+ a + a + a =

a

Interpolacja sześcienna

Zadanie domowe

Rozwiązać układ równań:

Podać i narysować v(t)

( ) t 4 . 2540 21 . 266 t 0 . 13204 t

2

0 . 0054347 t

3

,

v = − + + +

( ) m s

v 16 = 392 . 06 /

% 033269 . 0

06 100 . 392

19 . 392 06 . 392

=

− ×

=

a

Interpolacja sześcienna -rozwiązanie

2540

.

0=−4 a

266 .

1

= 21 a

13204 .

2

= 0 a

0054347 .

3

= 0

a 10 ≤ t ≤ 22 . 5

Błąd względny

(10)

Met.Numer. wykład 3 28

Porównanie

Rząd wielomianu 1 2 3

(

t=16

)

m/s

v 393.7 392.19 392.06

błąd względny --- 0.38410 % 0.033269 %

Met.Numer. wykład 3 29

Obliczenia przemieszczenia

od t=11s do t=16s

( ) t = − 4 . 2540 + 21 . 266 t + 0 . 13204 t

2

+ 0 . 0054347 t

3

, 10 ≤ t ≤ 22 . 5 v

( ) ( ) − =

16

( )

11

11

16 s v t dt

s

( )

m

t t

t t

dt t t

t

1605

0054347 4 . 3 0 13204 . 2 0 266 . 21 2540 . 4

0054347 . 0 13204 . 0 266 . 21 2540 . 4

16

11 4 3

2 16

11

3 2

=

⎥ ⎦

⎢ ⎤

⎡ − + + +

=

∫ − + + +

=

( )

t =−4.2540+21.266t+0.132042+0.0054347t3,10≤t≤22.5

ν

( ) ( )

( )

5 . 22 10 , 016304 . 0 26408 . 0 266 . 21

0054347 . 0 13204 . 0 266 . 21 2540 . 4

2

3 2

≤ +

+

=

+ +

+

=

=

t t t

t t

dt t d

t dt v t d a

( ) ( ) ( )

2

2

665 . 29

16 016304 . 0 16 26408 . 0 266 . 21 16

m/s a

=

+ +

=

Obliczenia przyspieszenia

(11)

Met.Numer. wykład 3 31

Wzór interpolacyjny Newtona

Interpolacja liniowa: dane są punkty szukamy

), ,

( x

0

y

0

( x

1

, y

1

),

) ( )

(

0 1 0

1

x b b x x

f = + −

) (

0

0

f x

b =

0 1

0 1 1

) ( ) (

x x

x f x b f

= −

Met.Numer. wykład 3 32

Przykład

Znaleźć prędkość w chwili t=16 s stosując metodę Newtona

t(s) v(m/s)

0 0

10 227.04

15 362.78

20 517.35

22.5 602.97

30 901.67

Tabela 1 Prędkość v jako funkcja czasu t

0 5 10 15 20 25 30

0 200 400 600 800 1000

predkosc v(m/s)

czas t(s)

dane

Interpolacja liniowa ) ( )

( t b

0

b

1

t t

0

v = + −

78 . 362 ) ( ,

15

0

0

= v t =

t

35 . 517 ) ( ,

20

1

1

= v t =

t

78 . 362 ) (

0

0

= t v =

b

914 . ) 30 ( ) (

0 1

0

1 1

=

= − t t

t v t b v

Wiadomo, że: Znajdujemy:

A zatem:

20 15 ), 15 ( 914 . 30 78 . 362

) ( )

(

0 1 0

− +

=

=

− +

=

t t

t t b b t v

Jako zadanie domowe, proszę sprawdzić czy wynik uzyskany jest zgodny z wynikiem interpolacji bezpośredniej

(12)

Met.Numer. wykład 3 34

Interpolacja liniowa ) ( )

( t b

0

b

1

t t

0

v = + −

Szukana prędkość w chwili t=16 s wynosi:

s m

t t b b t v

/ 69 . 393

) 15 16 ( 914 . 30 78 . 362

) ( )

(

0 1 0

=

− +

=

=

− +

=

15 16 17 18 19 20

360 380 400 420 440 460 480 500 520

v(m/s)

czas t(s) dane

Met.Numer. wykład 3 35

Interpolacja kwadratowa

) )(

( ) ( )

(

0 1 0 2 0 1

2

x b b x x b x x x x

f = + − + − −

) ( 0

0 f x

b =

0 1

0 1 1

) ( ) (

x x

x f x b f

= −

0 2

0 1

0 1 1 2

1 2 2

) ( ) ( ) ( ) (

x x

x x

x f x f x x

x f x f

b

− −

=

Dane są punkty

( x

0

, y

0

), ( x

1

, y

1

), ( x

2

, y

2

),

szukamy

Interpolacja kwadratowa

Wiadomo, że:

78 . 362 ) ( , 15

1

1

= v t =

t

35 . 517 ) ( , 20

2

2

= v t =

t

04 . 227 ) ( , 10

0

0

= v t =

t b

0

= t v (

0

) = 227 . 04

Znajdujemy:

148 . 27

10 15

04 . 227 78 . 362 ) ( ) (

0 1

0 1 1

=

− =

= −

= − t t

t v t b v

37660 . 0

10 148 . 27 914 . 30 ) ( ) ( ) ( ) (

0 2

0 1

0 1 1 2

1 2

2

=

− =

− =

− −

= t t

t t

t v t v t t

t

v

t

v

b

(13)

Met.Numer. wykład 3 37

Interpolacja kwadratowa

A zatem:

20 10 ), 15 )(

10 ( 37660 . 0 ) 10 ( 148 . 27 04 . 227

) )(

( ) ( )

(

0 1 0 2 0 1

− +

− +

=

=

− +

− +

=

t t

t t

t t t t b t t b b t v

dla t=16s:

s m

t t b t b b v

/ 19 . 392

) 15 16 )(

10 16 ( 37660 . 0 ) 10 16 ( 148 . 27 04 . 227

) 16 )(

16 ( ) 16 ( ) 16

(

0 1 0 2 0 1

=

− +

− +

=

=

− +

− +

=

Jako zadanie domowe, proszę sprawdzić czy wynik uzyskany jest zgodny z wynikiem interpolacji bezpośredniej

Met.Numer. wykład 3 38

a x100

19 . 392

69 . 393 19 . 392 −

=

= 0.38502 %

Interpolacja kwadratowa

Błąd względny w odniesieniu do poprzedniej interpolacji

910 11 12 13 14 15 16 17 18 19 20 21 200

250 300 350 400 450 500 550

v(m/s)

czas t(s) dane

Ogólna formuła

) )(

( ) ( )

(

0 1 0 2 0 1

2

x b b x x b x x x x

f = + − + − −

gdzie

A zatem

) )(

](

, , [ ) ](

, [ ] [ )

(

0 1 0 0 2 1 0 0 1

2

x f x f x x x x f x x x x x x x

f = + − + − −

) ( ]

[0 0

0 fx f x

b = =

0 1

0 1 0 1 1

) ( ) ] ( ,

[ x x

x f x x f x f

b

= −

=

0 2

0 1

0 1 1 2

1 2

0 2

0 1 1 2 0 1 2 2

) ( ) ) ( ( ) ( ] , [ ] , ] [ , ,

[ x x

x x

x f x f x x

x f x f

x x

x x f x x x f x x f

b

− −

− =

= −

=

iloraz różnicowy pierwszego rzędu

iloraz różnicowy drugiego rzędu

(14)

Met.Numer. wykład 3 40

(

x0,y0

) (

,x1,y1

)

,...,

(

xn1,yn1

) (

,xn,yn

)

) )...(

)(

( ....

) ( )

( = 0+ 10 + + n01n1

n x b b x x b x x x x x x

f gdzie

] [0

0 f x

b = ] , [1 0

1 f x x

b =

] , , [2 1 0

2 f x x x

b = M

] ,...., ,

[ 1 2 0

1 f x x x

bn = n n ] ,...., , [x x 1 x0

f bn= n n

Ogólna formuła

Mając (n+1) punktów

Met.Numer. wykład 3 41

Wielomian 3-ciego stopnia, mając dane(x0,y0),(x1,y1),(x2,y2),i(x3,y3),ma postać

) )(

)(

](

, , , [

) )(

](

, , [ ) ](

, [ ] [ ) (

2 1 0 0 1 2 3

1 0 0 1 2 0 0 1 0 3

x x x x x x x x x x f

x x x x x x x f x x x x f x f x f

− +

− +

− +

=

b 0

x0 f(x0) b1

] , [x1x0

f b2

x 1 f(x1) f[x2,x1,x0] b3

] , [x2x1

f f[x3,x2,x1,x0]

x2 f(x2) f[x3,x2,x1]

] , [x3x2

f x3 f(x3)

Interpolacja sześcienna

Interpolacja sześcienna

Zadanie domowe

Znaleźć równanie na prędkość i obliczyć v(16s) na podstawie interpolacji sześciennej Newtona :

Znaleźć współczynniki bi

) )(

)(

( ) )(

( ) ( )

( t b

0

b

1

t t

0

b

2

t t

0

t t

1

b

3

t t

0

t t

1

t t

2

v = + − + − − + − − −

Dane

78 . 362 ) ( , 15

1

1

= v t =

t

35 . 517 ) ( ,

20

2

2

= v t =

t

04 . 227 ) ( , 10

0

0

= v t =

t

97 . 602 ) ( , 5 .

22

3

3

= v t =

t

Znaleźć drogę przebytą w czasie od 11s do 16 s. Znaleźć przyspieszenie w chwili t=16 s.

(15)

Met.Numer. wykład 3 43

Rozwiązanie

b0 = 227.04; b1 = 27.148; b2 = 0.37660; b3 = 5.4347*10-3 b0

0=10

t 227.04 b 1

27.148 b 2

,

1=15

t 362.78 376600. b 3

30.914 5.4347x103

,

2=20

t 517.35 444530.

34.248 ,

5 .

3=22

t 602.97

Met.Numer. wykład 3 44

Rząd wielomianu 1 2 3

v(t=16)

m/s 393.69 392.19 392.06

Błąd względny przybliżenia

--- 0.38502 % 0.033427 %

Porównanie

Interpolacja z równo-odległymi węzłami

ih x x

i

=

0

+

Dane są wartości funkcji f(xi)=yidla i=0,1,…n w punktach rozmieszczonych w jednakowych odstępach:

) )...(

)(

! (

...

) )(

! ( ) 2

! ( ) 1 (

1 1

0

2 1 0 2 0

0

− Δ −

+

+ +

− Δ −

+ Δ −

+

=

n n o

n

o o

I n

x x x x x h x n

y

x x x h x x y h x y y x N

Pierwszy wielomian interpolacyjny Newtona ma postać:

gdzie ∆kf(x0) jest różnica progresywna k-tego rzędu

(16)

Met.Numer. wykład 3 46

Interpolacja z równo-odległymi węzłami

Wielomian interpolacyjny Newtona jest korzystny w pobliżu początku tablicy. W pobliżu końca tablicy stosujemy

) )...(

)(

! (

...

) )(

! ( ) 2

! ( ) 1 (

1 1 0

2 1 2 2 1

x x x x x h x n

y

x x x h x x y h x y y x N

n n n

n

n n n n n n II n

− Δ −

+

+ +

− Δ −

+ Δ −

+

=

drugi wielomian interpolacyjny Newtona z różnicami wstecznymi

Met.Numer. wykład 3 47

Różnice progresywne

i i i

i y y y

y=ΔΔ =Δ −Δ

Δ2 ( ) +1

i i i i

i

f x h f x y y

y = + − = −

Δ ( ) ( )

+1

)

1

( )

( − − = −

=

y

i

f x

i

f x

i

h y

i

y

i

Różnice wsteczne

1 2

= ∇ ( ∇ ) = ∇ − ∇

y

i

y

i

y

i

y

i

Inaczej:

Wzór interpolacyjny Lagrange’a

gdzie:

ω’n(xj) jest wartością pochodnej wielomianu ωn(x) punkcie xj

będącym zerem tego wielomianu

( ) ( )

= =

=

= −

⎪⎭

⎪ ⎬

⎪⎩

⎪ ⎨

− −

=

n

j j n j

n j n

j

x j x n j

n j

n

x x x

x x f x

x x x x x x f x W

j 0

0

( ) ' ( )

) ( )

) ( (

) ) (

( ω

ω ω

ω

) )...(

)(

( )

(

0 1 n

n

x = xx xx xx

ω

Ogólnie:

) )...(

)(

)...(

)(

(

) )...(

)(

)...(

)(

) ( ( ) (

1 1 1

0

1 1 1 0

0 j j j j j j j n

n j j n

j j

n

x x x x x x x x x x

x x x x x x x x x x x f x

W − − − − −

= −

+

+

=

(17)

Met.Numer. wykład 3 49

Przykład

Znaleźć prędkość w chwili t=16 s stosując metodę interpolacji wielomianem Lagrange’a dla dwóch punktów

t(s) v(m/s)

0 0

10 227.04

15 362.78

20 517.35

22.5 602.97

30 901.67

Tabela 1 Prędkość v jako funkcja czasu t

0 5 10 15 20 25 30

0 200 400 600 800 1000

predkosc v(m/s)

czas t(s)

dane

Met.Numer. wykład 3 50

Interpolacja liniowa wielomianem Lagrange’a

78 . 362 ) ( ,

15

0

0

= v t =

t

35 . 517 ) ( ,

20

1

1

= v t =

t

Wiadomo, że: Znajdujemy:

A zatem:

Jako zadanie domowe, proszę sprawdzić czy wynik uzyskany jest zgodny z wynikiem interpolacji bezpośredniej

) ( ) ( ) ( ) ( ) ( ) ( )

(

1 0 0 1 1

0

L t v t L t v t L t v t

t

v

i i

i

+

=

=

=

1 0 1 1

00 0 0

( )

t t

t t t t

t t t

L

j

j j

j

= −

∏ −

= −

=

0 1 1 0

10 1 1

( )

t t

t t t t

t t t L

j

j j

j

= −

∏ −

= −

=

35 . 15 517 20 78 15 . 20 362 15

20

) ( ) ( )

(

1

0 1 0 0 1 0

1

− + −

= −

− = + −

= −

t t

t t v t

t t t t v t

t t t v

s m v

/ 7 . 393

) 35 . 517 ( 2 . 0 ) 78 . 362 ( 8 . 0

) 35 . 517 15 ( 20

15 ) 16 78 . 362 20 ( 15

20 ) 16 16 (

=

= +

=

− + −

= −

Interpolacja liniowa wielomianem Lagrange’a

15 16 17 18 19 20

360 380 400 420 440 460 480 500 520

v(m/s)

czas t(s) dane

(18)

Met.Numer. wykład 3 52

Interpolacja kwadratowa

Dane są punkty

( x

0

, y

0

), ( x

1

, y

1

), ( x

2

, y

2

)

szukamy

∏ −

= −

≠= 2 0

) (

i j

j i j

j

i

t t

t t t

L

( )

( ) ( ) ( ) ( ) )

( ) (

) ( ) (

2 2 1 1 0 0 2

0

t v t L t v t L t v t L

t v t L t v

i i i

+ +

=

=

=

=

Met.Numer. wykład 3 53

Interpolacja kwadratowa

Wiadomo, że:

78 . 362 ) ( , 15

1

1

= v t =

t

35 . 517 ) ( , 20

2

2

= v t =

t

04 . 227 ) ( , 10

0

0

= v t =

t

Znajdujemy:

( )( )

(

0 1

)(

0 2

)

2 2 1

00 0 0

( )

t t t t

t t t t t t

t t t

L

j

j j

j

= −

∏ −

= −

=

( )( ) (

1 00

)(

1 22

)

2 10 1 1

( )

t t t t

t t t t t t

t t t

L

j

j j

j

= −

∏ −

= −

=

( )( ) (

2 00

)(

2 11

)

2 20 2 2

( )

t t t t

t t t t t t

t t t

L

j

j j

j

= −

∏ −

= −

= A zatem:

) ( )

( )

( )

(

2

1 2

1 0 2 1 0 2 1

2 0 1 0 0 2 0

2 1 0

1

v t

t t

t t t t

t t t t v t

t t t t

t t t t v t

t t t t

t t t

v

− + −

− + −

= −

Interpolacja kwadratowa

dla t=16s:

Jako zadanie domowe, proszę sprawdzić czy wynik uzyskany jest zgodny z wynikiem interpolacji bezpośredniej i metodą Newtona.

s m v

/ 19 . 392

) 35 . 517 )(

12 . 0 ( ) 78 . 362 )(

96 . 0 ( ) 04 . 227 )(

08 . 0 (

) 35 . 517 ) ( 15 20 (

) 15 16 ( ) 10 20 (

) 10 16 (

) 78 . 362 ) ( 20 15 (

) 20 16 ( ) 10 15 (

) 10 16 ) ( 04 . 227 ) ( 20 10 (

) 20 16 ( ) 15 10 (

) 15 16 ) ( 16 (

=

+ +

=

− =

− + −

− + −

= −

(19)

Met.Numer. wykład 3 55

Interpolacja kwadratowa

Błąd względny w odniesieniu do poprzedniej interpolacji

910 11 12 13 14 15 16 17 18 19 20 21 200

250 300 350 400 450 500 550

v(m/s)

czas t(s) dane

% 38502 . 0

19 100 . 392

70 . 393 19 . 392

=

− ×

=

a

Met.Numer. wykład 3 56

Interpolacja sześcienna

Zadanie domowe

Znaleźć równanie na prędkość i obliczyć v(16s) na podstawie interpolacji sześciennej Lagrange’a

Dane

78 . 362 ) ( , 15

1

1

= v t =

t

35 . 517 ) ( ,

20

2

2

= v t =

t

04 . 227 ) ( , 10

0

0

= v t =

t

97 . 602 ) ( , 5 .

22

3

3

= v t =

t

Znaleźć drogę przebytą w czasie od 11s do 16 s. Znaleźć przyspieszenie w chwili t=16 s.

Porównać wyniki z uzyskanymi na podstawie interpolacji metodą bezpośredniej i Newtona.

Rząd wielomianu 1 2 3

v(t=16)

m/s 393.69 392.19 392.06

Błąd względny

przybliżenia --- 0.38502 % 0.033427 %

Porównanie

(20)

Met.Numer. wykład 3 58

Niech dane będą punkty: 0, 1, 3, 6. Znaleźć wielomian interpolacyjny Lagrange’a, który będzie przybliżać funkcję

⎟ ⎠

⎜ ⎞

⎝ ⎛ ⋅

= x

x

f ( ) 2 sin π 6

Rozwiązanie:

Wartości funkcji f(x) w węzłach interpolacji są następujące:

Można pokazać, że wielomian interpolacyjny Lagrange’a przyjmuje postać:

( )

0 0, 1

( )

1 1, 2

( )

3 2, 3

( )

6 0.

0=f = y=f = y =f = y =f =

y

( ) 15

17 90 11 90

2 3 3

x x x x

W = − − +

Wzór interpolacyjny Lagrange’a - przykład

Met.Numer. wykład 3 59

funkcja f(x)

Wielomian interpolacyjny „przybliża” funkcję f(x) tylko pomiędzy skrajnymi węzłami, tzn. w przedziale [0,6].

Im mniejsze odległości między węzłami, tym lepsze przybliżenie uzyskujemy

-15 -10 -5 0 5 10 15

-25 -20 -15 -10 -5 0 5

y

x

2sin(π/6∗x)

( )

15

17 90 11 90

2 3 3

x x x x

W =− − +

wielomian interpolacyjny W3(x)

Wzór interpolacyjny Lagrange’a -

przykład

Z jaką dokładnością wielomian interpolacyjny Wn(x) przybliża funkcję f(x) w pozostałych punktach leżących wewnątrz przedziału

<a, b>?

∏ − + ⋅

=

+

>

∈< n

i i n

b a x

n

x x

n x f x

W x f

0 ) 1 (

,

( )

)!

1 (

) ( sup ) ( ) (

Oszacowanie błędu wzoru interpolacyjnego

Zakładamy, że funkcja f(x) w rozpatrywanym przedziale <a, b>

ma pochodne do rzędu (n+1) włącznie.

zależy od wyboru węzłów interpolacji

(21)

Met.Numer. wykład 3 61

Interpolacja za pomocą funkcji sklejanych-spline Motywacja

Wady interpolacji wielomianowej:

Pogorszenie wyników interpolacji przy zwiększaniu liczby węzłów.

Przykład:

Zjawisko Rungego (przykład źle uwarunkowanego zadania):

Interpolacja wielomianami wysokich stopni przy stałych odległościach węzłów prowadzi do poważnych odchyleń od interpolowanej funkcji zwłaszcza na końcach przedziału. Interpolacja na środkowych częściach przedziału jest natomiast bardzo dobra i użyteczna Przykład:

x x f ( ) =

25

2

1 ) 1

( x x

f = +

Met.Numer. wykład 3 62

Interpolacja wielomianowa szczególnych funkcji

x

x f ( ) =

Zjawisko Rungego

(22)

Met.Numer. wykład 3 64

Interpolacja za pomocą liniowych funkcji sklejanych

Mając dane punkty:

) , ( ), , ),...(

, ( ), ,

( x

0

y

0

x

1

y

1

x

n1

y

n1

x

n

y

n

prowadzimy linie proste pomiędzy punktami.

Met.Numer. wykład 3 65

) ) ( ( ) ) ( ( )

(

0

0 1

0

0 1

x x

x x

x f x x f f x

f

− + −

= x

0

xx

1

) ) ( ( ) ) ( ( )

(

1

1 2

1 2

1

x x

x x

x f x x f f x

f

− + −

= x

1

xx

2

) ) ( ( ) ) ( ( )

(

1

1 1

1

− + −

=

n

n n

n n

n

x x

x x

x f x x f f x f

. . .

n

n

x x

x

−1

≤ ≤

nachylenie prostej

pomiędzy węzłami

Interpolacja za pomocą liniowych funkcji sklejanych

Mając dane punkty:

( x

0

, y

0

), ( x

1

, y

1

),...( x

n1

, y

n1

), ( x

n

, y

n

)

zapisujemy różne funkcje kwadratowe pomiędzy każdą parą punktów.

Interpolacja kwadratowa za pomocą

funkcji sklejanych

Cytaty

Powiązane dokumenty

(Skorzystaj z faktu, że funkcja holomorficzna w obszarze jest analityczna w

[r]

Wynik testów metody Wstaw w wygenerowanej instancji klasy TKol2&lt;TProdut1&gt; - (nie powinna wstawiać ponownie tych samych produktów typu TProdukt1 oraz TProdukt2) oraz metody

Homomorfizm nazywamy homomorfizmem pierúcieni wielomianów n zmiennych indukowanym przez homomorfizm wspó≥czynników..

Rachunek caªkowy funkcji jednej zmiennej.. Caªkowanie

Zawartość przestrzeni roboczej można łatwo zapisać do pliku poleceniem save.. Polecenie save nazwapliku utworzy plik nazwapliku.mat i zapisze w nim wszystkie zmienne z

Pokaż, że norma macierzy indukowana normą wektorową l ∞ ma wszystkie trzy własności określające normę.. Cheney, Analiza numeryczna,

Stan każdej funkcji (także main()) jest opisywany przez wartości wszystkich zmiennych automatycznych (lokalnych) i parametrów funkcji oraz adres powrotu,