background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

1

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

Rozwi zywanie równa  ró niczkowych zwyczajnych

Równaniem ró niczkowym zwyczajnym n-tego rz du b dziemy nazywa  równanie postaci:

F x,y, dy

dt

, d

2

y

dx

2

, d

3

y

dx

3

, , d

n

y

dx

n

0

Ogólnie równanie takie mo e by  spełnione przez wiele funkcji () —  aby mo liwe było jednoznaczne wyznaczenie

rozwi zania konieczne jest podanie dodatkowych informacji — warto ci funkcji (x) i ewentualnie jej pochodnych dla

jakiej  warto ci x. Koniecznych b dzie n takich warto ci. Je li podano je wszystkie dla tego samego punktu x

 0

 to mamy

zagadnienie pocz tkowe, je li wchodzi w gr  wi cej ni  jedna warto  x  to zagadnienie takie nazywamy brzegowym.

Zazwyczaj w przypadku równa  ró niczkowych zwyczajnych wy szych rz dów mo liwe jest dokonanie podstawienia

–1 nowych zmiennych (za wy sze pochodne) i wówczas równanie wy szego rz du zostaje zamienione na układ n równa

rz du pierwszego. Dlatego te  omawia si  zwykle tylko metody rozwi zywania równa  rz du pierwszego.

Rozwi zania numeryczne, które b dziemy otrzymywa  nie b d  oczywi cie w postaci funkcji analitycznych — b d

to warto ci zbli one do warto ci rozwi zania obliczone dla pewnej sko czonej liczby punktów x

 i

. Odległo ci pomi dzy

dwoma s siednimi punktami b dziemy oznacza  przez h (na razie zakładamy,  e s  one stałe, mo liwo  zmiany kroku

b dzie omawiana oddzielnie).

Zagadnienia pocz tkowe

Rozwini cie w szereg Taylora

Jedn   z  metod  rozwi zywania  równa   ró niczkowych  zwyczajnych  postaci   

    jest  wyra enie

ddx

f x,y

rozwi zania (x) w postaci szeregu Taylora w otoczeniu punktu x

0

:

y x

0

h

y x

0

h f x

0

,y x

0

h

2

2!

f x

0

,y x

0

h

3

3!

f x

0

,y x

0

Je li jako warunek pocz tkowy podano (x

0

) to (x

0

,(x

0

)) otrzymamy bezpo rednio z równania ró niczkowego, a

pozostałe pochodne mo na wyliczy . Po dan  ilo  wyrazów nale y wstawi  do badanego równania i scałkowa . Niestety

w ogólnym przypadku obliczenia kolejnych pochodnych staj  si  zbyt skomplikowane.

Metoda Eulera

Jest  to  najprostsza  (w  swej  klasycznej  postaci)  z  metod  numerycznych.  Odpowiada  ona  rozwi zaniu  za  pomoc

rozwini cia w szereg Taylora, w którym zachowano tylko pierwsze pochodne. Rozwi zywane równanie ró niczkowe

przekształcimy do postaci:

dy

dx

f x,y

i zało ymy,  e podano nam pocz tkow  warto  funkcji y

0

(x

0

).

Działanie metod Eulera (podstawowej i jej obu modyfikacji) b dzie ilustrowane na dwóch przykładowych równaniach

ró niczkowych:

dy
dx

y

2x

y

i

dy
dx

x

y

Równania te b d  rozwi ywane wszystkimi trzema metodami w przedziale <0,1>, dla warunku pocz tkowego y(0) = 1

i z trzena ró nymi krokami h wynosz cymi 0.2, 0.1 i 0.05.

Klasyczna metoda Eulera

Mo emy zastosowa  nast puj cy algorytm:

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

2

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

y

1

y x

0

h f x

0

,y x

0

y

1

y

i

h f x

i

,y

i

>0

za pomoc  którego wychodz c od znanych warto ci pocz tkowych x

0

,y

0

 mo na obliczy  kolejno warto ci szukanej funkcji

we wszystkich dalszych punktach x

 i

. Mo na udowodni ,  e bł d (zdefiniowany jako ró nica rozwi zania analitycznego

i  obliczonych  warto ci  przybli onych)  d y  do  zera  dla  h  d

cego  do  zera.  Metoda  Eulera  jest  metod   zbie n   o

dokładno ci  rz du  O(h)  (chodzi  tu  o  bł d  globalny  —  tzn.  po  przej ciu  wszystkich  kroków  —  bł d  lokalny  —

odpowiadaj cy przej ciu od jednej warto ci do s siedniej — jest rz du O(h

 2

)).

Zmodyfikowane metody Eulera

Pierwsza modyfikacja metody Eulera polega na obliczeniu najpierw warto ci po rednich:

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

3

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

x

i

1
2

x

i

h
2

y

i

1
2

y

i

h
2

f x

i

,y

i

f

i

1
2

f x

i

1
2

,y

i

1
2

a nast pnie wykorzystaniu ich do obliczenia kolejnej warto ci y

 i+1

:

y

1

y

i

h f

i

1
2

Druga  modyfikacja  metody  Eulera  (zwana  te   metod   Heuna)  polega  na  obliczeniu  najpierw  warto ci  „wst pnie

przybli onych”:

y

1

y

i

h f x

i

,y

i

f

1

f x

1

,y

1

po czym oblicza si  warto ci y

 i+1

:

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

4

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

y

1

y

i

h

f

i

f

1

2

W obu modyfikacjach odrzucona reszta rozwini cia w szereg Taylora jest rz du O(h

3

) (jest to bł d lokalny — tzn.

odpowiadaj cy przej ciu pomi dzy dwiema kolejnymi warto ciami przybli enia).

W praktyce przyjmuje si ,  e bł d uzyskanego rozwi zania jest równy ró nicy pomi dzy rozwa anym rozwi zaniem,

a innym rozwi zaniem tego samego zagadnienia otrzymanym dla dwa razy wi kszego kroku h.

Bł d rozwi zania mo na te  szacowa  na podstawie tzw. 

kryterium Rungego — wynosi on   ró nicy rozwa anego

rozwi zania i rozwi zania otrzymanego dla kroku dwukrotnie wi kszego.

Porównanie metod Eulera

Poni ej  znajduj   si   wykresy  przedstawiaj ce  rozwi zania  oraz  warto ci  bł dów  rozwi za   otrzymanych

poszczególnymi metodami dla ró nych długo ci kroków.

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

5

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

Jak  wida   nie  mo na  jednoznacznie  stwierdzi ,  która  z  modyfikacji  metody  Eulera  jest  lepsza  —  zale y  to  od

konkretnego rozwi zywanego zagadnienia.

Metoda Eulera z iteracj

Metod  Eulera mo na udokładni  stosuj c dla ka dej obliczonej warto ci y

 i

 dodatkowo proces iteracyjny. Traktuj c

warto  obliczon  klasyczn  metod  Eulera jako zerowe przybli enie:

y

0

1

y

i

h f x

i

,y

i

zastosujemy nast puj cy proces iteracyjny:

y

k

1

y

i

h
2

f x

i

,y

i

f x

1

,y

1

1

który b dzie powtarzany, a  dwa kolejne wyniki b d  zgodne z zadan  ilo ci  cyfr znacz cych, wtedy ostatni z nich

przyjmiemy za y

 i+1

.

