Академический Документы
Профессиональный Документы
Культура Документы
Dynamika molekularna
r r r r
U (r1,K, rN ) = u (rij ) , gdzie rij = ri r j
i j , j >i
gdzie u(r) oznacza potencja pary czstek w odlegoci r, np. potencja Lennarda-Jonesa
12 6
u (r ) = 4 , gdzie i s parametrami.
r r
2
12 6
1 u=4[(/r) - (/r) ]
u/
-1
minimum
1/6
w 2
-2
0 1 2 3 4
r/
Potencja Lennarda-Jonesa.
W przypadku metali stosujemy potencjay wieloczstkowe np. potencja Suttona-Chena dla Pt,
Pd
n m
1/ 2
1 a
r r a
U (r1,K, rN ) = c , gdzie , a, n i m s parametrami
i 2 j i rij j i rij
dobieranymi tak, aby zapewni dane waciwoci materiau (stae spryste, energi kohezji,
itd.)
pi2
r r
H= + U (r1,K, rN )
i
2m
ukadu N czstek w objtoci V.
d 2 rk
m = Fk , k = 1,2,K, N , = x, y, z
dt 2
gdzie
rk oznacza -t skadow k-tej czstki.
( )
du rkj rk r j
Fk = Fkj = drkj rkj
jk j k
Uwaga. Poniewa obliczanie si to wskie gardo DM, warto wykorzysta symetri Fkj=-Fjk
oraz inne optymalizacje w celu zmniejszenia czasu oblicze tych wielkoci
Przykad kodu do obliczenia energii potencjalnej i si w przypadku potencjau u(r) =1/r, dla
ktrego
rk rj
Fk = Fkj =
jk jk rkj3
struct wsp { double x, y,z;};
( )
t
1
= limt A r N ( ), p N ( ) d
r r
A NVE t
0
W symulacji dynamiki molekularnej nie bdziemy w stanie obliczy tej granicy. Jednak
znajomo trajektorii ukadu w czasie znacznie wikszym ni charakterystyczny czas ukadu
(np. czas relaksacji) pozwoli nam oszacowa rednie po zespole jako rednie po czasie, jaki
upyn w symulacji.
Poza prostymi przypadkami (np. mae drgania), rozwizanie rwna ruchu wymaga
zastosowania metod numerycznych.
Poniewa interesuje nas trajektoria ukadu o N~103 -106 czstek w dostatecznie dugim czasie,
aby mc oblicza rednie po czasie, to krok czasowy h nie moe by dowolnie may.
Bdziemy stosowa stabilne i w miar szybkie metody rozwizywania ukadw rwna
rniczkowych. Wane jest to, aby metoda zapewniaa zachowanie cakowitej energii nie tylko
w krtkich okresach czasu, ale przede wszystkim, w dugich przedziaach czasu.
Algorytm Verleta
Z rozwinicia w szereg Taylora r(t+h) oraz r(t-h) wok punktu t otrzymujemy zwizek midzy
pooeniami w kolejnych krokach czasowych
h2
r (t + h) = 2r (t ) r (t h) + F (t ) + O(h 4 )
m
W tym wzorze nie wystpuje prdko v(t), jednak jej warto jest niezbdna m.in. do
wyznaczenia energii kinetycznej (temperatury) ukadu.
r (t + h) r (t h)
v(t ) = + O(h2 )
2h
Wprowadzajc oznaczenia
Algorytm Verleta nie jest algorytmem samostartujcym. eby go uruchomi musimy zna
pooenia kadej czstki w dwch kolejnych krokach czasowych. Natomiast warunki
pocztkowe s zwykle okrelone przez podanie pocztkowych pooe i prdkoci {r(0), v(0)}.
Algorytm
Warto zwrci uwag na to, e do obliczenia prdkoci, energii kinetycznej w k-tym kroku
czasowym, potrzebujemy pooe z k+1 kroku.
Wersja prdkociowa algorytmu Verleta.
h2 n
n +1
ri = ri + hv +
n n
i
Fi
2m
vin+1 = vin +
h
(Fin +1 + Fin ) i = 1,2,K, N , = x, y, z
2m
Metoda Rungego-Kutty.
dxi
= g i (t , x1 ,K, x N ) i=1,,N
dt
Oznaczenia xin xi (t n ) .
r
dx r r
x = ( x1 ,K, x N ) , g = ( g1 ,K, g N )
r r
= g (t , x ) ,
dt
r n +1 r n 1 r n
( )
rn rn rn
x = x + k1 + 2k 2 + 2k 3 + k 4 + O(h 5 )
6
gdzie
rn r r
k1 = hg (t n , x n ) ,
rn r rn rn
k2 = hg (t n + h / 2, x + k1 / 2) ,
rn r rn rn
k3 = hg (t n + h / 2, x + k 2 / 2) ,
rn r rn rn
k4 = hg (t n + h, x + k 3 ).
Zastosowanie RK4 do rwna ruchu. Przeksztacamy rwnania drugiego rzdu w rwnania
pierwszego rzdu
Rozwijajc w szereg Taylora wielkoci xk(t+h) wok t dla k=0,,4 i pozostawiajc wyrazy do
rzdu h4, otrzymamy ukad 5 rwna wstpnych
x0(t+h)=x0+x1+x2+x3+x4
x1(t+h)=x1+2x2+3x3+4x4
x2(t+h)=x2+3x3+6x4
x3(t+h)=x3+4x4
x4(t+h)=x4
a(t+h)=F(t+h)/m
a tym samym now warto wielkoci x2
h2
x (t + h) = a (t + h)
c
2
2
ktr uznajemy za poprawn. Tym samym skorygowalimy x2 z rwna wstpnych o warto
x2 = x2c (t + h) x2 (t + h)
19 3 1 1
c0 = , c1 = , c2 = 1, c3 = , c 4 =
120 4 2 12
Metoda PC5 nie jest samostartujca. Zalet jej jest to, e w jednym kroku czasowym siy s
tylko raz obliczane.
Porwnanie 3 metod.
1E-5
1E-6
1E-7
1E-8 PC5
1E-9
1E-10
1E-11
1E-12 RK4
1E-13
1E-5 1E-4 1E-3 1E-2 1E-1 1E+0
h
Porwnanie dokadnoci cakowania trzema metodami po upywie czasu t=2. Wynik otrzymany
za pomoc PC5 w czasie t=2 z h=1e-4 jest traktowany jako punkt odniesienia.
Badanie stabilnoci tych metod przeprowadzilimy cakujc rwnania z h=0.01 a upyn czas
t=105. Energia cakowita powinna by zachowana. Jednak, wyniki otrzymane za pomoc RK4 i
PC5 pokazuj, e energia wolno, aczkolwiek systematycznie, maleje z czasem.
-0.6713
h=0.01
-0.6714
AV
E
-0.6715
pc5
rk4
-0.6716
0 40000 80000
t
Energia cakowita planety jako funkcja czasu otrzymana trzema metodami z krokiem
czasowym h=0.01.
W przypadku algorytmu Verlerta energia jest obliczona z mniejsz dokadnoci (czerwony pas
na wykresie), ale jej zachowanie jest stabilne. Nie wida dryfu energii.
Przewaga algorytmu Verleta wynika z faktu, e algorytm ten jest odwracalny w czasie i
zachowuje objto w przestrzeni fazowej. Dwa pozostae algorytmy nie maj tych
waciwoci. Mimo, i metody Rungego-Kutty i predictor- corrector s dokadniejsze (w
niezbyt dugich czasach) w porwnaniu z algorytmem Verleta, to nie stosujemy ich w
problemach z zachowan energia cakowit, czyli w dynamice molekularnej w zespole
mikrokanonicznym. Metody te mog by uywane w zespole kanonicznym (Hoover stosowa
metod Rungego-Kutty) do rozwizania rwna Nosego-Hoovera, gdzie bezporednie
zastosowanie algorytmu Verleta jest niemoliwe.
N 3
L= .
eby bada wasnoci objtociowe gazw, cieczy i cia staych powinno si wyeliminowa
nadmierny wpyw powierzchni w ukadach o maej liczbie czstek. Np. w rzeczywistym
krysztale uamek czstek powierzchniowych jest rzedu N-1/3 10-8, podczas gdy w typowym dla
symulacji ukadzie (N103) wielko ta jest bliska . W tym celu wprowadza si periodyczne
warunki brzegowe polegajce na okresowym powieleniu puda z czstkami wzdu kadej osi
ukadu wsprzdnych.
Przy takich warunkach brzegowych energia potencjalna ukadu wyraa si nastpujco
r r 1 r r r
U ( r1 ,K, rN ) = u ( rij + n L ) , gdzie n = (n x , n y , n z ) , n=0,1,2,,
2 i j i nr
r
a sumowanie po n oznacza sumowanie po obrazach j-tej czstki.
Konwencja najbliszego obrazu.
U c = 2N r 2 (r )u (r )dr .
rc
Poniewa dla duych odlegoci r gsto jest staa (r)=, to ta poprawka bdzie skoczona
dla u(r) zanikajcego szybciej ni r-3. Std te wynika, e nie mona wprowadza obcicia
potencjau dla oddziaywa kulombowskich, czy dipolowych. W przypadku oddziaywania
Lennarda-Jonesa, w wielu symulacjach przyjmowano obcicie rc=2.5, dla ktrego poprawka
do energii potencjalnej stanowi okoo 10%.
W praktyce nie szuka si najbliszego obrazu danej czstki, a znajduje si odlego do tego
obrazu poprzez proste operacje na skadowych wektora rij. Np. dla czstek, ktrych skadowe
pooe przyjmuj wartoci z przedziau [0,L), skadowe rnicy pooe midzy i-t czstk a
najbliszym obrazem j-tej czstki otrzymamy za pomoc instrukcji warunkowej
rij= ri - rj
if (rij <-Lp) rij +=L
else if (rij >Lp) rij -=L
gdzie Lp=L/2.
u ( r ) u c (r ) r rc
u p (r ) =
0 r > rc
Periodyczne warunki brzegowe nie s pozbawione wad, np. ograniczaj fluktuacje dugofalowe
do dugoci L.
Inne warunki brzegowe. Prniowe (swobodne) warunki brzegowe stosuje si np. w przypadku
klastrw atomw, w ktrych niewielka liczba oddziaujcych atomw umieszczona jest w
prni. W przypadku symulacji ukadw z powierzchni stosuje si mieszane warunki
brzegowe, np. periodyczne warunki brzegowe w paszczynie x,y oraz prniowe warunki
wzdu osi z.
Warunki pocztkowe
Wybieramy liczb czstek w postaci N=4k3, gdzie k oznacza liczb komrek przypadajcych na
wymiar liniowy. Wprowadzamy sta sieci a=L/k. Zadajemy 4 pooenia w wyjciowej
komrce
Wsprzdne czstek otrzymamy przesuwajc wektory bi o wektory sieciowe a(kx, ky, kz), gdzie
k=0,1,,k-1.
Rozkad Maxwella-Boltzmanna
1
m 2 mvi2
f (vi ) = exp
2k BT 2k BT
k BT
vi = 2 ln i1 cos(2 i 2 )
m
Taki wybr prdkoci nie zapewni zerowania cakowitego pdu ukadu. Mona to atwo
osign przesuwajc prdkoci o redni prdko
vi
1
= via va ,
via va =
N i
Osiganie rwnowagi.
Ekin
0.0
Energia na czstk
h=0.01
-1.0
-2.0 Etot
U
-3.0
0 100 200 300 400 500
czas
Zaleno energii kinetycznej, potencjalnej i cakowitej od czasu w dwuwymiarowym ukadzie
z oddziaywaniem Lennarda-Jonesa.