LASKENNALLISEN TIETEEN OHJELMATYÖ: Diffuusion Monte Carlo -simulointi yksiulotteisessa systeemissä. Diffuusio yksiulotteisessa epäjärjestäytyneessä hilassa E J ii, J ii, + 0 E b, i E i i i i+ x Kuva.: Testihiukkasen diffuusio yksiulotteisessa epäjärjestäytyneessä hilassa Tutkitaan testihiukkasen diffuusiota yksiulotteisessa hilassa. Hiukkanen voi olla missä tahansa hilapaikassa i, i N. Epäjärjestystä systeemiin tuo se, että hiukkasen sidosenergia riippuu hilapaikasta: merkitään sitä paikassa i symbolilla E i. Hiukkasella on todennäköisyys J ii, ( J ii, + ) aikayksikköä kohti hypätä vasemmalla (oikealla) puolellaan olevaan naapurihilapaikkaan. Normaalissa Metropolis-algoritmissa hyppytodennäköisyydet lasketaan alku- ja lopputilojen energioiden erotuksen perusteella: J ii, ± ( ) k B T --e E i ± E i. (.) Tekijä / tulee hypyn suunnan valinnasta. Tämä on toimiva ratkaisu, kun olemme kiinnostuneita ainoastaan tasapaino-ominaisuuksista, sillä ainoa ehto on detaljibalanssin toteutuminen. Jos taas haluamme tutkia kuljetusilmiöitä kuten diffuusiota, on todennäköisyydet valittava siten, että ne kuvaavat systeemin todellista dynamiikkaa. Tässä tapauksessa on kyseessä termisesti aktivoitu prosessi, joten siirtymätodennäköisyydet ovat muotoa J ii, J ii, + --e E b i, k B T, (.) E b i missä,j on sen potentiaalivallin korkeus, joka hiukkasen täytyy ylittää, jotta se pääsee hilapaikkaan.. Ks. Laskennallisen tieteen erikoiskurssin moniste: http://www.lce.hut.fi/teaching/s-4.50/pstiedostot
Oletetaan, että hiukkanen on ajanhetkellä (tai aika-askeleella) t 0 paikassa x 0. Voidaan osoittaa, että suurilla ajanhetkillä hiukkasen keskimääräinen neliöpoikkeama kasvaa lineaarisesti ajan funktiona xt () t Testihiukkasen diffuusiovakio D määritellään. (.3) D lim t -- d x() t ------------------- dt. (.4) Voidaan osoittaa, että kuvan. mukaisessa systeemissä (ns. satunnaisloukkumalli, random trap model, jossa ) diffuusiovakio on E b, i E i D -- J, (.5) missä -- J N ------- ------------- + -------------- N i J ii, J ii, + N --- e E b i N i, k B T (.6) on siirtymätodennäköisyyksien käänteislukujen keskiarvo. Käytämme tässä periodisia reunaehtoja, joten kun i, J ii, J i, N ja kun i N, J ii, + J i,. Diffuusiovakio esitetään usein ns. Arrheniuksen muodossa D D 0 e E A k B T, (.7) D 0 missä on lämpötilasta riippumaton tekijä ja on (efektiivinen) aktivaatioenergia. E A. J. W. Haus, K. W. Kehr, Diffusion in regular and disordered lattices, Physics Reports 50 (987) 63.. Ks. viite., sivu.
3. Diffuusion Monte Carlo -simulointi Kuvatunlaisen diffuusion Monte Carlo (MC) -simulointi tehdään tutulla algoritmilla: nollaa laskurit: n sample 0, xt () 0 arvo lähtöpaikka: x x 0, t 0 arvo hyppysuunta, suorita hyppy todennäköisyydellä (.) päivitä hiukkasen paikka: x x ±, päivitä neliöpoikkeama: x() t xt () + ( x x 0 ), päivitä aika: t t + kyllä t < t max ei kyllä n sample < nmax sample ei laske xt (), lopeta Kuva.: Diffuusion MC-simulointi.
4 3. Ohjelmatyön suoritus Työ koostuu seuraavista tehtävistä. ) Osoita, että yhtälön (.) mukaiset siirtymätodennäköisyydet toteuttavat detaljibalanssin. Tilan todennäköisyytiheyden tai painon pitäisi olla verrannollinen termiin e E i T a) Laadi MC-ohjelma, jolla voit simuloida yhden hiukkasen diffuusiota epäjärjestäytyneessä yksiulotteisessa systeemissä. Epäjärjestystä energiatiloihin voit saada aikaan monella tavalla. Kuvassa 3. on yksi käyttökelpoinen esimerkki, jonka voi helposti koodata ohjelmaan. Siinä E 0 3 4 5 6 7 8 9 i ε b ε 3 4 5 Kuva 3.: Esimerkki simulaatiossa käytettävästä hilasta. vierekkäisten hilapisteiden energiaero on vakio eli E i E i ± ε Hilapaikan i energian voimme lausua muodossa. (3.) E i ε[ N i N ], (3.) missä N N on hilan puoliväli. Tässä tapauksessa N on parillinen. Siirtymätodennäköisyydet (.) tulevat nyt muotoon. Asetamme Boltzmannin vakio ykköseksi: k B.. HUOM: Tässä muutamme indeksoinnin C-kielen mukaiseksi, eli hilapaikan indeksi i 0 N.
5 J ii, J ii, + ( ) T --e ε b E i. (3.3) Malliin on lisätty valli ε b, jotta hilapaikan 0 hyppytodennäköisyys ei olisi aina tasan yksi. Kuvan 3. mukaisessa tapauksessa N 0, ε ja ε b 0.. b) Aja muutamia simulointeja lämpötilavälillä T 000 (logaritmisin välein) ja laske diffuusiovakio sovittamalla suora hiukkasen keskimääräiseen neliöpoikkeamaan ajan funktiona. Huomaa, että simulaation alusta kannattaa jättää pois osa, koska yhtälön (.3) mukainen käyttäytyminen alkaa vasta suuremmilla ajan arvoilla. Tämä kannattaa tarkistaa visuaalisesti. Tutki myös, lähestyykö systeemi tasapainotilaa eli ovatko eri tilojen (hilapisteiden) miehitykset verrannollisia termiin e E i T. Vertaa simulaatioista saamiasi diffuusiovakioita yhtälön (.6) antamiin teoreettisiin arvoihin. Lisäksi tutki, voiko simulaatiotuloksesi ilmaista Arrheniuksen muodossa. c) Lopuksi simuloi uudestaan muutama lämpötila käyttäen Metropolis-algoritmia (.). Vertaa tuloksia (.):n mukaan laskettuihin. Jos sinulla on harjoitustyöhön liittyviä kysymyksiä, ota yhteys työn ohjaajaan: Antti Kuronen email: antti.kuronen@hut.fi Teknillinen korkeakoulu puh: 09 45 4846 Laskennallisen tekniikan laboratorio fax: 09 45 4830 PL 9400, 005 TKK