Zazwyczaj proces taki jest szybkozbie ny (tzn. zadowalaj cy wynik powini my otrzyma  ju  po kilku iteracjach) —

je li po 3-4 iteracjach nie uzyskujemy zbie no ci nale y zmniejszy  krok h.

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

6

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

Rozwi zywanie równa  ruchu

Bardzo cz stym przypadkiem jest rozwi zywanie równa  ruchu (dla jednego lub bardzo wielu ciał) — s  to oczywi cie

równania drugiego rz du. Ka de takie równanie (drugiego rz du) mo na zapisa  jako układ dwóch równa  pierwszego

rz du.  Poni sze  równania  zostały  zapisane  wektorowo  —  z  punktu  widzenia  rozwi zania  numerycznego  liczba

wyst puj cych  w  problemie  wymiarów  sprowadza  si   do  wymiaru  tablic  wykorzystywanych  do  przechowywania

rozwi zania.

Podstawow  posta  równania ruchu:

d

2

R

dt

2

F

m

a

Przepiszemy w nieco innej postaci:

dv

dt

a r,v

dr

dt

v

Typowy algorytm Eulera b dzie mie  wówczas tak  posta :

v

1

v

i

a

i

r

1

r

i

v

i

Algorytm Eulera-Cromera

Pewn  modyfikacj  algorytmu Eulera jest algorytm nazywany algorytmem Eulera-Cromera. Modyfikacja polega na tym,

e do obliczenia kolejnej warto ci poło enia wykorzystuje si  obliczon  przed chwil  warto  pr dko ci:

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

7

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

v

1

v

i

a

i

r

1

r

i

v

1

Jest to bardzo niewielka zmiana (co do zasady identyczna z modyfikacj  Seidla, któr  poznali my w przypadku układów

równa ), jednak w wi kszo ci przypadków algorytm Eulera-Cromera zdecydowanie góruje nad typowym algorytmem

Eulera.

Algorytm Verlet’a

Załó my,  e mamy do rozwi zania równanie ruchu (albo równania — dla wielu ciał). Poniewa  jest to równanie 2-go

stopnia rozwi zujemy je jako układ dwóch równa  rz du pierwszego. Je li interesuje nas przede wszystkim trajektoria

ciała, to mo na byłoby twierdzi ,  e rozwi zanie pierwszego z równa  — daj ce pr dko  — jest dla nas strat  czasu.

W sytuacji takiej zastosowanie znajduje algorytm Verlet’a.

Jeszcze raz równanie ruchu:

d 2

R

dt

2

F

m

a

Drug  pochodn  zapiszemy w postaci ró nicowej:

d

2

R

dt

2

1

2

R

1

2R

n

R

1

gdzie n oznacza numer kolejny kroku czasowego, a   jest jego długo ci .

Proste przekształcenie doprowadza nas do:

R

1

2R

n

R

1

2

a

n

Jak wida  z wzoru na R

n+1

 do „uruchomienia” tego algorytmu potrzebne s  dwie kolejne warto ci pocz tkowe poło e .

W problemach fizycznych z jakimi mo emy si  spotka , zazwyczaj b dziemy zna  tylko jedn  warto  poło enia — w

chwili  pocz tkowej  i  odpowiadaj c   jej  warto   pr dko ci.  Dla  „uruchomienia   algorytmu  konieczne  b dzie

„wygenerowanie”  drugiej  potrzebnej  warto ci  —  najpro ciej  mo na  to  zrobi   zakładaj c  stało   przyspieszenia  w

pierwszym odcinku czasu  . W takim przypadku warto  R

1

 b dzie taka jak dla ruchu jednostajnie przyspieszonego:

R

1

R

0

V

0

2

2

a

0

Gdyby potrzebna była równie  pr dko  cz stki to j  równie  mo emy zapisa  w postaci ró nicowej (skorzystamy

z wzoru centralnego):

V

dR

dt

1

2

R

1

R

1

sk d otrzymamy:

V

n

R

1

R

1

2

Jak wida  wzór ten mo e w pewnych sytuacjach by  „niepor czny” — obliczana pr dko  jest „opó niona”  w

stosunku do poło enia o jeden krok czasowy. Mo na temu zaradzi  obliczaj c j  wprost z działaj cej siły:

V

1

V

n

a

n

znacznie dokładniejsze wyniki uzyskamy wykorzystuj c do oblicze  zamiast a

n

  redni  wyznaczon  z a

n

 i a

n+1

 (a

n+1

b dziemy zna  bo „przed chwil ” obliczyli my poło enie R

n+1

).

Poni ej przedstawiono rozwi zania prostego zagadnienia: harmonicznego ruchu wahadła bez oporów, tłumienia i

wymuszenia. Dragj ca masa jest jednostkowa, współczynnik spr ysto ci te  jest jednostkowy.

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

8

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

Pierwsze trzy rysunki przedstawiaj  wykres poło enia drgaj cej masy w funkcji czasu. W przypadku podstawowej

metody Eulera ju  „na oko” wida ,  e wyniki s  złe — wiemy,  e energia, a co za tym idzie i amplituda, opisywanego

układu powinny by  stałe. Jednak wybór której  z pozostałych dwóch metod mo e by  trudny. Aby lepiej je oceni

wyznaczymy całkowit  energi  układu i zbadamy jej zmiany z czasem. Przy rzyj tych parametrach (jednostkowa masa

i współczynik spr ysto ci) całkowita energia wynikaj ca z warunków pocz tkowych równie  jest jednostkowa. Fakt,  e

energia ta ewidentnie nie jest stała podczas trwania ruchu, nie musi od razu dyskwalifikowa  metody — ze wzgl du na

ró nego rodzaju bł dy nie mo emy oczekiwa  rzeczywistej stało ci całkowitej energii — decyduj cym kryterium b dzie

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

9

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

to czy obliczona energia całkowita waha si  w ograniczonym zakresie czy te  amplituda jej waha  wzrasta. Oczywi cie

celem  wyboru  metody  nale ałoby  sporz dzi   te  wykresy  dla  du o  dłu szego  czasu  —  poni ej  czas  przedłu ono

dziesi ciokrotnie:

Metody Rungego-Kutty

Metod   Eulera  otrzymujemy  dzi ki  rozwini ciu  szukanej  funkcji  w  szereg  Taylora  i  odrzuceniu  wyrazów

zawieraj cych pochodne rz du wy szego ni  pierwszy — bł d lokalny jest wówczas rz du O(h

2

). Zachowanie wy szych

pochodnych  jest  mo liwe  tylko  dla  bardzo  szczególnych  postaci  równa ,  w  ogólnym  przypadku  b d   one  zbyt

skomplikowane. Mo liwe jest jednak stworzenie metody jednokrokowej (tzn. wymagaj cej znajomo ci tylko jednego

wcze niejszego punktu) o dokładno ci lokalnej wy szego rz du. S  to metody Rungego-Kutty.

Ogólnie algorytm metod Rungego-Kutty jest nast puj cy:

y

1

y

i

h

x

i

,y

i

,h

funkcja  (x,y,h) jest odpowiednio dobran  aproksymacj  funkcji (x,) na przedziale (x

 i

,x

 i+1

).

Metoda Rungego-Kutty rz du drugiego

Załó my,  e funkcj   (x,y,) zdefiniujemy jako  redni  z dwóch przybli e  pochodnej (x,), oznaczymy je przez

k

1

 i k

2

:   (x,y,h) = ak

1

 + bk

