Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu
description
Transcript of Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu
![Page 1: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/1.jpg)
Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu
Dany jest układ różniczkowych
txxxf
txxxf
txxxf
t
tx
tx
tx
t
tdt
d
nn
n
n
n ,,,,
,,,,
,,,,
,
)(
)(
)(
,
21
212
211
2
1
00
xfx
xx
xfx
Należy znaleźć jego rozwiązanie x(t) dla warunków początkowych zadanych przez x(t0).
![Page 2: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/2.jpg)
Przykłady problemów które można zapisać bezpośrednio jako układu równań różniczkowych rzędu pierwszego:
1. Kinetyka chemiczna (x jest stężeniem lub w ogólności postępem reakcji a t czasem).
2. Obliczanie trajektorii „wewnętrznej” współrzędnej reakcji (Intrinsic Reaction Coordinate; IRC); wtedy x jest wektorem współrzędnych układu reagującego a t współrzędną reakcji ().
rr
r Ed
d
Obliczenia startuje się z punktu siodłowego w dwóch kierunkach określonych przez wektor własny hesjanu odpowiadający ujemnej wartości własnej.
![Page 3: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/3.jpg)
x1
x2
NH3...HCl
NH4+...Cl-
NH3...H...Cl
H3N H Clx1 x2
E
E
![Page 4: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/4.jpg)
Dygresja: jeżeli prawa strona jest układem funkcji liniowych względem x (tak jak w kinetyce reakcji pierwszego rzędu) to rozwiązanie jest analityczne i ma postać kombinacji liniowej funkcji eksponencjalnych:
12
1
1
1
0
)exp(
)exp(
)exp(
)exp()exp(
)exp(
VVVVA
VVA
xAx
Axx
n
t
tdt
d
![Page 5: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/5.jpg)
Często nie jest aż tak prosto (przykład: reakcje Biełousowa-Żabotyńskiego).
![Page 6: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/6.jpg)
Numeryczne rozwiązywanie zagadnienia początkowego: ogólnie.
Dzielimy przedział [t0,] w którym szukamy rozwiązania na N odcinków
t0<t1<t2<...<tN=
Definiujemy hi=ti+1-ti oraz przybliżone rozwiązanie i różnicę pomiędzy przybliżonym a dokładnym rozwiązaniem w punkcie ti
X(ti)=Xix(ti)=yi ei=||xi-X||i
Mamy:
1
,1
i
i
t
t
ii dttttt xfxx
![Page 7: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/7.jpg)
Ogólny podział metod numerycznych rozwiązywania równań różniczkowych zwyczajnych pierwszego rzędu:
1. Metody jednokrokowe: do obliczenia x w kolejnym kroku t wykorzystują tylko wartości x z poprzedniego kroku (np. metoda Eulera-Cauchy’ego,metoda Rungego-Kutty).
2. Metody wielokrokowe: wykorzystują wartości x z kilku kroków wstecz (np. metoda Adamsa-Bashforda, metoda Adamsa-Stromera).
3. Metody ekstrapolacyjne: wykorzystują kwadraturę Romberga.
4. Metody predyktora i korektora: w danym kroku t najpierw oblicza się przewidywane wartości x (krok predykcyjny) a potem się je udokładnia (krok korekcyjny) (np. algorytm Geara). Tych metod można używać w połączeniu zarówno z metodami jedno- jak i wielokrokowymi.
![Page 8: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/8.jpg)
Metoda Eulera-Cauchy’ego
)(
)())(,('2
))(,(
)),(,('2
))(,())(,(
max1
22
1
1
1
21
hOe
hOh
tth
tth
tthdttt
i
ii
i
iiiii
t
t
iii
iii
i
i
xf
XfXX
xfxfxf
t1 t2 t3 t3 t4 t5 t
f
t1 t2 t3 t3 t4 t5 t
x rozwiązanie dokładne
rozwiązanie przybliżone
Błąd popełniany w i-tym kroku całkowania (lokalny)
Całkowity błąd którym obarczone jest rozwiązanie w i-tym punkcie (globalny)
![Page 9: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/9.jpg)
Udoskonalona metoda Eulera-Cauchy’ego (drugiego rzędu)
)(
,2
,2
,2
2max
2/11
hOe
thh
th
hth
i
iii
ii
iii
ii
iiii
XfXfX
XfXX
![Page 10: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/10.jpg)
Metoda predyktora-korektora Heuna
)(
,max
20.0
korektor,...2,1,,,2
predyktor,
2max1
)(11
)1(1
)0(1
1
hOe
ttL
LhK
tth
th
i
ttti
ii
iiiii
ii
iiiii
ii
Xf
XfXfXX
XfXX
![Page 11: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/11.jpg)
Metody Rungego-Kutty
Sformułowanie ogólne:
mjhtbhhatht
htAh
j
ssjsij
m
jiiijjiii
,,2,,,,,
,,
1
11
11
YkXfXk
XkXX
m 1 2 3 4 5 6 7 8 9
qg 1 2 3 4 4 5 6 6 7
Rząd zbieżności metod Rungego-Kutty w zależności od m
m=1: metoda Eulera-Cauchy’ego
m=2: ulepszona metoda Eulera-Cauchy’ego lub metoda Heuna
m=4: klasyczna metoda Rungego-Kutty.
![Page 12: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/12.jpg)
Klasyczna metoda Rungego-Kutty
34
23
12
1
43211
,2
2,2
2,2
,
6
1
3
1
3
1
6
1
kXfk
kXfk
kXfk
Xfk
kkkkXX
iii
i
iii
i
iii
i
ii
iii
hh
t
hh
t
hh
t
t
h
![Page 13: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/13.jpg)
x
y
Porównanie metody Eulera-Cauchy’ego, zmodyfikowanej metody Eulera-Cauchy’ego oraz metody Rungego-Kutty dla zagadnienia
z h=0.51)0(, yydx
dy
![Page 14: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/14.jpg)
Metody implicite Rungego-Kutty
W najprostszej wersji (m=2 wychodzimy z ulepszonej metody Eulera-Cauchy’ego i doprowadzamy do samouzgodnienia wartości f na końcu przedziału:
)(
2,2
,,
21
11
11
hOe
ht
hth
i
iii
iiiiii
kXfk
XkXX
Ogólnie, dla rzędu m prowadzimy kwadraturę Gaussa-Legendre’a (z węzłami w miejscach zerowych wielomianu Legendre’a rzędu m). Globalny błąd rozwiązania jest wtedy rzędu O(h2m) (w porównaniu z O(hm) dla formuł explicite Rungego-Kutty.
![Page 15: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/15.jpg)
41
212
211
211
4
1
3
1
2
1
2
1,
3
11
2
1
3
1
2
1
2
1
4
1,
3
11
2
1
2
hOe
ht
ht
h
i
iii
iii
iii
kkXfk
kkXfk
kkXX
Dla m=2.
![Page 16: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/16.jpg)
Metody wielokrokowe
W metodzie s-krokowej do całkowania wykorzystujemy wartości X i f obliczone w s poprzednich krokach. Przez te punkty prowadzimy wielomian interpolacyjny s(t)=s(t,X(t)), który następnie całkujemy.
dtti
i
t
t
sii
1
1 ΦXX
Przykład: metoda Adamsa-Bashforda z wykorzystaniem trzech kroków wstecz.
41
51
3211 4,,0,937595524
hOehO
nih
ii
iiiiii
ffffX
![Page 17: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/17.jpg)
Metoda Geara dla układów sztywnych
n
ikkikik XtfhbXaX
111011 ,
n 1 2 3 4 5 6
b0 1 2/3 6/11 12/13 60/137 60/147
a1 1 4/3 18/11 48/25 300/137 360/147
a2 -1/3 -9/11 -36/25 -300/137 -450/147
a3 2/11 16/25 300/137 400/147
a4 -3/25 -75/137 -225/147
a5 12/137 72/147
a6 -10/147
![Page 18: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/18.jpg)
Zagadnienie brzegowe dla równań drugiego rzędu.
Całkowanie równań dynamiki molekularnej
2
00
00
2
2
)(2
1)()(
,,2,1),(
,,2,1,)(1)(
)(
ttttttt
t
t
nitdt
d
nitVmm
tt
dt
d
dt
d
ii
ii
ii
iii
avrr
vv
rr
vr
rrF
avr
r
![Page 19: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/19.jpg)
Algorytm Verleta:
)()(
)()(2
1)(
)()()(2)(
)()(2)()(
)(2
1)()()(
)(2
1)()()(
2
2
2
2
2
tOte
ttttt
ttttttt
ttttttt
ttttttt
ttttttt
rrv
arrr
arrr
avrr
avrr
![Page 20: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/20.jpg)
Prędkościowy algorytm Verleta (velocity Verlet)
Krok 1:
tttt
t
ttttttt
)(2
1)(
2
)(2
1)()( 2
avv
avrr
Krok 2:
tttt
ttt
ttUm
tti
ii
)(2
1
2)(
)(1
)(
avv
ra r
![Page 21: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/21.jpg)
Algorytm “zabiego skoku” (leapfrog):
tt
tttt
ttt
tt
t
2)()(
)(22
vrr
avv
Wszystkie trzy algorytmy są algorytmami symplektycznymi, tj, całkowita energia układu oscyluje wokół pewnej stałej wartości bliskiej początkowej energii całkowitej (inaczej: zachowują “cień hamiltonianu” (shadow Hamiltonian). Takiej właściwości nie mają wszystkie algorytmy dynamiki molekularnej (np. algorytm Geara).
Algorytmy symplektyczne zaprojektowano również do symulacji MD w warunkach izokinetycznych (stała temperatura) oraz izotermiczno-izobarycznych (stała temperatura i ciśnienie).
![Page 22: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/22.jpg)
Energia kinetyczna
Energia potencjalna
Energia całkowita
Energia całkowita
0.0 1.0 2.0 3.0 4.0 5.0
Ene
rgia
[kc
al/m
ol]
Czas [ns]
Zależność składowych energii i energii całkowitej od czasu dla symulacji MD Ac-Ala10-NHMe (Khalili et al., J. Phys. Chem. B, 2005, 109, 13785-13797)
![Page 23: Zagadnienie początkowe dla równań różniczkowych zwyczajnych pierwszego rzędu](https://reader036.fdocument.pub/reader036/viewer/2022070413/56814cac550346895db9b40c/html5/thumbnails/23.jpg)
Literatura dotycząca algorytmów całkowania równań dynamiki molekularnej:
1. Frenkel, D.; Smit, B. Understanding molecular simulations, Academic Press, 1996, rozdział 4.
2. Calvo, M. P.; Sanz-Serna, J. M. Numerical Hamiltonian Problems; Chapman & Hall: London, U. K., 1994.
3. Verlet, L. Phys. Rev. 1967, 159, 98.
4. Swope, W. C.; Andersen, H. C.; Berens, P. H.; Wilson, K. R. J. Chem. Phys. 1982, 76, 637.
5. Tuckerman, M.; Berne, B. J.; Martyna, G. J. J. Chem. Phys. 1992, 97, 1990.
6. Ciccotti, G.; Kalibaeva, G. Philos. Trans. R. Soc. London, Ser. A 2004, 362, 1583.