Metropolis Hastings MC: Nesymetrická matice α + 1/21 Co když α j = α j? α j je-li π j α j π α j W j = π j α j α j π α j 1 k, k = p přij = min W k je-li π j α j < π α j pro = j 1, α j exp( βδu) α j Toto rozšíření Metropolisovy metody pochází od W. K. Hastingse
Force bias + 2/21 force bias α j = α j exp(βλ ƒ k Δ r) exp(βλ ƒ k Δ r)dδ r Optimální λ = 0.5 (mezi Metropolisem a tepelnou lázní) Podobně torque-bias (rotace), virial-bias (změna objemu) λ = 1 & linearizace metoda tepelné lázně
Preferenční vzorkování + 3/21 Častěji hýbeme částicemi tam, kde je to zajímavější Příklad: okolo molekuly rozpuštěnce p pref (r) např. = 1/(1 + r 2 /σ 2 ) Verze 1: Zvol náhodně molekulu rozpouštědla Jestliže [0,1) < p pref ( r r 0 ) ( r 0 = rozpuštěnec) generuj novou konfiguraci r zk přijmi ji s p přij = min 1, p pref( r zk r 0 ) p pref ( r r 0 ) exp( βδu) Jinak je nová konfigurace stejná jako stará. α pref (A A zk ) = α(a A zk ) p pref( r r 0 ) N
Preferenční vzorkování + 4/21 Verze 2: Zvol molekulu z rozložení p pref ( r r 0 ), = 1,..., N Např.: nástřel molekuly rozpouštědla jestliže není [0,1) < p pref ( r r 0 ), nový nástřel Proved MC krok s danou molekulou: generuj novou konfiguraci r zk přijmi ji s pravděpodobností p přij = min 1, p pref( r zk r 0 )/S zk p pref ( r r 0 )/S exp( βδu), S = N p pref ( r r 0 ) =1 Po optimalizaci prakticky stejně efektivní α pref (A A zk ) = α(a A zk ) p pref( r r 0 ) S
Polymery a Rosenbluthovo vzorkování 5/21 Příklad polymer v dobrém rozpouštědle jako náhodná procházka bez protínání: p = 1 4 3 3 3 p = 1 4 3 3 2 Ale oba polymery mají přispívat stejně! Náprava: Rosenbluthova váha (faktor) kroku = počet možných pokračování = R, váha konfigurace získané náhodnou procházkou je: R = Zobecnění (pokračování vybíráme úměrně Boltzmannově pravděp.): N =1 R R = k exp[ βu( )] =1
[start /home/jiri/vyuka/liberec/reptationchenille.webm] 6/21 Zobecnění pro spojitý svět V kroku generujeme k náhodných zkušebních konfigurací Vybereme jednu s pravděpodobností p( zkus ) = exp[ βu( zkus )] R, R = Váha konfigurace je: R = N =1 R k exp[ βu( zkus )] Pozn.: pro k = 1 je ovšem R = exp[ β U( zkus )] = exp( βu zkus celk ) Reptation Lineární homopolymer: uřízneme konec a přesuneme na začátek Možnosti: jedna náhodná nová poloha = standardní Metropolis více zkušebních poloh = CBMC (viz dále) http://www.youtube.com/watch?v=rctsg-srshk&feature=related =1
Configurational bias Monte Carlo + 7/21 k zkušebních konfigurací (náhodně nebo všechny na mřížce) místo jedné, vybereme ji s pravděpodobností p( r tr ) = exp[ βu( rtr )], R tr = R tr Krok přijmeme s pravděpodobností: min R old = exp[ βu( r old )] + k =2 1, R tr R old k =1 exp[ βu( r tr )], kde exp[ βu( r old,tr )] R old = = je stejně generovaná náhodná konfigurace) NB: na mřížce se může stát R old = R tr, což je metoda tepelné lázně ( r old,tr k =1 exp[ βu( r old )] Matice přechodu W j = α j exp[ βu( r j )] R j α j exp[ βu( r j )] R j R j R for R j > R for R j < R
Simulace molekulárních systémů 8/21 Velké molekuly vs. malé molekuly (tuhé nebo téměř tuhé) Site-site modely vs. těleso vs. multipóly aj. Vibrující vazby (klasicky) výhody: jednoduchost a konzistence modelu jednoduchost počítačového programu realističtější popis flexibility molekul Nevýhody: technické simulační potíže způsobené velkou silou vazeb (krátké zkušební posunutí v MC, krátký časový krok v MD) frekvence vibrací pro vazby a úhly obsahující vodíky jsou tak vysoké, že klasická mechanika pro jejich popis stejně nevyhovuje přenos energie mezi velmi rychlými a pomalými stupni volnosti je pomalý (pokud není použit např. Maxwellův/Andersenův termostat) flexibilní model je mnohem náročnější k teoretickému studiu
MC: lineární tuhé molekuly 9/21 Špatně: θ, ϕ & Metropolis Lépe: θ, ϕ & přijmout s p přij. = min{1, Nebo: cos θ, ϕ Nejlépe: vektory, např. (pro CO): sin θzkus sin θ exp( βδu)} r C = r center + 2 n r O = r center 2 n = CO n = n + d s, n new = n n s = náhodný vektor na sféře (povrchu koule) ( s = 1)
MC: Obecné tuhé molekuly + 10/21 Eulerovy úhly jsou problematické. Lépe: Náhodná rotace okolo osy: ˆ, ŷ, ẑ spojené s tělesem (lepší u podlouhlých těles lze měnit úhel) ˆ, ŷ, ẑ v pevné souřadné soustavě náhodného směru v prostoru Rotace (Ω = matice rotace) r = r,center + Ω r,rel Příklad: rotace o Δα okolo osy ẑ: Ω zkus = Ω cos Δα sin Δα 0 sin Δα cos Δα 0 0 0 1
Kvaternionty + 11/21 Kvaternion: q = + + yj + zk 2 = j 2 = k 2 = 1, j = j = k, jk = 1 (a cykl.) q 2 = 2 + 2 + y 2 + z 2 Množina { q = 1, q q} je izomorfní s SO(3) (grupa rotací), což lze využít pro MC, kinematiku i dynamiku. Matice rotace: Ω = 2 + 2 y 2 z 2 2y 2z 2z + 2y 2y + 2z 2 2 + y 2 z 2 2yz 2 2z 2y 2yz + 2 2 2 y 2 z 2 Pozn.: Existují 4 algebry s dělením, které jsou zároveň vektorovým prostorem (tj. mají normu a skalární součin): reálná čísla, komplexní čísla, kvaternionty (násobení je nekomutativní) a oktonionty (Cayleyova algebra, násobení je nekomutativní a neasociativní).
MC: molekuly s vnitřními stupni volnosti 12/21 Kartézké souřadnice zobecněné souřadnice (potřebuji Jacobián brrr) Kartézké souřadnice orthogonální souřadnice (Jacobián se nemění při jednom pohybu) Zamrzlé stupně volnosti (vazby) Crankshaft moves, reptation,...
MD: vazby 13/21 Integrace pohybových rovnic pro systémy s pevnými délkami vazeb či vazebnými úhly není totožná s limitou flexibilního systému pro nekonečně velké silové konstanty Fixujeme: pouze vazby s H lze delší h, horší rovnováha mezi stupni volnosti (konvergence) všechny vazby často OK, horší pro těžší atomy, nelze pro fulereny apod. všechny vazby + úhly s vodíky levné a méně přesné, delší krok, dobrá konvergence všechny vazby + všechny úhly OBVYKLE ŠPATNĚ Metody: SHAKE (+Verlet) Lagrangian constraint dynamics
Rozdělení diedrického úhlu pro butan 14/21 United-atom model (CHARRM19) butanu normalized dihedral angle distribution 0.3 0.2 0.1 rigid angles+bonds flexible angles+bonds flexible angles, rigid bonds 0 0 90 180 270 360 φ/ o
SHAKE 15/21 Matematické kyvadlo: r(t + h) = r Verlet (t + h) h2 ƒ c (t) m r(t h) r(t) r(t + h) r Verlet (t + h) = 2 r(t) r(t h) + h 2 ƒ (t) ƒ c (t) m h 2 ƒ c (t) m = λ r(t) r(t + h) = r(t) = λ r(t) λ = r Verlet(t + h) 2 r(t) 2 2 r Verlet (t + h) r(t)
SHAKE 16/21 Obecná vazba: kde r (t + h) = 1/m r Verlet, (t + h) + λ r j 1/m + 1/m j r j (t + h) = 1/m j r Verlet,j (t + h) λ r j 1/m + 1/m j λ = r Verlet,j(t + h) 2 r j (t) 2 2 r Verlet,j (t + h) r j (t) Zachovává se těžiště (integrál pohybu)! Složitá molekula: iterace Superrelaxace
Cvičení konformace butanu + 17/21 Studujte rozložení diedrického úhlu CHARMM modelu butanu za vyšší teploty. Vyzkoušejte: flexibilní úhly i vazby flexibilní úhly, pevné vazby (SHAKE) pevné úhly i vazby případně s vypnutým torzním potenciálem a 1 4 interakcí Triky: blend -h99 = úhly s atomy těžšími než 99 g/mol ekvivalentní vazby cook -u9999 = vazby s K < 9999 K/Å 2 /mol budou flexibilní, ostatní pevné Pro zrušení všech 1 4 členů nutno editovat butane.ble: v tabulce dihedrals zapsat K = 0 v tabulce sites vymazat * v členu *0 (interakce 1 4 nic)
Cvičení konformace butanu + 18/21 Postup rozbalte si../dihedral.zip flexibilní úhly i vazby: guest@a325-1:~/vy$ blend -o butane butane guest@a325-1:~/vy$ cookcedih butane dih -s -u9999 flexibilní úhly, pevné vazby: guest@a325-1:~/vy$ blend -o butane butane guest@a325-1:~/vy$ cookcedih butane dih -s pevné úhly i vazby: guest@a325-1:~/vy$ blend -o butane -h99 butane guest@a325-1:~/vy$ cookcedih butane dih -s
Výsledky konformace butanu + 19/21 normalized dihedral angle distribution 0.3 0.2 0.1 rigid angles+bonds flexible angles+bonds flexible angles, rigid bonds 0 0 90 180 270 360 φ/ o
Optimalizace I 20/21 Pro krátkodosahové párové potenciály (nebo Ewald r-space): všechny páry (N < 300) seznam sousedů (neighbor list) (N 1000) metoda zřetězených seznamů (linked-cell list method) (N > 1000)
Optimalizace II 21/21 Pár triků: MD: metody několikanásobného kroku (multiple timestep MD) MC: multimoves (blízko kritického bodu critical slowing-down) MC: výměna identity částic, neboltzmannovské vzorkování,... hybrid MC/MD (nic moc) Programátorské triky: cache výpočet nejbližších sousedů v periodických okrajových podmínkách tabulky potenciálu (spliny) Paralelení kód: obvykle založen na domain decomposition (linked-cell list) standardní počítače: 4 32 jader Graphics Processing Units: tisíce procesorů, složitější k programování