2

. Wówczas algorytm Rungego-Kutty (drugiego rz du) b dzie mie  posta :

y

1

y

i

h ak

1

bk

2

Załó my dalej,  e:

k

1

f x

i

,y

i

k

2

f x

i

ph,y

i

qhf x

i

,y

i

f x

i

ph,y

i

qhk

1

gdzie p i q s  stałymi, które wyznaczymy pó niej.

Rozwi my k

2

 w szereg Taylora opuszczaj c wszystkie wyrazy zawieraj ce pot gi h wy sze ni  pierwsza:

k

2

f x

i

ph,y

i

qhf x

i

,y

i

f x

i

,y

i

phf

x

x

i

,y

i

qhf x

i

,y

i

f

y

x

i

,y

i

h

2

Szereg Taylora dla funkcji dwóch zmiennych:

(x r,y s)

(x,y)

rf

x

sf

y

r

2

2

f

xx

rsf

xy

s

2

2

f

yy

Podstawiaj c definicj  k

1

 i rozwini cie k

2

 do algorytmu otrzymamy:

y

1

y

i

h af x

i

,y

i

bf x

i

,y

i

h

2

bpf

x

x

i

,y

i

bqf x

i

,y

i

f

y

x

i

,y

i

h

3

Nast pnie rozwiniemy w szereg Taylora funkcj  b d c  rozwi zaniem dokładnym:

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

10

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

y x

i

h

y x

1

y x

i

hf x

i

,y x

i

h

2

2

f x

i

,y x

i

h

3

3!

f

,y

gdzie    jest liczb  z przedziału (x

i

,x

i+1

). Pochodna (x

i

,y(x

i

)):

f x

i

,y x

i

f

x

x

i

,y x

i

f

y

x

i

,y x

i

f x

i

,y x

i

Je li teraz za damy, aby współczynniki przy odpowiednich pot gach h były równe to otrzymamy:

y x

i

y

i

f x

i

,y x

i

a b f x

i

,y

i

1
2

f

x

x

i

,y x

i

f

y

x

i

,y x

i

f x

i

,y x

i

bpf

x

x

i

,y

i

bqf

y

x

i

,y

i

f x

i

,y

i

Je li zało ymy y

i

 = (x

i

) i za damy, aby dla wszystkich funkcji współczynniki przy h

2

 były równe otrzymamy

a + b = 1, bp = ½ oraz bq = ½, a zatem:

a

1

b

p

q

1

2b

Poniewa  mamy tylko trzy równania, a cztery niewiadome, mo emy jedn  z nich wybra  dowolnie, najcz ciej

przyjmuje si  b = ½  albo b = 1.

 W przypadku b = ½ otrzymamy a = ½, p = 1 i q = 1. Algorytm b dzie mie  wówczas posta :

y

1

y

i

h
2

f x

i

,y

i

f x

i

h,y

i

hf x

i

,y

i

co mo na zapisa  równie  w postaci:

y

1

y

i

hf x

i

,y

i

y

1

y

i

h
2

f x

i

,y

i

f x

1

,y

1

Jest to metoda identyczna z podan  wcze niej drug  modyfikacj  metody Eulera. Metody tego typu nazywane s

metodami predyktor-korektor, poniewa  najpierw za pomoc  metody daj cej gorsze przybli enie przewidujemy warto

y

i+1

 (jest to warto  jak  y

i+1

 miałoby gdyby nachylenie (pochodna) wynosiło k

1

), a nast pnie uzyskujemy skorygowan

warto  y

