Zaawansowane metody numeryczne Komputerowa analiza ...th- .Zaawansowane metody numeryczne Komputerowa

  • View
    213

  • Download
    0

Embed Size (px)

Text of Zaawansowane metody numeryczne Komputerowa analiza ...th- .Zaawansowane metody numeryczne...

Zaawansowane metody numeryczne

Komputerowa analiza zagadnien rzniczkowych

5. Terminologia.

Metody Eulera, metody punktu srodkowego i metody

trapezowe

P. F. Grahttp://th-www.if.uj.edu.pl/zfs/gora/

semestr letni 2006/07

http://th-www.if.uj.edu.pl/zfs/gora/

Problem Cauchyego

dy

dx= f(x,y)

y(x0) = y0

(1)

to przepis na to jak uzyskac rozwiazanie po infinitezymalnie maym kroku cza-sowym.

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 2

Metody numeryczne

zamiana problemu ciagego na dyskretny

x0, x1 = x0 + h, x2 = x1 + h, . . . , xn = xn1 + h, . . .y0 = y(x0), y1 = y(x1), y2 = y(x2), . . . , yn = y(xn), . . .

h krok czasowy (niekiedy moze sie zmieniac, ale o tym pzniej)

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 3

Metoda jawna (explicit) skrokowa, rzedu p:

yn+1 = F(h;xn,yn,yn1, . . . ,yns+1) + O(hp+1) (2)

Przepis konstrukcyjny pozwalajacy wyliczyc wartosc poszukiwanej funkcji w ko-lejnym punkcie korzystajac z s punktw, w ktrych wartosc ta jest znana. Rz-nica pomiedzy dokadnym a przyblizonym rozwiazaniem jest (w jednym kroku)rzedu hp+1.

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 4

Metoda niejawna (implicit) skrokowa, rzedu p:

yn+1 = G(h;xn,yn+1,yn,yn1, . . . ,yns+1) + O(hp+1) (3)

Rwnanie algebraiczne (na og nieliniowe, wielowymiarowe), jakie musi spe-niac poszukiwana funkcja w kolejnym punkcie. Rwnanie to trzeba numerycznierozwiazac w kazdym kroku cakowania rwnania rzniczkowego. W rwnaniuuwzgledniane sa informacje z s punktw, w ktrych poszukiwana funkcja jest juzznana. Rznica pomiedzy dokadnym a przyblizonym rozwiazaniem jest (w jed-nym kroku) rzedu hp+1.

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 5

Zgodnosc

Od kazdej metody numerycznego cakowania rwnan rzniczkowych wymagasie, aby bya zgodna z wyjsciowym rwnaniem, to jest aby odtwarzaa je w gra-nicy nieskonczenie maych krokw.

Przykad: Dla metody jawnej (2) rozpatrzmy wyrazenie

yn+1 ynh

=F(h;xn,yn,yn1, . . . ,yns+1) yn

h. (4)

Lewa strona (4) nie zalezy od wyboru metody i jest rwna (yn+1 yn)/h =(y(xn+h)y(xn))/h, a zatem jej granica przy h 0+ wynosi dy/dx|x=xn =f(xn,yn).5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 6

Caa informacja o metodzie zawarta jest w prawej stronie (4), a zatem warun-kiem zgodnosci metody (2) jest

limh0+

F(h;xn,yn,yn1, . . . ,yns+1) ynh

= f(xn,yn) . (5)

Dla metod niejawnych zapisanych formalnie w postaci (3) nie mozna podac kry-terium zgodnosci w postaci zwartej (mozna to zawsze zrobic dla konkretnej me-tody niejawnej), tym niemniej wymaga sie, aby wszystkie, a wiec takze niejawne,metody byy zgodne.

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 7

Stabilnosc

Podczas numerycznego rozwiazywania rwnan rzniczkowych popenia sie dwarodzaje nieuniknionych bedw numerycznych:

bad metody, wynikajacy z zastapienia scisego problemu ciagego proble-mem dyskretnym oraz

bad zaokraglenia, wynikajacy z faktu, iz obliczenia prowadzone sa ze skon-czona dokadnoscia.

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 8

Dlatego tez warunek poczatkowy w problemie Cauchyego ulega w kazdym kro-ku rozmyciu:

dy

dx= f(x,y)

y(x0) = y0

dy

dx= f(x,y)

y(x1) = y1+1

dy

dx= f(x,y)

y(x2) = y2+2(6)

Gdyby ten bad rozmycia mg propagowac sie z kroku na krok, rozwiazanie nu-meryczne szybko mogoby przestac miec cokolwiek wsplnego z rozwiazaniemwyjsciowego problemu Cauchyego: aby metoda bya stabilna, bedy popenianew kolejnych krokach nie moga narastac z kroku na krok.

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 9

Zakadamy, ze bedy sa niewielkie, ||n|| 1, mozemy sie wiec ograniczyc doprzyblizenia liniowego. W tym przyblizeniu

n+1 = Gn . (7)

Bedy nie beda narastac z kroku na krok, jesli wszystkie wartosci wasne macie-rzy G beda speniac || < 1. Macierz G nazywamy macierza wzmocnienia.

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 10

Przykad: Dla jednokrokowej metody jawnej

yn+1 + n+1 = F(h;xn,yn + n) '

F(h;xn,yn) + Fy

y=yn

n . (8)

W powyzszym wyrazeniu F/y oznacza rzniczkowanie wszystkich skado-wych F po wszystkich skadowych y, czyli obliczanie jakobianu: Dla jednokro-kowej metody jawnej

