QCD:n numeerinen ratkaisu hilalla Teemu Rantalaiho teemu.rantalaiho@helsinki.fi Teoreettisen fysiikan laudatur seminaari, Helsingin yliopisto 12. marraskuuta 2009
Agenda 1 Linkkivariaabeli ja plakettivaikutus Yang-Mills vaikutus ja fermionit Hila-QCD:n statistiikkaa Tärkeysotannat Metropolis algoritmi Pseudofermionit ja Hybridi Monte Carlo metodi Tulosten laskenta Rajankäynti jatkumoon, skaalaus ja asymptoottinen skaalaus Staattinen potentiaali Massalaskut Toteutus käyttäen CUDA-arkkitehtuuria Mikä CUDA? Tuloksia ja yhteenveto
Linkkivariaabeli ja plakettivaikutus 2 U µ (x 4 ) = U µ(x 4 a µ ) U µ(x + a ν ê ν ) ψ(x 5 ) U ν (x 3 ) U ν(x) U ν (x + a µ ê µ ) ψ(x 1 ) Uµ (x 1 )U µ (x 2 ) x Uµ (x)
Plakettivariaabeli 3 Määritellään linkkivariaabeli U µ (x) seuraavasti: { U µ (x) = P exp ( x+aµ i dx µ A µ (x) )} e ia µ(x)a µ, kun a µ 0 x Ja plakettivariaabeli: P µν (x) = U ν(x)u µ(x + a ν ê ν )U ν (x + a µ ê µ )U µ (x) U µ(x + a ν ê ν ) U ν(x) U ν (x + a µ ê µ ) x Uµ (x) Muunnosominaisuudet mittamuunnoksessa:p µν(x) = Λ(x)P µν (x)λ 1 (x), Mikä tahansa suljettu polku linkkivariaabeleista mittainvariantti: tr { 1 U µi (x i ) } = tr { U µn (x n ) U µ1 (x 1 ) } = tr { 1 U µ i (x i ) } i=n i=n
Vaikutusintegraali 4 Plakettivariaabeli mittakentän funktiona: P µν (x) = exp { ia µ a ν ( µ A ν (x) ν A µ (x) + i [A µ (x), A ν (x)] ) + io(a 3 ) } = exp { ia µ a ν F µν (x) + io(a 3 ) } Sen jälki on tr P µν (x) = tr ˆ1 N N tr { ia µ a ν F µν (x) + O(a 3 ) } (a µa ν ) 2 ( { tr Fµν (x) 2}) + O(a 6 ) 2 Termi O(a 3 ) muotoa: [A, [A, B]] [B, [A, B]] +..., joten sen jälki katoaa Vertaamalla tätä Yang-Mills Lagrangen tiheyteen 1 tr { F 2g 2 µν F µν} huomataan, että 4 tr { 1 P µν (x) } 4 = tr { 2 ( P µν (x) + P µν(x) )} 4 = 2 Re tr { 1 P µν (x) } µ,ν=1 = µ<ν=1 4 µ<ν=1 µ<ν=1 (a µ a ν ) 2 tr { F µν (x)f µν (x) } + O(a 6 ), 2 Josta saadaan Yang-Mills vaikutus hilalla (a µ = a ν ): S YM (U µ ) = 2 4 Re tr { 1 P g 2 µν (x) } 1 2g 2 x L µ<ν=1 d 4 x tr { F µν (x)f µν (x) }
Fermionit hilalla 5 ψ(x) muuntuu vektorina mittamuunnoksessa Λ(x): ψ (x) = Λ(x)ψ(x) ψ (x) = ψλ 1 (x) Siten mikä tahansa avoin jatkuva ketju x 1:stä x n:än linkkivariaabeleita pitkin on triviaalisti mittainvariantti: ψ (x n )U µ n 1 (x n 1 ) U µ 1 (x 1 )ψ (x 1 ) = ψ(x n )U µn 1 (x n 1 ) U µ1 (x 1 )ψ(x 1 ) U µ (x 4 ) = U µ(x 4 a µ ) ψ(x 5 ) U ν (x 3 ) ψ(x 1 ) Uµ (x 1 )U µ (x 2 )
Wilsonin fermioni-vaikutus 6 Kovariantti derivaatta linkkivariaabeleiden avulla: U 1 (x + dx µ )ψ(x + dx µ ) ψ(x) D µ ψ(x) = lim dx µ 0 dx µ Joten ensimmäinen yrite diskreetiksi fermioni-vaikutukseksi on S q = x L ( ψ(x)mψ(x) 1 2 S q : aiheuttaa fermionien tuplausongelman ±4 µ=±1 [ ψ(x + ˆµ)γ µ U µ (x)ψ(x) ]), Wilsonin ratkaisu: kovariantin derivaatan diskretisointiin lisätermejä tuplatilojen massat saadaan kääntäen verrannollisiksi a :sta. Sq W = S q + 4 a µ r( (Dµ ψ(x)) γ 0)( D µ ψ(x) ), 2 x L µ=1 r 0 Wilsonin parametri usein r = 1 Wilsonin vaikutus dimesiottomien parametrien avulla: S W q = x L ( ψ(x) ( m + 4r ) ψ(x) 1 2 ±4 µ=±1 [ ψ(x + ˆµ)(γ µ + r)u µ (x)ψ(x) ])
Hila QCD:n statistiikkaa 7 Hila-QCD:n vaikutus Euklidisessa avaruudessa: S[ψ, ψ, U] = x L ψ(x) ( m + 4r ) ψ(x) 1 2 + 2 g 2 4 µ<ν=1 ±4 µ=±1 Re tr { 1 P µν (x) } [ ψ(x + ˆµ)(γ µ + r)u µ (x)ψ(x) ] Mielivaltainen vakuumi-vakuumi odotusarvo polkuintegraalina: F [ ψ, ψ, U ] = 1 ( d Z ψ(x) 4 ) dψ(x) du µ (x) F [ ψ, ψ, U ] e S[ψ, ψ,u], xinl µ=1 missä normitustekijä Z = xinl d ψ(x) dψ(x) 4 µ=1 du S[ψ, ψ,u] µ(x) e Vaikutus S alhaalta rajoitettu ensemble-odotusarvo Boltzmannin painolla e S kyseessä kanoninen jakauma! Statistista fysiikkaa! d ψ(x) ja dψ(x) Grassmann-muuttujia du µ (x) :t ovat Haar-Hurewitzin, eli mitta-invariantteja, mittoja.
Monte Carlo simulaatio ja tärkeysotanta 8 Unohdetaan hetkeksi materiakentät Mittakentän integraalien suora laskeminen ei käytännössä onnistu Monte Carlo integroinnilla saataisiin ensemble tasaisesti jakautuneita kenttäkonfiguraatioita {U i }: F [ ψ, ψ, U ] i F [U i]e S[U i], i e S[U i] mutta suurimmalla osalla konfiguraatiosta paino e S 1. Jos olisi mahdollista laskea ensemble {U i }, joka toteuttaa Boltzmannin jakauman e S, niin integraalia voitaisiin approksimoida triviaalisti: F [ ψ, ψ, U ] 1 n F [U i ] n ja tämän lisäksi laskentateho saataisiin käytettyä järkevästi. i=1 Tälläinen otatanta tunnetaan nimellä tärkeysotanta
Metropolis-algoritmi 9 Tärkeysotanta käytännössä usein Markovin ketjulla: 1) Valitaan lähtökonfiguraatio U 0 satunnaisesti 2) Luodaan uusi konfiguraatio U i varioimalla satunnaisesti edellisestä konfiguraatiota U i 1 siten että U i = P U i 1 3) Toistetaan kohtaa 2), kunnes approksimaatio on tarpeeksi tarkka Transitiotodennäköisyyden P pitää toteuttaa vahva ergoidisuusehto: P (U U) > 0, U, U Ja tasapaino ensemblen W c = lim n P n W 0, W 0 = {U 0 } pitää toteuttaa tarkka tasapainoehto: P (U U)W c = P (U U )W c, U, U Metropolis algoritmi: W c [U] = e S[U] P (U U) = 1 { n min 1, W c[u ] } W c [U]
Lämpökylpy-algoritmi SU(3)-mittakenttäteorialle 10 1) Alusta N m satunnaista SU(3)-matriisia 2) Alusta hilan kaikki linkkivariaabelit U µ (x) satunnaisesti 3) Jokaiselle linkkivariaabelille U µ (x): Luo uusi linkkivariaabeli kertomalla vanhaa satunnaismatriisilla Laske Boltzmann-tekijän muutos e S, missä S = S[U ] S[U] Valitse satunnaismuuttuja x tasaisesta jakaumasta x U(0, 1) Tallenna uusi linkkimuuttuja hilaan, jos e S > x S[U] = β 4 Re tr { 1 P µν (x) } N c x L µ<ν=1 S[U µ(x)] = β 4 Re tr { 1 P µν (x) } N c ν ν=1 U µ (x)
Pseudofermionit 11 Fermioni-integraalit Grassmann-muuttujia Suora simulointi tietokoneella ei onnistu Fermionivaikutus voidaan kirjoittaa muodossa: S q = x,y L ψ(x)ax,y [U]ψ(y), F [ψ, ψ, U] = ψ(x 1 )... ψ(x n ) ψ(y 1 )... ψ(y n ) F U [U µ ] Grassmann-integraalit voi laskea analyyttisesti: ( d ψ(x) ) dψ(x) F [ ψ, ψ, U ] e S[ψ, ψ,u] = F U [U]e S Y M[U] xinl missä Saadaan G(A[U]) = ( 1) n(n 1) 2 F [ ψ, ψ, U ] = 1 Z P xinl µ=1 π(p )A 1 x 1 y p1 [U]... A 1 x n y p n [U] S eff [U] = S Y M [U] ln det A[U] = S Y M [U] tr ln A[U] det A[U] G(A[U]), 4 du µ (x) F U [U]e Seff[U] G(A[U]),
Pseudofermionit 2 12 Dirac matriisi A iso det A mahdoton laskea Lisäksi det A[U] on epälookaali lämpökylpyalgoritmi hidas! Jos kaksi degeneraattia fermionimakua A = QQ: { det(q Q) = N 1 dφ dφ exp x,y φ (x) [ Q Q ] } 1 xy φ(y), missä φ:t ovat skalaari-kenttiä! Determinantin lasku saadaan kääntämällä matriisi [ Q Q ] Ongelma palautuu (yllättäen) muotoon: Ax = b
Konjugaattigradientti-algoritmi 13 Jos Dirac matriisi A on positiivi-definiitti voidaan käyttää konjugaattigradientti-algoritmia 1. Alkuyrite x 0 (esimerkiksi x 0 = b) 2. r 0 = b Ax 0 mittaa yritteen virhettä 3. p 0 = r 0 askelsuunta 4. Iteroidaan missä x i+1 = x i + α i p i r i+1 = r i α i Ap i p i+1 = r i+1 + β i+1 p i, α i = r i r i p i Ap, β i = r i r i i r i 1 r i 1
Hybridi Monte Carlo metodi 14 Fermionimatriisin kääntö kallis Edullista päivittää koko hila per kääntö Periaatteessa mahdollista päivittää koko hila satunnaisesti ja sitten tehdä Metropolistesti, mutta Metropolistestin läpäisyn todennäköisyys olematon Molekylaaridynamiikka apuun: Ajatellaan indeksi τ, ensemblessä {U τ } aikaparametriksi Määritellään linkkivariaabeleille U µ (x) konjugaattimomentit: Sekä Hamiltonin funktio: H[P, π, U, φ] = 1 2 P µ (x) = x,µ,k N 2 1 k=1 P µ,k (x) 2 + 1 2 t k P µ,k (x) π (x)π(x) + S[U, φ] x Dynamiikka Markovin ketjun indexi-parametrin τ suhteen Hamiltonin liikeyhtälöistä: dp i dτ = H dq i q i dτ = H, p i
π (x), π(x) ovat pseudofermionien φ (x), φ(x) momentit Wilsonin fermionimatriisi on muotoa Q x,y = δ xy κ ±4 µ=±1 Linkkivariaabelin U µ (x) aikaderivaatta : du µ (x) dτ = τ e iα k(τ)t k = k δ y+ˆµ,x (r + γ µ )U µ (x) it k ( dαk (τ) dτ ) U µ (x) 15 koska τ α k (τ) = H P µ,k (x) = P µ,k(x) saadaan du µ (x) dτ = i k t k P µ,k (x)u µ (x) = ip µ (x)u µ (x) Derivaatta linkkivariaabelin parametrin α k suhteen on F [U] F [eiαktk] F (x) = = it k U F [U ] α k α k x x=u α k linkkivariaabeleiden momenteille liikeyhtälöt: dp µ,k (x) dτ = it k U F (x) x = S YM[U] α µ (x) ([ Q Q ] 1 ) (Q Q) ([ φ Q Q ] 1 ) φ, α µ (x), x=u
Pseudofermionivariaabeleiden liikeyhtälöt: 16 dφ(x) dτ = π(x) dπ(x) dτ = y [ Q Q ] 1 x,y φ(y) Yksityiskohtainen tasapaino toteutuu leapfrog -integraatiolla: 1) Integroidaan P µ (x) ja π (x), π(x) puolikkaalla aika-askeleella τ 2 2) Integroidaan U µ (x) ja φ (x), φ(x) kokonaisella aika-askeleella τ 3) Integroidaan P µ (x) ja π (x), π(x) kokonaisella aika-askeleella τ 4) Toistetaan 2):a ja 3):a kunnes tuotettu tarpeeksi konfiguraatioita ja integroidaan vielä kerran U µ (x) ja φ (x), φ(x) puolikkaalla aika-askeleella τ 2 Klassinen integrointi antaa (lähes) deterministisen trajektorin faasiavaruudessa Kehno ergoidisuus Potentiaalin S[U, φ] minimi ei välttämättä löydy Tasapaino jakauma oletettavasti jotain muuta kuin Boltzmannin jakauma e S Ajoittainen Metropolis-testi korjaa jakauman Momenttivariaabeleiden päivitys lämpökylvystä (gaussinen jakauma) parantaa ergoidisuutta Näin saatua algoritmia kutsutaan Hybridi Monte Carlo-algoritmiksi
Tulosten tuottaminen 17
Staattinen kvarkkipotentiaali 18 Aiemmin opittu että staattinen kvarkkipotentiaali voidaan laskea Wilsonin loopista: tv (r) = ln tr W r t + C Missä Wilsonin looppi on: W r t = U 4 (x)u 4 (x 0 + ˆ4)... U 4 (x + (t 1)ˆ4) U µ(x + tˆ4)... U µ(x + tˆ4 + (r 1)ˆµ) U 4 (x + (t 1)ˆ4 + rˆµ)... U 4 (x + rˆµ) U µ (x + (r 1)ˆµ)... U µ (x) U µ (x + 3ê 4) U µ (x + 4ê µ + 3ê 4 ) U 4 (x + 2ê 4) U 4 (x + 5ê µ + 2ê 4 ) U 4 (x) ê 4 x U µ (x) U µ (x + 4ê µ ) U 4 (x + 5ê µ ) ê µ Teoria ennustaa V (r) = α r + C + σr,
Massalaskut 19 Hadronien massojen lasku tärkeä sovellus Onnistuu tutkimalla aikakorrelaatiofunkioita suurella aika-parametrin arvoilla: C(t) = Ω ˆT { O(t)O(0) } Ω, ˆT aikajärjestelyoperaattori ja O(t) = e Ht O(0)e Ht on operaattori, jolla on halutut kvanttinumerot esim. mesoneille sopii O(t) = x L Ψ(x, t)γ Ψ(x, t), missä Γ on jokin Dirac-matriiseista Korrelaattori C(t), t > 0 voidaan kirjoittaa energian ominaistilojen avulla: C(t) = Ω e Ht O(0)e Ht O(0) Ω = n Ω e Ht O(0)e Ht E n E n O(0) Ω = n e (E n E 0 )t E n O(0) Ω 2 = n e E nt a n, kun E 0 = 0 Toisaalta hilalla periodiset reunaehdot: C( t) = Ω O(0)O( t) Ω = a n e E nt,
joten 20 C(T t) = C( t) = a n e E nt C(t) = n a n e E n(t t) Yhdistämällä tulokset saadaan koko hilan yli pätevä tulos: C(t) = n a n ( e E n t + e E n(t t) ), 0 t T C(t) simulaatiosta sovittamalla yllä oleva kehitelmä voidaan ratkoa a n ja E n Helpoissa tapauksissa O(t) kytkeytyy vahvasti vakuumiin ja matalimman tason eksponentiaalinen muoto näkyy helposti suurella t:n arvoilla vieressä tulos Thomas DeGrandin paperista [1]
Rajankäynti jatkumoon, Skaalaus ja asymptoottinen skaalaus 21 Jatkumoraja saavutetaan kun a 0 ja V = a 4 N 4 Järkevä rajakäyttäytyminen: Fyysiset, mitattavat observaabelit vakioita lähestyttäessä rajaa Paljaat parametrit g, kvarkkien massat vaativat säätöä QCD:n kriittinen piste on g c = 0 joten pitää varmistaa että g 0 kun a 0 Simulaatio tuottaa dimensiottmia lukuja hila-vakio a tai skaala Λ L voidaan määrätä sovittamalla yksi kokeellinen tulos simulaation ennusteeseen Λ L Staattisen potentiaalin ratkaisusta [2]: Λ L = 1 a ( β0 g 2) β 1 2β 2 0 exp { 1 2β 0 g 2 } [1 + O(g 2 ) ] Tämän avulla mikä tahansa massa on m = c m Λ L { } Toisaalta renormalisaatioyhtälö a a β(g) g m(a, g) = O(a 2 m 2 ) antaa antaa massojen m 1, m 2 suhteelle m 1 = c [ ] 1 1 + O(a 2 m 2 ) m 2 c 2
Toteutus CUDA-arkkitehtuurilla 22
Mikä CUDA? 23 Tulee sanoista Compute Unified Device Architecture NVIDIA Inc:n kehittämä ohjelmisto- ja mikroprosessoriarkkitehtuuri rinnakkaislaskentaan grafiikkasuorittimilla Moderni Grafiikkasuoritin sisältää hyvin monia suhteellisen yksinkertaisia ytimiä Laskenta nk. SIMD -periaatteella ( Same Instruction Multiple Data ) Erikoistumisesta hyötyjä: Vähemmän välimuisteja Enemmän transistoreja laskentaan Käskykanta yksinkertaisempi Mahdollistaa suurien datamäärien käytön (nykyään jo yli 100 Gigatavua/s) Rinnakkaistuvissa ongelmissa nopeutus luokkaa 10x-500x Haittoja: Kaikki ongelmat eivät rinnakkaistu Datan siirto CPU:n ja GPU:n välillä verkkaista (PCI-Express x16 v2: 8Gb/s, v3: 16Gb/s) Joidenkin asioiden rinnakkaistaminen edelleen vaivalloista
CUDAn toiminta 24
TCLFirstSim Hila QCD simulaattorirunko 25
Tavoitteena helposti kehitettävä simulaattorirunko Toisaalta vaatimuksena tehokkuus Haasteita: Ohjelmointiympäristön kankeus abstraktioon Helppokäyttöisyys vs. tehokkuus Tällä hetkellä simulaattorirungon toimii korkealla tasolla seuraavasti: Käyttäjäkoodi käännetään rungon kanssa omaksi simulaattorikseen Rungon alustus: varaa muistista tilaa käyttäjän määrittelemille hila-kentille ja tuloksille jne. Hilan alustus Hilan päivitys ja ajoittainen välitulosten lasku: Jokaisen hilapisteen kaikki kentät päivitetään kerralla Käyttäjäkoodi voi lukea vierekkäisten hilapisteiden kenttiä ja tallentaa oman pisteensä kentän Tulosten laskenta vain joka n:n päivityksen välein, jolloin vältetään autokorrelaatio Lopputulokset kirjoitetaan levylle U µ (x) 26
Lopputuloksen hyviä ominaisuuksia: 27 Runko tukee hyvinkin erilaisia simulaatiovaatimuksia esim. hilan dimensio, kentät yms. vapaasti valittavissa Tarpeeksi helppokäyttöinen (kenttien luku ja kirjoittaminen yksinkertaista ja runko toteuttaa paljon apufunktioita) Käyttäjäkoodi CUDA-C:tä mahdollistaa mikro-optimointia Suorituskyky mukava: Suorituskyky omalla GPU:lla n. 34x verrattuna CPU:un 16 4 -hilalla 10000 päivitystä: n.5-6 min vs 3tuntia Tuloslaskujen kanssa n. 20min vs 11 tuntia Ja huonoja: Lisäominaisuuksien lisääminen itse runkoon vaivalloista C:n esiprosessori on kehno, mutta sitä tarvitaan paljon simulaattorin parametrisaatiossa Suorituskykyä jätetty pöydälle ainakin n. 20% helppokäyttöisyyden takia Tärkeitä ominaisuuksia tekemättä Muistiluku vanhemmilla arkkitehtuureilla hidastaa simulaattoria
Tuloksia ja pohdintaa 28 Rungon sovelluksena yksinkertainen lämpökylpy-simulaatio quenched -approksimaatiossa Testiajoja 16 4 kokoisella hilalla Mitattiin staattinen potentiaali ja sen avulla String tension eli säikeen jännitys betan arvolla β = 6.1 Saatu String tension : a 2 σ = 0.141887 Tunnetusta tuloksesta σ = 440MeV: Hilan koko oli n. (2.7fm) 4 a = 1.6893 10 16 m = 0.16893fm.
Static Quark-Antiquark potential Quenched Approximation - no Tadpole Improvement 29 2 1.5 a * V(r / a) 1 0.5 Beta = 6.1 Fit, sigma = 0.141887 0 0 5 10 r / a
Yhteenveto 30 Hila-QCD:n linkkivariaabeli Gluonivaikutukset suljettuina ketjuina Massakentät avoimina Hila QCD statistisena systeeminä Lämpökylpy-algoritmi kätevä pelkälle SU(N) mittakenttäteorialle Fermionit Grassmann-muuttujia Pseudofermionimenetelmä Hybridi Monte Carlo metodi Yhteys jatkumofysiikkaan Skaalaus ennen asymptoottista skaalausta Fyysiset variaabelit vakioita, paljaat muuttuvia Soveltuvuus rinnakkaislaskentaan CUDA toteutus
Kysymyksiä? 31 Figure 1: Bissey et. al gluonikenttäjakauma baryonissa [3]
References 32 [1] Thomas DeGrand Lattice QCD and the CKM matrix, [http://arxiv.org/abs/hep-ph/0008234arxiv:hep-ph/0008234v1] [2] Jan Smit Introduction to Quantum Fields on a Lattice:a robust mate, Cambridge University Press 2002, The Edinburgh Building, Cambridge CB2 2RU, United Kingdom, Cambridge Lecture Notes in Physics [3] F. Bissey and F-G. Cao and A. Kitson and B. G. Lasscock and D. B. Leinweber and A. I. Signal and A. G. Williams and J. M. Zanotti Gluon field distribution in baryons, 2005 [http://arxiv.org/abs/hep-lat/0501004arxiv:hep-lat/0501004v1] [4] Heinz J. Rothe Lattice Gauge Theories: An Introduction, World Scientific Publishing Company 2005, Hackendsack, N.J. [5] István Montvay and Gernot Münster Quantum Fields on a Lattice, Cambridge University Press 1994, The Edinburgh Building, Cambridge CB2 2RU, United Kingdom, Cambridge Monographs on Mathematical Physics