i+1

 (jako  redni  wa on  z warto ci f  na obu ko cach przedziału (x

i

,x

i+1

). Metoda ta jest znana równie  pod nazw

metody Heuna. Ilustruje j  lewy rysunek powy ej.

Dla b = 1 otrzymamy a = 0, p = ½ i q = ½ i algorytm przyjmie posta :

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

11

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

y

i

1
2

y

i

h
2

f x

i

,y

i

y

1

y

i

hf x

i

h
2

,y

i

1
2

Ten algorytm z kolei odpowiada przedstawionej ju  pierwszej modyfikacji metody Eulera. Najpierw za pomoc

normalnej metody Eulera otrzymujemy warto  y  w połowie przedziału (x

i

,x

i+1

), a nast pnie znajdujemy warto  f  w tym

punkcie i wykorzystujemy j  do obliczenia y na ko cu przedziału. Ilustruje to prawy rysunek powy ej.

Metoda Rungego-Kutty rz du trzeciego

Metody Rungego-Kutty wy szych rz dów wyprowadza si  analogicznie. Dla metody rz du trzeciego funkcja   ma

posta :   = ak

1

 + bk

2

 + ck

3

, gdzie k

1

k

2

 i k

3

 s  przybli eniami warto ci pochodnej w ró nych punktach wewn trz przedziału

(x

i

,x

i+1

):

k

1

f x

i

,y

i

k

2

f x

i

ph,y

i

phk

1

k

3

f x

i

rh,y

i

shk

2

r s hk

1

Algorytm jest wi c dany wzorem:

y

1

y

i

h ak

1

bk

2

ck

3

Aby wyznaczy  stałe abcpr  i s rozwijamy k

2

 i k

3

 oraz funkcj  y w szeregi Taylora wokół punktu (x

i

,y

i

) odrzucaj c

wyrazy zawieraj ce pot gi h wy sze ni  trzecia i przyrównujemy odpowiednie wyrazy. Otrzymamy układ równa :

a

b

c

1

bp

cr

1
2

bp

2

cr

2

1
3

cps

1
6

Dwie z tych stałych mo na przyj  dowolnie. Kutta dokonał wyboru, przy którym algorytm dla metody trzeciego rz du

jest nast puj cy:

y

1

y

i

h
6

k

1

4k

2

k

3

k

1

f x

i

,y

i

k

2

f x

i

1
2

h,y

i

1
2

hk

1

k

3

f x

i

h,y

i

2hk

2

hk

1

W powy szych wzorach przyj to a = c = 1/6, b = 4/6, p = ½, r = 1 i s = 2.

Poni ej przedstawiam bł dy metody Runge-Kutty trzeciego rz du zastosowanej do identycznych jak poprzednio dwóch

równa  przykładowych:

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

12

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

Metoda Rungego-Kutty rz du czwartego

Algorytm metod rz du czwartego jest oczywi cie nast puj cy:

y

1

y

i

h ak

1

bk

2

ck

3

dk

4

U ywanych jest kilka algorytmów, autorem dwu poni szych jest Kutta:

y

1

y

i

h
6

k

1

2k

2

2k

3

k

4

k

1

f x

i

,y

i

k

2

f x

i

1
2

h,y

i

1
2

hk

1

k

3

f x

i

1
2

h,y

i

1
2

hk

2

k

4

f x

i

h,y

i

hk

3

albo

y

1

y

i

h
8

k

1

3k

2

3k

3

k

4

k

1

f x

i

,y

i

k

2

f x

i

1
3

h,y

i

1
3

hk

1

k

3

f x

i

2
3

h,y

i

1
3

hk

1

hk

2

k

4

f x

i

h,y

i

hk

1

hk

2

hk

3

Jednak najcz ciej wykorzystywan  metod  czwartego rz du jest metoda Gilla:

y

1

y

i

h
6

k

1

2 1

1

2

k

2

2 1

1

2

k

3

k

4

k

1

f x

i

,y

i

k

2

f x

i

1
2

h,y

i

1
2

hk

1

k

3

f x

i

1
2

h,y

i

1
2

1

2

hk

1

1

1

2

hk

2

k

4

f x

i

h,y

i

1

2

hk

2

1

1

2

hk

3

Poni ej przedstawiam bł dy metody Runge-Kutty czwartego rz du zastosowanej do identycznych jak poprzednio

dwóch równa :

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

13

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

k

1

f x,y

k

2

f x c

2

hy ha

2,1

k

1

k

s

f x c

s

hy h

1

1

a

s,j

k

j

x,y,h

s

1

b

i

k

i

y

1

y

k

h

x

k

,y

k

,h

Ogólny schemat metod Runge-Kutta

Ogólny wzór podany przez Rungego:

Odnosi si  on w gruncie rzeczy do wszystkich metod Runge-Kutta. Indeks s odpowiada tu rz dowi metody. W

literaturze mo na spotka  taki zapis zmiennych wyst puj cych w tym schmacie:

0

c

2

a

2,1

c

3

a

3,1

a

3,2

c

s

a

s,1

a

s,2

a

s,1

b

1

b

2

b

1

b

s

Ogólnie rzecz bior c podczas „własnor cznego” tworzenia jakiego  schematu tego typu potrzebne b d  rozwini cia

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

14

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

f x

1

,x

2

, ,x

n

f a

1

,a

2

, ,a

n

n

1

f

x

i a

1

,a

2

, ,a

n

x

i

a

i

1

2!

n

1

n

1

2

f

x

i

x

j a

1

,a

2

, ,a

n

x

i

a

i

x

j

a

j

R

m

x

1

,x

2

, ,x

n

Taylora funkcji kilku zmiennych. Ogólny wzór na takie rozwini cie funkcji f w pobli u punktu a jest nast puj cy:

Bł dy metod Rungego-Kutty

Ogólnie bł d w metodach Rungego-Kutty mo na okre li  nast puj co. Załó my,  e bł d zdefiniujemy jako ró nic

pomi dzy warto ci  rozwi zania analitycznego y (gdyby było znane), a warto ci  otrzyman  przy kroku h

1

 lub h

2

 w

wyniku scałkowania równania na przedziale (x

 i

,x

 i+1

):

1

y

y

1

m

h

1

1

x

1

x

i

h

1

2

y

y

2

m

h

1

2

x

1

x

i

h

2

Dziel c oba powy sze równania stronami otrzymamy:

y

y

1

y

2

h

1

h

2

m

1

h

1

h

2

m

co dla h

2

 = h

1

/2 przechodzi w:

y

y

1

2

m

y

2

1 2

m

Podstawiaj c t  warto  do pierwszego lub drugiego wyra enia na bł d otrzymamy:

1

2

m

y

2

y

1

2

m

1

2

y

2

y

1

2

m

1

gdzie m jest rz dem metody, a y

1

 i y

2

 s  warto ciami otrzymanymi odpowiednio dla kroków h

1

 i h

2

 = h

1

/2. Oczywi cie taki

sposób obliczania bł du wymaga praktycznie potrojenia ilo ci oblicze , nie nadaje si  wi c do praktycznego zastosowania.

W przypadku metod nieparzystego rz du istnieje mo liwo  przeprowadzenia po ka dym cyklu cyklu odwrotnego (tzn.

ponownego obliczenia warto ci y

 i

 na podstawie wła nie obliczonej warto ci y

 i+1

). Po takim obliczeniu jako bł d mo na

przyj  połow  ró nicy mi dzy obliczonymi w obu kierunkach warto ciami y

 i

.

Wybór długo ci kroku

Collatz podał praktyczne jako ciowe kryterium doboru kroku całkowania dla pierwszego z podanych algorytmów

Kutty czwartego rz du: po ka dym kroku nale y obliczy  warto  wyra enia:  k

3

 – k

2

 /  k

2

 – k

1

. Je eli przekracza ona

kilka setnych to długo  kroku nale y zmniejszy .

Cz sto  stosowana  jest  metoda  polegaj ca  na  obliczaniu  (co  jak   liczb   kroków)  warto ci  przybli onej  bł du:

 =  y

1

 – y

2

 / 15. Je li warto    jest mniejsza od po danej dokładno ci obliczenia prowadzone s  dalej. Je li jest

mniejsza ni  1/50 zało onej dokładno ci krok powi ksza si  dwukrotnie. Je li jest wi ksza — obliczenia powtarza si  (od

miejsca gdzie ostatnio sprawdzano  ) z krokiem dwukrotnie mniejszym.

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

15

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

Najcz ciej spotykan  metod  oblicze  ze zmiennym krokiem jest metoda Runge-Kutta-Fehlberg (o której dalej).

W przypadku programu maj cego mo no  zmiany długo ci kroku musimy oczywi cie poda  dopuszczalny zakres

tych zmian, a wi c poda  jego maksymaln  i minimaln  

dopuszczaln  długo . Oczywi cie wektor wynikowy takiego

programu (zawieraj cy obliczone warto ci y

i

) ma nieprzewidywaln  długo . Co wi cej, konieczne b dzie zapisanie w

pami ci równie  wektora „chwil czasu”, którym odpowiadaj  wyznaczone warto ci funkcji — zatem cały program mo e

okaza  si  bardziej „pami cio erny”. Z drugiej jednak strony, je li charakter funkcji nie wymusi skracania kroku, a

umo liwi jego wydłu anie, mo emy zaoszcz dzi  i na pami ci i na czasie (a przynajmniej na cyklach oblicze ). Je li oka e

si ,  e  uzyskane  rozwi zania  nie  wypadaj   w  punktach,  na  których  nam  zale ało  b dziemy  musieli  przeprowadzi

interpolacj .

Stabilno  metod jednokrokowych

Przykład: Rozwa my znowu równanie:

dy
dx

f x,y

x

y

którego rozwi zanie analityczne ma posta :

y x

1 1 x

0

y x

0

e

x x

0

Przy warunku pocz tkowym (0) = –1 jego rozwi zaniem analitycznym jest: () = –x – 1. Jak wida  przy takim

warunku pocz tkowym składnik eksponencjalny w rozwi zaniu analitycznym znika, ale nawet minimalna zmiana warunku

pocz tkowego, np. na –0,99999 spowoduje w ko cu znaczn  zmian  warto ci y dla du ych x. Tymczasem rozwi zywanie

równa   ró niczkowych  metodami  jednokrokowymi  sprowadza  si   w  ka dym  kroku  do  rozwi zywania  kolejnego

zagadnienia pocz tkowego — wynik uzyskany w kroku i staje si  warunkiem pocz tkowym dla obliczenia wyniku +1.

Tego rodzaju niestabilno  jest cech  konkretnego równania i jego warunku pocz tkowego, a nie zale y od tego jaki

konkretny algorytm jednokrokowy zostanie wykorzystany.

Metoda Runge-Kuta-Fehlberg

Metoda ta jest znana równie  jako „RKF45" (funkcja „ODE45" Matlaba wykorzystuje t  wła nie metod ). Jest to

metoda  o  zmiennym  kroku,  jednak  w  celu  doboru  długo ci  kroku  nie  stosuje  si   w  niej  porównywania  wyników

otrzymanych przy dwóch ró nych długo ciach kroków — zamiast tego porównuje wyniki trzymane dla dwóch ró nych