G =Fy

(h;xn,yn) . (9)

Jezeli jakas metoda w ogle moze byc stabilna dla danego rwnania, wymgstabilnosci oznacza na og wziecie odpowiednio maego kroku h. Zgodnie z wy-razeniem (9), krok czasowy, ktry w pewnym punkcie zapewnia stabilnosc, mozego nie zapewniac w innym.5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 11

Jawna metoda Eulera

Problem Cauchyego (1) to przepis na to jak uzyskac rozwiazanie po infinitezy-malnie maym kroku czasowym. Sprbujmy zastosowac ten przepis dla krokwmaych, ale o skonczonej dugosci. W tym celu dokonajmy rozwiniecia Taylora:

yn+1 = y(xn+1) = y(xn + h) ' y(xn) +dy

dx

x=xn,y=yn

h + O(h2) , (10)

a zatem

yn+1 = yn + h f(xn,yn) + O(h2) . (11)

Metoda ta, zwana jawna metoda Eulera, jest najpopularniejsza (i jedna z najgor-szych) metoda uzywanych do numerycznego cakowania rwnan rzniczkowychzwyczajnych.

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 12

Uwaga na bad zaokraglenia!

Zauwazmy, iz po prawej stronie (11) mamy sume dwch wyrazw: Jednego duzego, rzeduO(1), i drugiego maego, rzedu O(h). Moze to doprowadzic to utraty dokadnosci, zwaszczajesli 0 < h 1. Problem jest tym wiekszy, ze ostateczne rozwiazanie uzyskujemy po wielukrokach Eulera. Mozna temu przynajmniej czesciowo zaradzic odpowiednio adaptujac algorytmsumacyjny Kahana: Niech z0 = 0. W kazdym kroku obliczamy

= h f(xn,yn) + zn , (12a)yn+1 = yn + , (12b)zn+1 =

(yn+1 yn

)(12c)

Nawiasy w ostatnim z wyrazen (12) nie sa redundantne. W artymetyce dokadnej (bez bedwzaokraglenia) zn 0 i metoda (12) sprowadza sie do metody (11).Chociaz nie bedziemy tego pisac jawnie, trick zastosowany w (12) nalezy stosowac we wszyst-kich metodach omawianych w trakcie tych wykadw.

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 13

Inne wyprowadzenie metody Eulera:(pozornie inne)

y(xn + h) = yn +

xn+h

xn

dy

dxdx = yn +

xn+h

xn

f(x,y(x))dx

' yn +xn+h

xn

(f(xn,yn) + O(h)) dx = yn + h f(xn,yn) + O(h2) . (13)

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 14

Interpretacja geometryczna jawnej metody Eulera(przypadek jednowymiarowy)

y1

y0

x0 x1

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 15

Przykad zastosowania jawnej metody Eulera

0.60

0.65

0.70

0.75

0.80

0.85

0.90

0.95

1.00

0 0.25 0.5 0.75 1 1.25

y

x

dy/dx = -y + x

y(0) = 1

2e-x + x -1h=1/16h=1/8

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 16

Stabilnosc jawnej metody Eulera

yn+1 + n+1 = yn + n + h f(xn,yn + n)

' yn + n + h f(xn,yn) + hJ(xn,yn)n (14)

a zatem macierz wzmocnienia ma postac

G = I+ hJ(xn,yn) , (15)

gdzie J(xn,yn) = f/y|x=xn,y=yn jest jakobianem prawej strony rwnaniapo drugiej zmiennej. I jest macierza jednostkowa.5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 17

Obserwacja:Dla rwnania liniowego

dy

dx= Ay , (16)

gdzie A Rnn, macierza wzmocnienia w jawnej metodzie Eulera jest

G = I+ hA . (17)

Macierz A moze, w oglnosci, zalezec od zmiennej niezaleznej, A = A(x).5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 18

Niejawna metoda Eulera

Przy wyprowadzaniu jawnej metody Eulera rozwijalismy poszukiwana funkcjew szereg Taylora wok lewego kranca przedziau. Nic jednak nie szkodzi doko-nac rozwiniecia wok prawego kranca:

yn = y(xn) = y(xn+1 h) ' y(xn+1)dy

dx

x=xn+1,y=yn+1

h + O(h2) ,

(18)a zatem

yn+1 = yn + h f(xn+1,yn+1) + O(h2) . (19)

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 19

W wyrazeniu (19) nieznana wielkosc yn+1 wystepuje po obu stronach jest tozatem rwnanie algebraiczne, jakie speniac ma numeryczna wartosc poszuki-wanego rozwiazania.

Zauwazmy, ze obie metody Eulera, jawna i niejawna, sa tego samego rzedu.Istotnie,

yn+1 = yn + h f(xn+1,yn+1) + O(h2)

= yn + h f(xn + h,yn + h f(xn+1,yn+1)) + O(h2)

' yn + h(f(xn,yn) +

f

x

...

h +f

y

...

h f( ) + O(h2))

+ O(h2)

= yn + h f(xn,yn) + O(h2) . (20)

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 20

Interpretacja geometryczna niejawnej metody Eulera(przypadek jednowymiarowy)

yexpl

y1

y0

x0 x1

ytarget

yguess

5. Terminologia. Metody Eulera, metody punktu srodkowego i metody trapezowe. 21

Przykad zastosowania niejawnej metody Eulera

0.60

0.65

0.70

0.75

0.80

0.85

0.90

0.95

1.00