Výpočetní postupy v molekulární dynamice
M. Pospíšil, M. Veteška
Univerzita Karlova v Praze, Ke Karlovu 3, 12116
Praha 2
pospisil@karlov.mff.cuni.cz
Keywords: molecular dynamics, statistical ensemble, thermostat,
pressure control
Abstract
The general procedures used in
molecular dynamics are described. Conditions of calculations under constant
temperature and constant pressure in different statistical ensembles for
various thermodynamics quantities are presented. Methods of molecular dynamics
for the global minimum search are mentioned.
Molekulární dynamika
Molekulární
dynamika [1-3] je založena na změnách poloh atomů v závislosti na silách,
které na ně působí – jedná se o výpočet klasické pohybové rovnice. Síly se vypočítají
z potenciální energie určené na základě parametrů silového pole. Molekulární
dynamika je vhodná ke studiu časového vývoje systémů za nenulové teploty.
Hlavní aplikace molekulární dynamiky jsou:
- Hledání konformací
– během simulace se mění uspořádání systému, a tak lze zkoumat různé části
stavového prostoru, které jsou pro model dostupné.
- Generování
statistických souborů – použitím technik na kontrolování teploty a tlaku lze
generovat statistické soubory, z nichž lze vypočítat různé energetické,
termodynamické, strukturní a dynamické vlastnosti.
- Studium pohybu
molekul – např. uzpůsobení se molekul do specifických tvarů, chemické reakce
nebo odvození difúzních koeficientů.
Integrační algoritmus
Newtonova pohybová
rovnice pro atom i se souřadnicemi ri je
(1)
kde V je potenciální
energie. Tato rovnice je deterministická, tj. pro zadané úvodní souřadnice a
rychlosti se dají pozice atomů určit v kterémkoli čase. Tyto určené souřadnice
a rychlosti pro celou počítanou dynamiku se nazývají trajektorie. Rovnice se
řeší metodou konečných diferencí, kdy ze známých souřadnic a rychlostí v čase t jsou spočteny
souřadnice a rychlosti v čase t + Dt. Pro molekulární
dynamiku je vhodný algoritmus, který je rychlý (potřebuje na jeden krok ideálně
jen jedno vyhodnocení energie, protože to je pro velké modely časově velmi
náročné), potřebuje málo paměti, umožňuje použít dlouhý časový krok Dt a dobře zachovává energii (zejména aby bylo možno
generovat korektní statistické soubory).
Taková kriteria
nejlépe splňuje Verlet-leapfrog algoritmus. Odvodí se pomocí rozepsání pohybové
rovnice (1) s vhodným vyjádřením argumentů:
(2)
(3)
Tyto rovnice se
přepíší jako numerické symetrické derivace
(4)
(5)
Vlastní algoritmus
začíná nastavením v čase t poloh r(t) a v čase t − Dt/2 rychlostí v(t − Dt/2) Poté se provádí kroky:
1. Výpočet síly v
čase t
(6)
2. Přepočtení
rychlostí v čase t + Dt/2
(7)
3. Přepočtení poloh
v čase t + Dt
(8)
4. Posunutí času t = t + Dt a pokračování prvním krokem.
Výhodou tohoto algoritmu je právě jeden výpočet síly na jeden časový krok,
malá spotřeba paměti a relativně dlouhé časové kroky. Nevýhoda je, že polohy a
rychlosti jsou vypočteny v polovičním kroku od sebe. Tento problém nemá
Verletův rychlostní algoritmus, ten ovšem potřebuje navíc paměť pro uložení
vypočtených sil z předešlého kroku. V případě potřeby přesnější trajektorie se
větší chyby Verletovy metody dají kompenzovat průměrováním přes sadu
trajektorií. Jiné, přesnější algoritmy, např.Rungeho–Kuttaova metoda se obvykle
nepoužívají, neboť vyžadují v každém kroku několikanásobný výpočet sil. Podrobnosti o uvedených algoritmech lze nalézt např.
v [4 – 6].
Časový krok se volí
co nejdelší, ovšem příliš dlouhé kroky zapříčiňují nestabilitu a nepřesnost
výpočtu. V případě molekulárních simulací je třeba zvážit také omezení modelu,
které je dáno zejména pohybem atomů s nejvyššími frekvencemi (vodík), a zvolit
takový krok, aby byl splněn předpoklad, že během jednoho kroku jsou rychlosti a
zrychlení konstantní.
Statistické soubory
Výpočet pohybových
rovnic prochází plochu konstantní energie systému. Nicméně v přirozeném případě
je systém většinou vystaven vnějšímu tlaku nebo vyměňuje teplo s okolím a
celková energie se nezachovává. Existují metody, jak rozšířit molekulární
dynamiku, aby se dala teplota a tlak kontrolovat. V závislosti na tom, které
stavové veličiny se zachovávají konstantní, se dají generovat různé statistické
soubory.
NVE soubor
Jedná se o tzv.
mikrokanonický soubor, je adiabatický (tzn. k výměně tepla nedochází),
konstantní je celková energie a objem. Získá se standardním řešením Newtonových
rovnic. K fluktuacím energie dochází jen díky zaokrouhlovacím chybám, tedy
tento soubor je vhodný, když je třeba prozkoumat povrch konstantní energie nebo
když je potřeba se vyhnout fluktuacím vznikajícím kontrolou teploty a tlaku.
Teplota fluktuuje okolo průměrné hodnoty v závislosti na tom, jak se přeměňuje
energie mezi kinetickou a potenciální energií.
NVT soubor
Jde o tzv.
kanonický soubor, je izotermický, tzn. dochází k výměně tepla s termostatem,
konstantní je termodynamická teplota a objem. Používá se buď pro systémy, u
nichž tlak není potřebný faktor, aby se jeho ignorováním zmenšily fluktuace
trajektorie, nebo pro systémy bez periodických okrajových podmínek, protože u
těchto systémů tlak nelze definovat.
NPT soubor
Konstantní je
teplota i tlak. Použitelný je jen pro periodické systémy, neboť kontrola tlaku
se provádí změnami velikosti mřížové buňky. Je vhodný např. k nastavení
rovnováhy s požadovanou teplotou a tlakem před následnou simulací v NVE
souboru.
Kontrola teploty
Termodynamická
teplota je makroskopická stavová veličina, která má smysl pouze pro systém v
rovnováze. Teplota má k mikroskopickému popisu systému vztah přes kinetickou
energii, tj. přes rychlosti atomů. Maxwellovo–Boltzmannovo rozdělení popisuje v
rovnovážném systému o teplotě T pravděpodobnost f(v), že atom o hmotnosti m má velikost
rychlosti v:
(9)
kde k je Boltzmannova
konstanta. Velikosti kartézských složek rychlosti vx mají Gaussovo
rozdělení pravděpodobnosti g(vx)
(10)
Termodynamická
teplota se měří z průměrné kinetické energie systému, s kterou souvisí přes
ekvipartiční teorém, který říká, že každému stupni volnosti přináleží průměrná
energie kT/2. Tzv. kinetická teplota Tkin a okamžitá kinetická
energie K tak
mají vztah
(11)
kde Nf je počet stupňů
volnosti a N je
počet atomů s rychlostmi vi. Termodynamická teplota T je průměrem
kinetické teploty Tkin, tedy platí
(12)
Počet stupňů
volnosti Nf bývá v neperiodických systémech 3N − 6, protože každý atom má 3 složky rychlosti, od čehož je
6 stupňů odečteno, neboť rotace a translace těžiště jsou ignorovány. V
periodických systémech jich je obvykle 3N - 3, protože se ignorují jen
translace těžiště.
Ačkoliv na začátku
simulace se atomům přiřadí rychlosti podle Maxwellova–Boltzmannova rozdělení
při dané teplotě, během simulace rozdělení nezůstává stejné. To se děje zejména
tehdy, když simulace nezačíná ze struktury, která je zcela minimalizovaná.
Rovněž se během simulace mění teplota, když se minimalizovaná struktura mění ve
strukturu v teplotní rovnováze a kinetická energie přechází v potenciální
energii.
Konstantní teplota
se udržuje algoritmy, které musí upravovat rychlosti atomů tak, aby dohromady
dávaly teplotu korektně, tedy podle Maxwellova–Boltzmannova rozdělení. K tomu
je třeba navíc zaručit vytváření korektního statistického souboru, tj. že
pravděpodobnost výskytu jisté konfigurace se chová podle statistických zákonů.
Např. pro soubor NVT to znamená, že pravděpodobnost výskytu konfigurace s
energií E je
úměrná tzv. Boltzmannovu faktoru exp(−E/kT).
Přímé přeškálování
rychlostí
Jde o drastický
způsob změny rychlostí atomů tak, aby bylo přesně dosaženo žádané teploty.
Ačkoli je to velmi efektivní způsob, během simulace se obyčejně nepoužívá,
protože neprodukuje korektní statistický soubor, potlačuje přirozené fluktuace
systému. Používá se k rychlé změně teploty během snahy dostat systém do
rovnovážného stavu s požadovanou teplotou.
Berendsenův
termostat
Tato metoda lze
použít pro rovnovážný systém a dává již dobré přiblížení kanonickému souboru.
Každá rychlost je znásobena faktorem
(13)
kde Dt je délka kroku, τ je charakteristický relaxační čas, T0 je požadovaná teplota
a T je okamžitá
kinetická teplota [7].
Noseho–Hooverův
termostat
Tato metoda je
složitější a je třeba použít Hamiltonián systému. Výsledkem je přesný kanonický
soubor. V metodě se pro reprezentaci interakce s termostatem přidává k modelu
fiktivní stupeň volnosti s vhodnou hmotností a korektním potenciálem. Výpočet
pohybových rovnic s konstantní energií (tj. v NVE souboru) pro rozšířený systém
pak vede k NVT souboru pro reálný model [8-11].
Andersenova
metoda
Tato metoda je
založena na tom, jakým způsobem je ovlivňována teplota v reálném systému. Jedna
verze Andersenovy metody změní v každém kroku rychlost jednoho atomu podle
Boltzmannova rozdělení. Jiná verze náhodně mění s předem danou kolizní
frekvencí rychlosti všech atomů.
Kontrola tlaku
Tlak je
termodynamická stavová veličina. Počítá se využitím viriálového teorému [12].
Okamžitý tlak P při
kinetické teplotě T, objemu systému V , v němž je N částic, je
(14)
W je vnitřní viriál
(15)
kde ri jsou pozice atomů a
fi jsou síly na ně
působící. Termodynamický tlak je průměrem okamžitého tlaku.
Tlak může být
definován jen v případě, kdy je systém v nějaké buňce o daném objemu. V případě
molekulových simulací je to mřížová buňka, proto lze tlak spočíst jen pro
periodické modely. Stejně jako v případě teploty musí metody na kontrolu tlaku
vytvářet korektní statistické soubory. Metody jsou podobné jako u teploty.
Berendsenova
metoda
V této metodě je
tlak upravován změnou souřadnic částic a velikosti buňky, a to tak, že v každém
kroku jsou jak všechny tři souřadnice každého atomu, tak vektory mříže znásobeny
stejným faktorem
(16)
v němž Dt je krok, P je okamžitý tlak, P0 je žádaný tlak a γ a τ jsou volitelné parametry
stlačitelnost a relaxační čas. U této metody se projevují výrazné fluktuace a
není ji vhodné obecně používat [13].
Andersenova
metoda
V této metodě je
objem brán jako proměnná systému. K Lagrangiánu systému jsou přidány dva členy:
člen reprezentující kinetickou energii mříže, který má jako parametr volitelně
definovanou hmotnost, a člen reprezentující elastickou energii, jež je součin PV tlaku P a objemu buňky V. Z tohoto
Lagrangiánu se odvozují pohybové rovnice pro atomy a mřížové vektory [14].
Pokud je třeba
simulovat za neizotropního tlaku, používá se Parrinellova–Rahmanova metoda [15],
která je obdobná Andersenově metodě.
Obecný postup
dynamických výpočtů
Dynamické simulace
probíhají ve dvou fázích: dosažení rovnovážného stavu s požadovanými podmínkami
a vlastní simulace (sbírání dat, produkční fáze). Každá z nich představuje
samostatnou dynamickou simulaci.
Za rovnovážný stav
se považuje konfigurace systému, která nejvíc odpovídá požadované teplotě a
tlaku. Jeden ze způsobů jak poznat, zdali bylo rovnováhy dosaženo, je měřit v
závislosti na čase termodynamické veličiny, jako jsou energie, teplota, tlak. V
rovnováze tyto veličiny fluktuují okolo svých průměrných hodnot, které jsou v
čase konstantní. Ovšem zcela dostatečný test to není, neboť konfigurace se může
náhle změnit i po dlouhé době. Jistější způsob ověření rovnováhy je začít
výpočet z různých počátečních konformací s různými rychlostmi. Pokud
dokonvergují k podobným konformacím a vlastnostem, bylo pravděpodobně rovnováhy
dosaženo.
Na začátku fáze
hledání rovnováhy se atomům přiřadí rychlosti podle Maxwellova–Boltzmannova
rozdělení a během hledání rovnovážného stavu je možno teplotu udržovat i přímým
přeškálováváním rychlostí. Pokud je systém velký, může trvat poměrně dlouho
najít rovnovážný stav, protože je třeba prohledat rozsáhlý stavový prostor. Na
dobu hledání rovnováhy má rovněž negativní vliv, pokud jsou velké energetické
bariéry mezi lokálními minimy a globálním minimem.
Následná simulace
po dosažení rovnováhy již slouží k zaznamenávání údajů o systému. Teplotu
v této fázi nelze kontrolovat přímým přeškálováváním rychlostí. K dosažení
rovnováhy je možno použít jiný statistický soubor než pro následnou produkční
fázi a je samozřejmě možné z jednoho rovnovážného modelu pokračovat ve
více simulacích za rozdílných podmínek.
Nalezení globálního minima
Lze předpokládat,
že model s nejmenší celkovou energií bude pravděpodobně také ten
nejrealističtější. Proto cílem molekulárního modelování je nalézt globální
energetické minimum. To se provádí změnami všech stupňů volnosti, jimiž jsou
pozice atomů, rozměry mříže atd. Zmíněné klasické minimalizační algoritmy (viz.
P. Kovář: Výpočetní metody v molekulární mechanice) většinou dokáží najít
jen lokální minima, která jsou blízko výchozí konformace, neboť tyto algoritmy
ignorují konformace, jejichž energie je vyšší. Jedině procházením celého
povrchu energie, který je dán zmíněnými stupni volnosti, lze nalézt globální
minimum. Pro nalezení globálního
minima je třeba mít metody pro generování velkého množství výchozích modelů s
rozdílnými konformacemi. Tyto metody lze rozdělit podle přístupu do třech
skupin:
1. deterministické systematické procházení celého
povrchu energie,
2. stochastické metody (např. Monte Carlo,
genetické algoritmy),
3. molekulární dynamika.
Pochopitelně nejspolehlivějšími metodami je
procházení celého povrchu energie, tj. prostoru všech možných stavů např. krystalu.
Toto je možné pouze pro malé modely, neboť pro velké struktury významně narůstá
výpočetní čas, a je třeba použít další dva přístupy.
Nutno ještě dodat, že hledat globální minimum má
smysl zejména u malých molekul (dosažení globálního minima lze poznat tak, že
minimalizační algoritmy k němu dokonvergují z vícero rozdílných výchozích
konformací). U větších struktur často existuje několik různých konformací,
které jsou v lokálním minimu a mají obdobnou energii, a tudíž se mohou všechny
vyskytovat. Metody na hledání globálního minima pak místo toho slouží k
nalezení všech takto možných stavů.
Deterministické procházení stavového
prostoru
Tyto metody spočívají ve vygenerování mnoha
hrubých výchozích konfigurací, tzv. iniciálních modelů, z nichž ty nejvhodnější
jsou následně minimalizovány. Aby bylo opravdu nalezeno globální minimum,
iniciální modely musí pokrývat celý prostor možných stavů. U různých konformací
molekuly se příliš neliší délky a úhly vazeb, ale torzní úhly. Proto konkrétní algoritmus
výběru iniciálních modelů obyčejně spočívá v systematických změnách všech
torzních úhlů molekuly.
Stochastické metody
Tyto metody nedokáží obecně prohledat celý stavový
prostor, ale většinou se jedná o vytváření nových iniciálních modelů z již dříve
minimalizovaných modelů s vložením náhodných malých změn. Tyto iniciální modely
jsou pak zase standardně minimalizovány.
Nejčastějšími metodami jsou torzní Monte Carlo,
kartézské stochastické metody nebo na genetických algoritmech založené metody,
které využívají celé sady výchozích minimalizovaných modelů, jež jsou postupně
vylepšovány jejich vzájemným ovlivňováním.
Typy molekulární dynamiky
Molekulární dynamika lze použít i za účelem
vytváření nových konformací. Požadavek rovnovážnosti není třeba a na vhodné
procházení prostoru stavů se používají jiné, odpovídající techniky dynamiky. Molekulární
dynamika využívá kinetické energie atomů k překonání potenciálových bariér. To
jí umožňuje dosáhnout stavů molekul, které jsou pro minimalizaci nedostupné.
Délka dynamiky bývá nejvýše několik nanosekund, což je příliš málo na významnou
změnu konformace. Proto se molekulární dynamika hodí k efektivnímu prozkoumání
lokálního prostoru stavů, ale nelze ji v tomto případě užít k hledání
globálního minima. Toto omezení se snaží překonat některé speciální techniky
dynamiky, používající případně vyšší teploty (lze použít i klasickou dynamiku
za vyšší teploty, která umožňuje překonat velké energetické bariéry). Lze
využít např. následující typy dynamik:
„Quenched”
dynamika (zhášená)
Tato technika nezvyšuje možnosti dynamiky nalézt
globální minimum, ale prochází dosažitelný prostor stavů užitečněji. Je to
kombinace klasické dynamiky a minimalizace. Pravidelně, po jistém počtu kroků
dynamiky je struktura minimalizována. Poté dynamika pokračuje od stavu před
minimalizací. Minimalizované stavy se zaznamenávají odděleně od stavů
dosažených během dynamiky. Tuto metodu lze kombinovat s jinými technikami
dynamiky.
Dynamika
„simulated annealing“ (žíhací)
V této technice se teplota ve zvolených krocích
zvyšuje z původní k cílové teplotě a poté zase zpět. Tento cyklus se
případně několikrát opakuje. Zvýšení teploty umožní překonat i vysoké
energetické bariéry.
Při kombinaci s Quenched dynamikou se minimalizuje
stav s nejmenší energií během posledního cyklu.
Impulsní
dynamika
Impulsní dynamika umožňuje před spuštěním výpočtu
přiřadit výchozí rychlosti o určitém směru vybraným atomům. Takto lze rovněž překonat
energetické bariéry.
References
1. P. Comba, T. W. Hambley, Molecular Modeling of
Inorganic Compounds. VCH, Weinheim, 1995.
2. M. Veteška, Molekulární simulace ve strukturní
analýze interkalátů. MFF UK Praha 2006.
3. Cerius2 User Guide,
Forcefield Based Simulations. Molecular Simulations Inc., San Diego, 2000.
4. W. H. Press, B. P. Flannery, S. A. Teukolsky, W. T.
Vetterling, In Numerical Recipes, The Art of Scientific Computing. Cambridge
University Press, Cambridge, 1986.
5. L. Verlet, Phys. Rev., 159, (1967), 98 –
103.
6. I. Nezbeda, J. Kolafa, M. Kotrla, Úvod do
počítačových simulací metody Monte Carlo a molekulární dynamiky, Karolinum,
Praha 1998.
7. H. J. C. Berendsen, J. P. M. Postma, W. F. van
Gunsteren, A. DiNola, J. R. Haak, J. Chem. Phys., 81, (1984), 3684-3690.
8. S. Nosé, Molec. Phys., 52, (1984), 255-268.
9. S. Nosé, J. Chem. Phys., 81, (1984),
511-519.
10. S. Nosé, Prog. Theoret. Phys. Supplement, 103,
(1991), 1-46.
11. W. Hoover, Phys. Rev. A, 31, (1985),
1695-1697.
12. M. P. Allen, D. J. Tildesley, Computer Simulation
of Liquid, Claredon Press, Oxford Science Publications, 1987.
13. D. Brown, J. H. R. Clark, Molecular Physics, 51,
(1984), 1243-1252.
14. H. C. Andersen, J. Chem. Phys., 72, (1980),
2384-2393.
15. M. Parrinello, A. Rahman, J. Appl. Phys., 52,
(1981), 7182-7190.