rz dów metody obliczeniowej (czwartego i pi tego).

Algorytm.

Kolejne współczynniki:

k

1

hf t

i

,y

i

k

2

hf t

i

1
4

h,y

i

1
4

k

1

k

3

hf t

i

3
8

h,y

i

3

32

k

1

9

32

k

2

k

4

hf t

i

12
13

h,y

i

1932
2197

k

1

7200
2197

k

2

7296
2197

k

3

k

5

hf t

i

h,y

i

439
216

k

1

8k

2

3680

513

k

3

845

4104

k

4

k

6

hf t

i

1
2

h,y

i

8

27

k

1

2k

2

3544
2565

k

3

1859
4104

k

4

11
40

k

5

Kolejne przybli enie (obliczenia rz du 4):

y

1

y

i

25

216

k

1

1408
2565

k

3

2197
4104

k

4

1
5

k

5

Lepsze rozwi zanie (obliczenia rz du 5):

z

1

y

i

16

135

k

1

6656

12825

k

3

28561
56430

k

4

9

50

k

5

2

55

k

6

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

16

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

Nast pny krok wyznacza si  badaj c nast puj c  wieko :

s

Tol h

z

1

y

1

1
4

0.84

Tol h

z

1

y

1

1
4

Długo  kroku mo emy regulowa  na kilka sposobów:

• metod  „konserwatywn ”: Je li s < 3/4 — krok zmniejszamy o połow , je li s > 3/2 — krok zwi kszamy dwukrotnie

— jak łatwo zauwa y  przy zastosowaniu tej metody przez wi kszo  czasu krok pozostanie stały

• metod  „dynamiczn ”: Sprowadzamy warto  s do wybranego zakresu (np. <0.1,4.0> — tzn. je li s < 0.1 to

podstawiamy s = 0.1 i je li s > 4 to podstawiamy s = 4), a nast pnie mno ymy dotychczasowy krok przez s (post pujemy

tak w ka dym kroku).

• metod  „mieszan ”: Post pujemy tak jak w metodzie „konserwatywnej”, ale zmian  kroku uzyskujemy mno c jego

aktualn  długo  przez obliczon  warto  s.

Oczywi cie niezale nie od zastosowanej metody w programie powinny by  narzucone granice dopuszczalnych zmian

długo ci kroku — tzn. maksymalna i minimalna nieprzekraczalna długo  kroku.

Podane warto ci granic przedziałów warto ci współczynnika  s wynikaj  z praktyki, mo emy je dobra  do konkretnego

rozwi zywanego zagadnienia

Istnieje pogl d,  e jako wynik procedury nale y, zamiast wektora y, przedstawia  obliczany równolegle wektor  z.

Poni sze  wykresy  przedstawiaj   porównanie  metody  Runge-Kutta  rz du  4  i  metody  Runge-Kutta-Fehlebrg

(wykorzystuj c  przedstawion  wy ej „konserwatywn ” metod  zmiany kroku) zastosowanych do ju  wcze niej podanych

dwóch równa  przykładowych. Pocz tkowy krok zastosowany w metodzie RKF był taki sam jak krok u ywany przez cały

czas oblicze  w metodzie RK4. Warto zauwa y ,  e zastosowanie w metodzie RKF zbyt du ej tolerancji mo e prowadzi

do znacznych bł dów.

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

17

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

Metoda Runge-Kutta-Nyström

Jak wcze niej powiedziano liniowe równania wy szych rz dów mo emy zast powa  układami równa  ni szych

rz dów i rozwi zywa  je kolejno. Jednak w przypadku równa  rz du drugiego opracowano metod  czwartego rz du,

b d c  adaptacj  metody Runge-Kutta. Metoda ta stosuje si  do równa  postaci:

y

f x,y,y

Zakładamy,  e znane s  warto ci funkcji i jej pochodnej w punkcie pocz tkowym. Dla równoodległych punktów x

i

 (krok

równy h) algorytm jest nast puj cy:

y

1

y

n

h y

n

1
3

k

1

k

2

k

3

k

1

1
2

hf x

n

,y

n

,y

n

k

2

1
2

hf x

n

1
2

y

n

1
2

h y

n

1
2

k

1

y

n

k

1

k

3

1
2

hf x

n

1
2

y

n

1
2

h y

n

1
2

k

1

y

n

k

2

k

4

1
2

hf x

n

y

n

h y

n

k

3

y

n

2k

3

y

1

y

n

1
3

k

1

2k

2

2k

3

k

4

W metodzie tej mo na stosowa  opisany ju  wcze niej dla metody Runge-Kutta sposób zmieniania długo ci kroku

h  w  trakcie  oblicze ,  z  tym,  e  oprócz  ró nicy  warto ci  y

1

  i  y

2

  nale y  kontrolowa   równie   ró nice  pomi dzy

odpowiednimi pochodnymi (i tak przecie  obliczanymi); wydłu enie kroku jest mo liwe gdy zarówno warto ci funkcji

jak i pochodnych spełniaj  warunek.

Zastosowanie metod jednokrokowych do układów równa

Jak ju  wcze niej wspominałem, podr czniki nie omawiaj  sposobów rozwi zywania równa  ró niczkowych rz dów

wy szych ni  pierwszy, poniewa   zawsze mo na je sprowadzi  do układu odpowiedniej liczby równa  rz du pierwszego.

Rozwa my równanie ruchu (czyli równanie rz du drugiego):

2

r

t

2

a

podstawiaj c now  zmienn  (pr dko ) otrzymamy układ dwóch równa  (wektorowych) rz du pierwszego (albo sze ciu

równa  skalarnych):

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

18

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

r

t

v

v

t

a

x

t

v

x

y

t

v

y

z

t

v

z

v

x

t

a

x

v

y

t

a

y

v

z

t

a

z

W dalszym ci gu b d  omawia  skalarne równanie drugiego rz du, które po przekształceniu do układu dwóch równa

rz du pierwszego zapiszemy wektorowo:

d

2

r

dt

2

a

dr

dt

v

dv

dt

a

d

dt

r
v

v

a

Gdyby my rozwa ali ruch w trzech wymiarach we wzorach powy ej mieliby my wektory nie dwu- ale sze cioelementowe.

Aby zastosowa  metod  Runge-Kutty trzeciego rz du wła ciwe dla niej wzory zapiszemy w postaci wektorowej:

k

1

f t

i

y

i

f t

i

,

r

i

v

i

v

i

a(r

i

)

k

2

f t

i

1
2

hy

i

1
2

h k

1

f t

i

1
2

h,

r

i

v

i

1
2

h

v

i

a(r

i

)

f t

i

1
2

h,

r

i

1
2

hv

i

v

i

1
2

ha(r

i

)

v

i

1
2

ha(r

i

)

a(r

i

1
2

hv

i

)

k

3

f t

i

hy

i

2h k

2

h k

1

f t

i

h,

r

i

v

i

2h

v

i

1
2

ha(r

i

)

a(r

i

1
2

hv

i

h

v

i

a(r

i

)

f t

i

h,

r

i

2hv

i

h

2

a(r

i

hv

i

v

i

2ha(r

i

1
2

hv

i

ha(r

i

)

v

i

2ha(r

i

1
2

hv

i

ha(r

i

)

a(r

i

2hv

i

h

2

a(r

i

hv

i

I ostateczne rozwi zanie:

y

1

y

i

h
6

k

1

k

2

k

3

Warto zwróci  uwag ,  e do zapisania tych wzorów w Scilabie wyniki przekształce  widoczne po prawej stronie

przedstawionych powy ej wzorów nie b d  potrzebne — funkcj  f zdefiniujemy jako przyjmuj c  dwa argumenty, z

których pierwszym b dzie skalar (czas), a drugim wektor zawieraj cy wszystkie niewiadome.

Analogicznie b dziemy post powa  w przypadku ka dej innej metody.

Metody wielopunktowe

Wszystkie metody przedstawione powy ej s  nazywane jednopunktowymi — a to dlatego,  e do prowadzenia oblicze

wystarczy znajomo  tylko jednej warto ci szukanej funkcji. Podanie warunku pocz tkowego jest wystarczaj ce. W

przeciwie stwie do nich metody wielopunktowe wymagaj  znajomo ci warto ci funkcji w kilku punktach pocz tkowych.

Zazwyczaj jednak warunek pocz tkowy zadany jest w jednym punkcie, wówczas mo liwe jest rozpocz cie oblicze  któr

z przedstawionych powy ej metod jednopunktowych, obliczenie niezb dnej liczby warto ci pocz tkowych, a nast pnie

kontynuowanie oblicze  metod  wielopunktow .

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

19

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

Metoda Adamsa

Załó my,  e  dla  zagadnienia    =  f(x,y)  z  warunkiem  pocz tkowym  y(x

0

)  =  y

0

  znamy  trzy  kolejne  warto ci

y

1

 = y(x

1

) = y(x

0

+h), y

2

 = y(x

2

) = y(x

0

+2h),  y

3

 = y(x

3

) = y(x

0

+3h) — obliczone w inny sposób.

Rozwi zanie znajdujemy w dwóch etapach: w pierwszym dokonujemy ekstrapolacji znanych punktów i znajdujemy

przybli on  warto  punktu kolejnego:

 

y

1

y

i

h

24

55f

i

59f

1

37f

2

9f

3

A nast pnie, wykorzystuj c obliczon  warto  y

 i+

*

1

 do obliczenia f

 i+

*

1

 w etapie drugim dokonujemy jej udokładnienia:

y

1

y

i

h

24

9f

1

19f

i

5f

1

f

2

Poni ej przedstawiam bł dy metody Adamsa  zastosowanej do identycznych jak poprzednio dwóch równa , do

obliczenia punktów pocz tkowych wykorzystano metod  Runge-Kutty drugiego, trzeciego i czwartego rz du:

Metoda Milne'a

Metoda ta działa analogicznie jak przedstawiona powy ej metoda Adamsa — obliczenia przeprowadzamy równie

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

20

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

w dwóch etapach:

y

1

y

3

4h

3

2f

2

f

1

2f

i

y

1

y

1

h
3

f

1

4f

i

f

1

Jest to metoda 4-go rz du. Przyjmuje si ,  e bł d bezwzgl dny warto ci udokładnionej (obliczonej w drugim etapie)

jest równy w przybli eniu 1/29 ró nicy pomi dzy warto ci  uzyskan  w pierwszym etapie a warto ci  z etapu drugiego

— mo liwe jest wi c wygodne kontrolowanie dokładno ci podczas oblicze .

Poni ej przedstawiam bł dy metody Milne’a czwartego rz du  zastosowanej do identycznych jak poprzednio dwóch

równa , do obliczenia punktów pocz tkowych wykorzystano metod  Runge-Kutty drugiego, trzeciego i czwartego rz du:

Istnieje tak e metoda Milne'a rz du 6-go:

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

21

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

y

1

y

5

3h

10

11f

i

14f

1

26f

2

14f

3

11f

4

y

1

y

3

2h

45

7f

1

32f

i

12f

1

32f

2

7f

3

Poni ej przedstawiam bł dy metody Milne’a szóstego rz du  zastosowanej do identycznych jak poprzednio dwóch

równa , do obliczenia punktów pocz tkowych wykorzystano metod  Runge-Kutty drugiego, trzeciego i czwartego rz du:

Dokładno  rozwi zania a dokładno  punktów pocz tkowych

Jak  wida   na  powy szych  wykresach,  w  przypadku  metody  Milne’a  (i  ogólnie  w  przypadku  wszystkich  metod

wielokrokowych)  obliczenie  warto ci  pocz tkowych  ze  zbyt  mał   dokładno ci   mo e  uczyni   całe  rozwi zanie

bezu ytecznym. 

Metody "półanalityczne"

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

22

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

Rozwa my zagadnienie Cauchy-ego dla równania ró niczkowego z warunkiem pocz tkowym:

y

f x,y

;

y x

0

y

0

Metoda kolejnych przybli e  polega na znalezieniu y(x) jako granicy ci gu funkcji y

n

(x) znajdowanych za pomoc

wzoru rekurencyjnego:

y

n

x

y

0

x

x

0

f x ,y

1

dx

Udowodniono,  e je li w pewnym obszarze R (okre lonym jako:  x – x

0

   a oraz  y – y

0

   b) spełniony jest warunek:

f x,y

1

f x,y

2

N y

1

y

2

gdzie  N  jest  jak   stał ,  to  niezale nie  od  wyboru  funkcji  pocz tkowej  y

0

(x)  kolejne  przybli enia  y

n

(x)  w  pewnym

przedziale (x,x+h) d

 do poszukiwanego rozwi zania zagadnienia.

Bł d n-tego przybli enia w tym przedziale mo na oszacowa  nast puj co:

n

y x

y

n

x

MN

n

x x

0

1

1 !

gdzie M jest okre lone jako:

M

max

x,y R

f x,y

h jest okre lone jako:

h

min ab

M

Metod  t  mo na równie  łatwo zastosowa  do układów równa  ró niczkowych.

Przykład: Znale  kilka kolejnych przybli e  rozwi zania równania:  = x

2

 + y

2

 dla warunku pocz tkowego y(0) = 0.

Zapiszmy równanie w postaci całkowej:

y x

x

0

x

2

y

2

dx

Jako przybli enie wyj ciowe przyjmiemy y

0

(x)   0. Kilka kolejnych przybli e  b dzie mie  nast puj c  posta :

y

0

0

y

1

x

3

3

y

2

x

3

3

x

7

63

y

3

x

3

3

x

7

63

2x

11

2079

x

15

59535

y

4

x

3

3

x

7

63

2x

11

2079

13x

15

218295

82x

19

37328445

662x

23

10438212015

4x

27

3341878155

x

31

109876902975

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

23

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

y

5

x

3

3

x

7

63

2x

11

2079

13x

15

218295

46x

19

12442815

7382x

23

39665205657

428x

27

50998121559

17853193x

31

52289648987481675

738067298x

35

60394544580541334625

10307579354x

39

26851414520508677374275

6813116x

43

667791107219128471425

89797289962x

47

407191917287292044684671125

1159084x

51

308193360994502430591375

721012x

55

15328564533673936679413125

8x

59

21664518085681213656375

x

63

760594829864786522589375

Okre limy bł d przybli enia numer 3. Przyjmijmy a = 1 i b = 0,5 (mog  to by  dowolne liczby jako  e funkcja x

2

 + y

2

jest okre lona i ci gła na całej płaszczy nie xy). Otrzymamy wówczas:

M

max f x,y

max x

2

y

2

1,25

N

max f x,y

max 2y

1

sk d wynika,  e h = 0,4. Dla przedziału (0;0,4) otrzymamy:

y x y

3

x

1,25 1

3

x

4

4!

5

96

x

4

i dla całego przedziału:

m a x

(0;0,4)

y x y

3

x

5 0,4

3

96

0,00133

Obliczone w powy szy sposób bł dy poszczególnych przybli e  s  nast puj ce: n=2 — 0.1,  n=3 — 0.01(3),  n=4

— 0.001(3),  n=5 — 0.00010(6). Jak wida  dla ka dego kolejnego przybli enia bł d maleje o rz d wielko ci.

Zastosowany wzór na bł d cz sto daje wynik zbyt ostro ny (tzn. obliczony bł d jest zbyt du y). W praktyce obliczenia

prowadzi si  do chwili, gdy kolejne y

n

 i y

n–1

 zgadzaj  si  z wymagan  dokładno ci .

Na rysunku przedstawiaj cym ró nice kolejnych przybli e  znacznie powi kszono skal  osi y. O  x obejmuje nieco

zbyt du y zakres — do oblicze  przyj to zakres x-ów od –1 do +1. Je li chcemy aby rozwi zanie było dokładne dla

wi kszego zakresu x musimy posłu y  si  przybli eniem wy szego rz du. W sytuacji dost pno ci programów całkuj cych

metoda ta mo e by  bardzo u yteczna.

Przykład: Zamiast przyj  jako funkcj  wyj ciow  funkcj  to samo ciowo równ  zeru (jak w poprzednim przykładzie)

mo na znale  funkcj  bardziej zbli on  do poszukiwanego rozwi zania. Na przykład dla równania  = x + 0,1y

2

 z

warunkiem pocz tkowym   y(0) = 1 funkcj  wyj ciow  mo e by :

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

24

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

y

0

x

y

0

0

1!

x

0

2!

x

2

Powy szy wzór uzyskali my rozwijaj c y(x) wokół punktu x

0

=0 (wówczas x jest odległo ci  od x

0

) w szereg Taylora

ograniczony do drugich pochodnych. Z warunków pocz tkowych i z równania otrzymamy wówczas:

y

0

1

0

0,1y

2

0

0,1

0

1

0,2y

0

y

0

1,02

zatem ostatecznie b dzie to funkcja:

y

0

x

1

0,1x

0,51x

2

Zagadnienia brzegowe

W przypadku zagadnie  pocz tkowych dysponowali my pełn  informacj  o szukanej funkcji w jednym wybranym

punkcie pocz tkowym (tzn. znali my warto  funkcji i warto ci odpowiedniej liczby jej pochodnych — zale nie od

stopnia rozwi zywanego równania). W przypadku zagadnie  brzegowych tak  informacj  nie dysponujemy, jest ona

„rozło ona” pomi dzy dwa punkty ograniczaj ce interesuj cy nas obszar, w którym chcemy znale  rozwi zanie.

Wprawdzie rozwi zywanie zagadnie  pocz tkowych jest w pewnym sensie łatwiejsze (mo liwe jest zastosowanie du o

prostszych metod) to jednak kolejne obliczane warto ci funkcji s  obarczone coraz to wi kszymi bł dami, w kra cowych

przypadkach mo e to powodowa  konieczno  porzucenia prostych metod rozwi zywania. W przypadku zagadnie

brzegowych  ograniczenia  narzucone  na  oba  kra ce  przedziału  powoduj   bardziej  równomierne  rozło enie  bł dów

znalezionych rozwi za .

Metoda strzałów

Metoda  ta  jest  logiczn   konsekwencj   ch ci  zastosowania  do  zagadnie   brzegowych  metod  opracowanych  dla

zagadnie  pocz tkowych (a wi c w zasadzie nie nadaj cych si  do takiego zastosowania). Czasami nazywana jest metod

prób i bł dów.

Załó my,  e  interesuje  nas  zagadnienie  brzegowe  dla  równania  drugiego  rz du.  W  przypadku  zagadnienia

pocz tkowego  oczekiwaliby my  warto ci  funkcji  i  jej  pochodnej  w  punkcie  pocz tkowym,  natomiast  w  przypadku

zagadnienia  brzegowego  b dziemy  dysponowa   warto ciami  funkcji  na  obu  kra cach  przedziału  (oznaczmy  je

odpowiednio przez a i b oraz przez f(a) i f(b)) natomiast nie b dzie dana  adna warto  pochodnej szukanej funkcji..

Je li odgadniemy (oboj tne czy bior c warto  z sufitu czy

te   szacuj c  na  podstawie  jakich   sensownych  przesłanek)

warto  pochodnej na jednym z kra ców (oznaczmy j  przez

c

1

),  to  b dziemy  mogli  zastosowa   któr   z  wcze niej

opisanych metod i za jej pomoc  obliczy  wszystkie warto ci

szukanej funkcji a  do drugiego brzegu wł cznie (warto  t

oznaczymy przez f

1

). Nie oczekujemy oczywi cie,  e obliczona

w ten sposób warto  funkcji w punkcie b b dzie zgadza  si

z wynikaj c  z warunków zadania warto ci  brzegow . Jednak

uzyskamy  w  ten  sposób  par   warto ci:  zało ona  warto

pochodnej  i  otrzymana  warto   funkcji  na  drugim  brzegu.

Teraz mo emy przyj  inn  warto  pochodnej na brzegu (c

2

)

i znów przeprowadzi  obliczenia (otrzymuj c f

2

).

Je li  b dziemy  mie   szcz cie  jedna  z  otrzymanych

warto ci b dzie za du a a druga za mała. Wtedy warto  c

3

 wyznaczymy cho by za pomoc  interpolacji liniowej:

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

25

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

c

3

c

1

c

2

c

1

f

1

f b

f

1

f

2

(przy zało eniu,  e f

1

 było za du e a f

2

 za małe).

Pierwszy przykład nie jest wła ciwie zagadnieniem brzegowym — rozwi zywane jest równanie pierwszego rz du,

jednak podano warunek (warto  funkcji szukanej) nie dla pocz tku lecz dla ko ca przedziału. Mo na byłoby oczywi cie

rozwi za   to  zagadnienie  któr kolwiek  z  poznanych  ju   metod  stosuj c  krok  o  ujemnej  warto ci  jednak  i  w  takim

przypadku mo na zastosowa  metod  strzałów.

Kolejne przykłady dotycz  równania drugiego rz du z podanymi warto ciami funkcji szukanej na obu kra cach

przedziału (jest to ju  wi c zagadnienie brzegowe). Jak wida  całkiem niezł  dokładno  rozwi zania mo na uzyska

nawet bez nadmiernej dbało ci o dokładno  poszukiwanej warto ci pocz tkowej pierwszej pochodnej.

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

26

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

Metody ró nicowe

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

27

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

Metody ró nicowe w odniesieniu do zagadnie  brzegowych dla równa  ró niczkowych zwyczajnych s  takie same

jak w przypadku równa  ró niczkowych cz stkowych, rozwi zania s  jednak prostsze, bo mamy do czynienia tylko z

jedn  zmienn  niezale n . Zastosowane mog  by  praktycznie wszystkie wzory podane dla równa  ró niczkowych

cz stkowych.

Metoda passage

Dla równania liniowego drugiego rz du mo liwe jest wyprowadzenie wzorów z uwzgl dnieniem dowolnych warunków

brzegowych (trzeciego rodzaju — zawieraj cych i warto  funkcji i warto  pochodnej na brzegu przedziału). Załó my,

e rozwi zywany problem ma posta :

y

p(x)y

q(x)y

f(x)

0

y(a)

1

(a)

A

0

y(b)

1

(b)

B

gdzie p(x), q(x) i f(x) s  znanymi funkcjami, a i b s  warto ciami granicznymi zmiennej x za  

0

1

0

1

A i B s

znanymi stałymi. Zakładamy dalej,  e odcinek ab został podzielony na N kroków o długo ci  x, przy czym w zeł nr 0

odpowiada lewej granicy, a w zeł nr N — granicy prawej.

Wówczas oznaczaj c:

m

i

2q

i

x

2

4

p

i

x

;

k

i

p

i

x

p

i

x

mo emy przeprowadzi  obliczenia jak nast puje. Najpierw obliczamy stałe c

1

 i d

1

:

c

1

1

0

x

m

1

1

0

x

k

1 1

d

1

2f

1

x

2

p

1

x

k

1

A x

1

0

x

nast pnie wyznaczamy pozostałe stałe a  do c

N

 i d

N

:

c

i

1

m

i

k

i

c

1

d

i

2f

i

x

2

p

i

x

k

i

c

1

d

1

Na podstawie c

N

 i d

N

 obliczamy y

N

:

y

N

2B x

1

d

N

c

1

d

1

2

0

x

1

c

1

1

c

N

po czym kolejne warto ci y

i

 (to,  e wzory przewiduj  mo liwo  obliczenia warto ci y

o

 wynika z faktu,  e warunki

brzegowe mog  nie zawiera  warto ci funkcji na brzegu — gdy nie s  to warunki pierwszego rodzaju):

y

i

c

i

d

i

y

1

y

0

1

y

1

A x

1

0

x

Wyprowadzenie: Rozwi zywane równanie ma posta :

y

p x y

q x y

f x

a warunki brzegowe:

0

y a

1

y a

A

0

y b

1

y b

B

W postaci ró nicowej:

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

28

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

y

1

2y

i

y

1

h

2

p

i

y

1

y

1

2h

q

i

y

i

f

i

0

y

0

1

y

1

y

0

h

A

0

y

N

1

y

1

y

1

2h

B

Warto zauwa y ,  e do zapisania prawego warunku brzegowego (dla x=b) wykorzystano ró nic  centraln  — zapis

ró nicowy nie jest wi c symetryczny wzgl dem x i nale y oczekiwa ,  e wyniki mog  by  ró ne w zale no ci od tego od

którego ko ca przedziału zaczniemy rozwi zywa .

Po przekształceniu otrzymamy:

y

1

m

i

y

i

k

i

y

1

i

gdzie:

m

i

2q

i

h

2

4

hp

i

;

k

i

hp

i

hp

i

;

i

2h

2

f

i

hp

i

Jest to oczywi cie układ równa  opisany macierz  trójdiagonaln . Załó my,  e dla i = 1,2,...,n–1 mo liwe jest zapisanie

rozwi za  w postaci:

y

i

c

i

d

i

y

1

Je li jest to prawd , to mo emy podstawi  taki wzór na y

i–1

 do ró nicowej postaci rozwi zywanego równania:

y

1

c

1

d

1

y

i

y

1

m

i

y

i

k

i

c

1

d

1

y

i

i

co po przekształceniach daje:

y

i

1

m

i

k

i

c

1

i

k

i

c

1

d

1

y

1

czyli:

c

i

1

m

i

k

i

c

1

;

d

i

i

k

i

c

1

d

1

Dla i = 1 otrzymamy:

y

2

m

1

y

1

k

1

y

0

1

Z warunku brzegowego dla x = a mamy:

0

y

0

1

y

1

y

0

h

A

y

0

Ah

1

y

1

0

h

1

po podstawieniu:

y

2

m

1

y

1

k

1

Ah

1

y

1

0

h

1

1

i po przekształceniu:

m

1

1

k

1

o

h

1

y

1

y

2

1

k

1

Ah

0

h

1

y

1

0

h

1

m

1

0

h

1

1

k

1

1

k

1

Ah

0

h

1

y

2

co daje nam warto ci c

1

 i d

1

. Na podstawie wzorów na c

i

 i d

i

 mo emy obliczy  wszystkie kolejne warto ci współczynników

c i d. Nast pnie rozwa ymy układ równa  (który umo liwi nam wyeliminowanie z oblicze  warto ci y

N+1

):

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

29

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

y

N

c

N

d

N

y

1

y

1

c

1

d

1

y

N

0

y

N

1

y

1

y

1

2h

B

po przekształceniach otrzymamy:

y

1

d

N

y

N

c

N

0

y

N

1

2h

d

N

y

N

c

N

c

1

d

1

c

1

y

N

B

i dalej:

2h

0

1

c

1

1

c

N

y

N

2hB

1

c

1

d

1

d

N

Ostatecznie warto  y

N

 wyniesie:

y

N

2hB

1

c

1

d

1

d

N

2h

0

1

c

1

1

c

N

Po obliczeniu y

N

 mo emy „cofaj c” si  obliczy  wszystkie pozostałe warto ci y, a  do y

1

.

Lewy warunek brzegowy zapisany w postaci ró nicowej mo emy przekształci  do postaci umo liwiaj cej obliczenie

y

0

:

y

0

Ah

1

y

1

1

0

h

Metoda ró nicowa dla równa  nieliniowych drugiego rz du

Rozwa my teraz zagadnienie brzegowe dla nieliniowego równania drugiego rz du:

y

f x,y,y

z warunkami brzegowymi:

0

y a

1

y a

A

0

y b

1

y b

B

Równanie ró niczkowe zast pimy nast puj cym równaniem ró nicowym:

y

1

2y

i

y

1

h

2

f x

i

,y

i

,

y

1

y

1

2h

0

y

0

1

y

1

y

0

h

A

;

0

y

N

1

y

N

y

1

h

B

Jest to równanie nieliniowe, rozwi zujemy je metod  iteracyjn . Oznaczmy:

0

y

0

y

0

1

y

1

y

0

h

N

y

0

y

N

1

y

N

y

1

h

iteracje b d  mie  posta  (indeks górny (r) oznacza numer iteracji):

y

(1)

1

2y

(1)

i

y

(1)

1

h

2

f x

i

,y

()

i

,

y

()

1

y

()

1

2h

;

1, ,1

0

y

(1)

i

A

(0)

;

N

y

(1)

i

B

(i N )

background image

Metody Numeryczne w Fizyce 1

Rozwi zywanie ODE

30

© Andrzej Brozi, Instytut Fizyki Politechniki Łódzkiej

W ramach ka dej z iteracji musimy rozwi za  układ równa  algebraicznych. Rozwi zanie to mo na przedstawi  w

postaci:

y

(1)

i

h A

0

b a

A

1

1

B

i

0

B A

0

h

2

1

1

g

ji

f

(r)

j

gdzie g

ji

 i   obliczane s  jako:

1
h

0 0

b a

0 1

1 0

g

ji

j

0

1

h

i

0

0

N

1

h

j i

i

0

1

h

j

0

0

N

1

h

j>i

Warto zauwa y ,  e we wzorze iteracyjnym tylko warto  f

j

 zale y od numeru iteracji.