DOKTORI ÉRTEKEZÉS Hoffmanné Szalay Zsófia Dinamikus NMR sektumok szimulációjának elmélete és gyakolata csatolt sinendszeekben Témavezető: Rohonczy János egyetemi docens ELTE Kémiai Doktoi Iskola Doktoi iskola vezetője: Inzelt Gyögy Elméleti és fizikai kémia, anyagszekezetkutatás doktoi ogam Pogamvezető: Suján Péte Eötvös Loánd Tudományegyetem Temészettudományi Ka Budaest, 010.
Köszönetnyilvánítás Szeetnék köszönetet mondani témavezetőmnek, Rohonczy Jánosnak, a lelkes támogatásét és a engeteg segítségét, amit PhD munkám soán adott. Külön köszönöm, hogy felhívta a dolgozatban tágyalt témáa a figyelmemet. Emellett szeetném köszönetemet kifejezni mindenkinek, akik PhD munkámat jó tanáccsal, kédéseikkel vagy édeklődésükkel segítették. 3
Tatalomjegyzék Jelölések... 7 1. fejezet Bevezetés... 11. fejezet A szimulációs módszeek iodalmi háttee... 15.1. Monte Calo módsze... 16.1.1. A legismetebb Monte Calo szimulációk... 16.1.. A kinetikus Monte Calo módsze... 17.. A GPGPU alaú ogamozás... 18..1. A CUDA alajai... 18... Néhány élda a GPGPU alkalmazásáa... 1 3. fejezet Dinamikus NMR sektoszkóia... 3 3.1. A dinamikus NMR jelenség... 4 3.. A dinamikus NMR jelenség ételmezése... 5 3..1. Az egymagos vektomodell... 5 3... A dinamikus NMR jelenség ételmezése csatolatlan sineke... 6 3.3. NMR sektumok szimulációjának gyakolata... 8 3.3.1. Statikus NMR sektumok szimulációja... 8 3.3.. Dinamikus NMR sektumok szimulációja... 31 4. fejezet Elméleti eedmények... 35 4.1. Alafogalmak... 36 4.1.1. A sinhalmaz... 36 4.1.. Az egyedi sűűségmátix... 38 4.. A cseefolyamatok kinetikai leíása... 39 4.3. A fid szimulációja... 41 4.3.1. Pecesszió (oagálás)... 41 4.3.. Cseefolyamatok... 4 4.3.3. Detektálás... 43 4.3.4. A sektum diekt szimulációja... 44 4.4. Lehetséges egyszeűsítések... 46 4.4.1. Szimuláció a Hilbet-tében... 46 4.4.. Tanszfomált sűűségmátix... 48
Tatalomjegyzék 4.4.3. Blokkdiagonalizáció... 48 4.4.4. A Hilbet- és Liouville tébeli leíás ekvivalenciája... 49 4.5. Az átlag- és az egyedi sűűségmátix szimulációjának összevetése... 5 4.5.1. Mátixok méete... 5 4.5.. Egy kétmagos kölcsönös cseefolyamat... 53 4.6. A vektomodell és a dinamikus folyamatok... 57 4.6.1. Csatolt sinendszeek a vektomodellben... 57 4.6.. A oulációkól... 61 5. fejezet Gyakolati megvalósítás: PoMoCS... 65 5.1. A PoMoCS ogam szekezete... 66 5.1.1. A számolás algoitmusa... 66 5.1.. Megosztás több ocesszoon... 68 5.. PoMoCS-CUDA... 69 5..1. Nagy sűűségmátixok... 70 5... Kis sűűségmátixok... 7 5.3. Teszteedmények... 75 5.3.1. Tesztelési módsze... 75 5.3.. Futási időt meghatáozó aaméteek... 76 5.3.3. CPU és GPU összehasonlítása... 78 6. fejezet Alkalmazási éldák... 81 6.1. Egy nagy sinendsze... 8 6.. Egy eősen csatolt sinendsze... 84 6.3. Csatolt sinendsze kölcsönös cseével... 85 6.4. Xantfoszfát ligandum... 86 Összefoglalás... 89 Abstact... 91 Függelék... 93 F.1 A teszteléshez használt sinendszeek adatai... 94 F. A teszt futásidők.... 95 F.3 A teszt sektumok... 97 Iodalomjegyzék... 99 A dolgozat alajául szolgáló ublikációk... 100 Iodalmi hivatkozások... 100
Jelölések J.1 Általános i h P k B R m n komlex egység. Planck-állandó. Boltzmann-állandó. egyetemes gázállandó. konfomeek száma. sinhalmaz méete. n sinhalmaz szozatfüggvényeinek száma, N a endszeben lévő magok száma, N nm. M t ω n. n az n magból álló sinendsze egykvantum-koheenciáinak száma. a detektálás kezdete óta eltelt (globális) idő. ecesszálási köfekvencia. μ, μ a magok indexe. a μ-edik mag kémiai eltolódásának megfelelő fekvencia (Hz-ben). J ' a μ-edik és μ -edik magok közötti csatolási állandó (Hz-ben). H fid t ill. t Hamilton-oeáto mátixa. FID egy időszelet, illetve egy sinhalmaz fidje a t időontban, mint komlex szám. F t a szimulált fid a t időontban. Y a szimulált sektum étéke ω fekvenciánál. k ε a jelek látszólagos elaxáció sebessége, a látszólagos elaxációs állandó T ecioka. egyenletes eloszlással geneált véletlen szám. J. Indexek a, b, c, d a Hilbet-té bázisfüggvényeinek indexei. Lehetséges étékei 1 n. j, k a Hilbet-tében a Hamilton-oeáto sajátfüggvényeinek indexei. Lehetséges étékei 1 n. 7
Jelölések e, f a Liouville-té bázisfüggvényeinek indexei. Lehetséges étékei 1 M. Hieindexként e a, b és f c, d. a Liouville-tébeli sajátfüggvények indexe. Lehetséges étékei 1 M. Hieindexként k, j. g, h a konfomeek indexe. Lehetséges étékei 1 m. l s J.3 Kinetika h A ill. h a totálsinkvantumszám szeinti alteek és blokkok indexe. Lehetséges étékei 0 m a Hilbet- és 1 m a Liouville-tében. az időszeletek és cseeidőontok indexe. Az -edik időszelet az 1-edik cseével kezdődik és az -edik cseével é véget. scanek indexe. A a molekula lehetséges konfomeei, illetve azok koncentációja. k gh a g h A A cseefolyamat sebességi együtthatója. K h d h az az h A konfome elatív egyensúlyi koncentációja. h A konfome bomlási együtthatója. gh az g A konfome bomlása esetén a h A konfome keletkezésének valószínűsége. t az -edik csee időontja. Δ t az utolsó csee óta eltelt idő, azaz Δ 1 t t t. 1 Δ t az -edik időszelet hossza, azaz Δt t t. h ill. h T Δ H gh ill. Δ S gh az az -edik időszeletben jelen lévő konfome indexe. hőméséklet. g h A A cseefolyamat aktiválási entaliája és entóiája. J.4 Hilbet-té H a Hamilton-oeáto a Hilbet-tében az -edik időszeletben. a h, az k k a Hilbet-té szozatfüggvényei (αα α, βα α,, ββ β). h A konfome, illetve -edik időszelet Hamilton-oeátoának k-adik sajátfüggvénye a Hilbet-tében. 8
Jelölések t ill. t ill. t a sűűségmátix, illetve ennek (a,b) eleme a Hilbet-tében a φ ab ab függvényeken kifejtve. a sűűségmátix, illetve annak elemei az -edik csee időontjában, azaz t ill. öviden. ab t ill. t a sűűségmátix, illetve annak elemei az -edik időszelet, k u, ak kj ill. U ill. l konfomeének sajátfüggvényeinek bázisán. a Hilbet-tébeli Hamilton-oeáto k-adik sajátétéke, az ezekből U a l feléített diagonális mátix, illetve ennek az l indexű altéhez tatozó blokkja. k függvény a -hoz tatozó lineákombinációs együtthatója, azaz, az ezekből feléített unité mátix, illetve ennek l- k a a, kj A ill. l edik altéhez tatozó blokkja. A a -edik időszeletben jelen lévő konfome k j Y kj átmenetének amlitúdója, az ezekből feléített mátix, illetve ennek l-edik altéhez tatozó blokkja. átmenet intenzitása, azaz k j a kj. I ab a kiválasztási szabályt kódoló mátix elemei. A mátixelem étéke 1, ha a a b megengedett, egyébként 0. J.5 Liouville-té L a Hamilton-oeátonak megfeleltethető mátix a Liouville-tében. P Δ t a sűűségmátixot Δ t idővel oagáló oeáto. e a a b h, az t ill. t e szozatfüggvények által meghatáozott koheencia. h A konfome ill. -edik időszelethaz tatozó oeáto sajátfüggvényei a Liouville-tében. a sűűségmátix vektoa a Liouville-tében a t időontban illetve annak e-edik eleme. e ill. a sűűségmátix vektoa, illetve annak elemei az -edik csee időontjában, azaz t, illetve öviden. e t 9
Jelölések t ill. q ill. c ill. e ill. t a sűűségmátix vektoa, illetve annak -edik eleme az -edik időszelet Hamilton-oeátoának sajátfüggvényeinek bázisán. az -edik időszelet konfomeének -edik kaakteisztikus fekvenciája, illetve az ezekből feléített diagonális mátix. Q az -edik időszelet konfomeének -edik sajátfüggvénye által adott jel amlitúdója, illetve az ezekből feléített somátix. C az -edik időszelet konfomeének lineákombinációs együtthatói a Liouville-tében, illetve az ezekből feléített mátix. I ill. e a gejesztő oeátonak megfelelő sovekto a e koheenciák bázisán, illetve ennek e-edik eleme. J.6 CUDA d x, b x, g d y y s t ill. n f i x, i y i m Y, ill. Y R, Y I a CUDA szálblokkok dimenziója. egy blokk indexe a giden belül. egy szál indexe a CUDA blokkon belül. a CUDA gid méete (blokkokban). a giden, illetve egy blokk által egyszee számolt scanek száma a szál által számolt mátixelem indexei a mátixban. a szál által számolt mátix indexe. a megosztott memóiában lefoglalt mátix, illetve annak valós és X kézetes észe. a kinetikai aaméteeket tatalmazó mátix. ft ξ, tem az átmeneti eedmények táolásáa használt mátix a globális memóiában. a végeedmény táolásáa használt mátix a globális memóiában. 10
1. fejezet Bevezetés
1. fejezet A gyakolati NMR sektoszkóiában gyakan találkozunk dinamikus magcseefolyamatokkal [5 11]. Ilyen éldául savas otonok cseéje vizes (vagy savas) oldatban, vagy a klasszikus vonalkiszélesedési és koaleszcencia jelenség. A vonalkiszélesedés szimulációja lehetőséget ad a kédéses cseefolyamat kvantitatív vizsgálatáa is. Ezt a módszet az NMR sektoszkóia és a kémia számos teületén alkalmazzák, így a komlexek stabilitásának és izomeizációjának vizsgálatáa, vagy fehéjék dinamikájának tanulmányozásáa. Az egyes témákól és magáól a dinamikus NMR jelenségől is számos áttekintő könyv és cikk jelent meg az NMR sektoszkóia kezdetétől egészen najainkig [1 18]. A dinamikus NMR sektumok szimulációja (kémiai eltolódások és csatolási állandók alaján) 10-15 magnál nagyobb endszeeke má csak seciális esetekben (l. molekulaszimmetiát figyelembe vevő egyszeűsítésekkel [19]) lehetséges. A obléma alavetően a szimuláció memóiaigénye, ezét a sektumszimuláló ogamok fejlesztésének fő iánya a sűűségmátix effektív méetének csökkentésée iányul (l. tiviálisan nulla elemek elhagyása, szimmetia kihasználása) [0, 1]. PhD munkám soán a dinamikus NMR sektumok egy kinetikus Monte Calo szimuláción alauló számolásának elméletét dolgoztam ki, amelyben a sinendsze megközelítése alavetően elté a hagyományos módszeekétől. Ez a megközelítés a cseefolyamatok félig fenomenologikus - félig kvantummechanikai ételmezése helyett a endsze statisztikus viselkedését modellezi. Az elmélet matematikai leíása mellett a dolgozat bemutatja az NMR sektoszkóiában eltejedt vektomodell egy olyan kibővített ételmezését, ami a csatolt endszeek cseefolyamatait is leíja. A kidolgozott elmélet alaján szimulációs ogamot fejlesztettem (PoMoCS: Poagatos & Monte Calo fo DNMR Sectum Simulation), amelynek előnye, hogy a szimuláció koábban teljesíthetetlenül nagy memóiaigénye különösebb elhanyagolások bevezetése nélkül is elfogadható métékűe csökken. A szimuláció sebességének növelésée a ogamozástechnikai egyszeűsítések mellett a moden hadveek adta lehetőségeket is kihasználtam, így a ogam a többmagos ocesszook vagy a több géből álló hálózatok előnyeit is ki tudja használni. A hagyományosnak mondható aalellizálás mellett a legmodenebb áhuzamosítási technikát GPGPU videokátyák (Geneal Puose comuting on Gahics Pocessing Unit) jelentik []. A ogam legfontosabb és legtöbb géidőt igénylő eljáását a CUDA nyelvének (Comute Unified Device Achitectue) 1
Bevezetés seciális igényeinek megfelelően újaítam és sikeesen beogamoztam. A kész ogamokat szélesköű teszteknek vetettem alá hiotetikus endszeeken és valós éldákon. Az elméleti újításokat, a megít ogam elméleti hátteét és alkalmazását koábban négy [1 4] cikkben közöltük, ezeket foglalja össze ez a dolgozat. A. fejezet áttekinti a szimulációban használt Monte Calo módsze, valamint a CUDA nyelvű ogamozás iodalmi hátteét és bemutatja ezen módszeek a dolgozat szemontjából fontos alajait. A 3. fejezet a dinamikus NMR sektoszkóia iodalomból ismet elméletét foglalja össze, kitekintést nyújtva a sektumszimuláció teületée. A 4. fejezet PhD munkám elméleti kutatási eedményeit foglalja össze: bemutatja a matematikai fomalizmust és ételmezi az eedményeket vektomodell kibővítése segítségével. Az 5. fejezetben bemutatása keül az elmélet alaján megít ogam (PoMoCS), illetve ennek videokátyáa imlementált változata (PoMoCS-CUDA). Végül a 6. fejezetben néhány valós endsze dinamikus NMR sektumainak szimulációjával mutatom be a ogam teljesítőkéességét. 13
. fejezet A szimulációs módszeek iodalmi háttee
. fejezet.1. Monte Calo módsze.1.1. A legismetebb Monte Calo szimulációk A Monte Calo szimulációk alatt olyan számolásokat étünk, amelyek egy endsze átlagos tulajdonságát a endsze néhány, véletlenszeűen választott tagjának viselkedésével íják le [3 8]. A szimuláció soán mindig szeeet kanak a véletlen számok. Ezek segítségével keül kiválasztása a makoszkoikus sokaság néhány tagja (ezt nevezik mintának). A minta elemeie meghatáozzák a vizsgált mennyiség aktuális étékét (l. belső enegia, entóia, feszültség stb.) és ezekből az aktuális étékekből számolható a makoszkoikus átlag, a szimuláció eedménye. A geneált véletlen számok eloszlása, a minta kiválasztása, a mennyiség kiszámolása és a végeedmény meghatáozása algoitmusonként változó, emiatt ez a módszet széles köben használható nagy szabadsági fokú endszeek szimulációjáa. A kémiában tiikus alkalmazási teületük endezetlen endszeek szimulációja [9 33]. A kémiai alkalmazásokban legeltejedtebb az úgynevezett Metoolis Monte Calo (MMC) [34], illetve az ennek mintájáa megalkotott evez Monte Calo (RMC) módsze. A Metoolis Monte Calo módsze legfontosabb mennyisége valamely U enegiajellegű otenciálfüggvény (l. belső enegia, szabadentalia, szabadenegia, a fizikai modelltől függően). A sokaság egy tagja 1,ex ΔU / RT min valószínűséggel keül bele a mintába, ahol ΔU a vizsgált konfiguáció és a minta utolsó elemének otenciálkülönbsége. Ez a kiválasztási szabály biztosítja a minta Boltzmann-statisztika szeinti eloszlását. Ee a mintáa ezután kiszámolják a vizsgált fizikai mennyiséget (l. sűűséget, felületi feszültséget, a geometiai aaméteeket) és átlagolják a mintahalmazon. Ez a módsze önmagában, kíséleti adatok nélkül közelíti a vizsgált fizikai mennyiségeket, amelyet ezután kíséleti eedménnyel (l. NMR sektum) összevetve ételmeznek. Ilyen módszeel vizsgálták éldául a különböző atomok eloszlását zeolitokban és más téhálós anyagokban [35 37]. Használják bioolimeek (fehéjék, DNS) szekezetének feldeítésée [38 41], adszoció tanulmányozásáa [4 45], változó szekezetű molekulák dinamikájának vizsgálatáa [46, 47] és folyadékkistályok NMR sektoszkóiás szekezetvizsgálatában [48 50] egyaánt. A evez Monte Calo annyiban té el a Metoolis Monte Calo módszetől, hogy a minta elemeinek kiválasztását nem enegiajellegű otenciálfüggvény szabályozza. A sektoszkóiában éldául a kiválasztás a sokaság egy tagjának számított sektuma és a kíséleti sektum közötti eltéésen alaul. Manaság az RMC standad mééskiétékelő mód- 16
A szimulációs módszeek iodalmi háttee szeé vált, gyakan használják diffakciós méések kiétékelésée [51 6], makomolekulák NMR-es szekezetmeghatáozásáa [63 67] és emellett sektumfeldolgozása ít algoitmusok alaját is kéezi [68 71]..1.. A kinetikus Monte Calo módsze A Metoolis Monte Calo szimulációkban mindig egy egyensúlyi endsze valamely jellemző aaméteét számolják ki. Ezek a szimulációk nem alkalmasak időbeli változások modellezésée. A Monte Calo szimuláció tágabb ételemben mindazon számolásokat jelentheti, ahol a véletlen számok szeeet kanak. Ezeknek egy csootja, a kinetikus Monte Calo módszeek (KMC), időbeli folyamatok modellezésée alkalmas. A KMC alavetően összetett endszeek koncentációviszonyainak statisztikus alaon töténő becslésée vagy modellezésée használt módsze [7]. Deteminisztikus módszeek ee a céla a változásokat leíó diffeenciálegyenlet-endszet numeikusan oldják meg, így meghatáozva a endsze összetételét adott időontokban. Ezzel szemben a kinetikus Monte Calo egy megfelelő eloszlással geneált véletlen szám segítségével hatáozza meg a következő változás (eakció) időontját egy-egy seciesz esetében [73]. A végeedmény ebben az esetben is a endsze összetételének meghatáozása. A KMC lényegesen különbözik az MMC és RMC szimulációktól abban, hogy nincs exlicit kiválasztási szabálya. Az egyes eakciósook megfelelő súlyozását, azaz megfelelő számú előfodulását, előállításuk menete biztosítja: a nagyobb valószínűségű eakcióutak többszö keülnek a mintába, mint a kevésbé valószínűek. A KMC elmélete és matematikai alajai köülbelül negyvenéves múlta tekintenek vissza, és azóta igen széles alkalmazási teületei vannak [74 78]. A bonyolult eakciómechanizmusok feltáásán túl diffúziós és elaxációs folyamatok lefolyását is modellezik ezzel a módszeel. Az NMR sektoszkóia teületén alkalmazták éldául DOSY sektumok [79 8] illetve elaxációs modellek kiétékelésénél [83, 84]. A dolgozatban bemutatása keülő modell és az ee éülő ogam a kémiai cseefolyamatokat modellezi kinetikus Monte Calo módszeel. Lényeges különbség azonban a fent említettektől, hogy DNMR esetén a szimulált endsze makoszkoikus egyensúlyban van, tehát nem az egyes komonensek koncentációviszonyait vagy valamely időbeli változását akajuk vizsgálni. Ebből a szemontból ennek a szimulációnak az MMC módszeel okon módon egy, az egyensúlyi endszee jellemző mennyiség becslése a szimuláció célja. 17
. fejezet.. A GPGPU alaú ogamozás..1. A CUDA alajai Az utóbbi években a számítógées szimulációk tényeése egye fokozódik, köszönhetően az egye gyosabb ocesszook megjelenésének. A többmagos ocesszook megjelenésével lehetővé vált a számolási feladatok áhuzamosítása egyetlen PC-n belül is. Emellett megjelent a GPGPU (Geneal Puose comuting on Gahics Pocessing Unit), amelyen a ogamok a gafikus kátyák adottságaia támaszkodva többszáz vagy többeze szálon végzik a számításokat [85]. Ezekhez az általános GPGPU kées kátyákhoz a gyátók fejlesztői könyezetet és nyelvi támogatást is adnak. Ilyen technológiával endelkeznek az NVidia CUDA -kées kátyái [], az AMD FieSteam ocesszoai [86] és az Ale Mac bizonyos veziói (Snow Leoad ) [87]. A GPGPU ogamozása minden esetben a C nyelv megfelelő ublikus bővítményével lehetséges. 008-ban a GPGPU gyátók létehoztak egy közös ogamnyelvet (OenCL ), amely segítségével egységes nyelvi könyezetben lehet a kenelfüggvényeket kódolni [88]. A GPGPU technológia lényege, hogy a áhuzamos ogamszálak (aká többeze is lehet belőlük) különböző adatokon ugyanazt a műveletsot nagyon hatékonyan tudják elvégezni [89, 90]. Ezen tulajdonsága miatt ez a technológia kimondottan alkalmas mátix- és vektoműveletek végzésée, valamint olyan szimulációs feladatok megoldásáa, amelyekben egy műveletsot több, egymástól független aamételistával kell kiszámolni. Az iodalomban fellelhető éldák azt mutatják, hogy az ilyen számítások a GPGPU technológiával aká 50-00-szo gyosabbak lehetnek, mint hagyományos CPU-n []. A videokátyákat elsősoban gafikai feladatok megoldásáa találták ki, de a GPGPU megjelenésével a temészettudományokon belül számos teületen hasznosítják ezek előnyeit [91 93]. Páhuzamosítható feladatok gyakan előfodulnak molekuladinamikai és Monte Calo szimulációk soán [94 99]. Ítak GPGPU ogamokat éldául kételektonintegálok számításáa [100, 101], elektonszekezet számolásáa [10 104], eakciókinetikai oblémák megoldásáa [105 107] és bioinfomatikai feladatok megoldásáa [108 110]. A CUDA (Comute Unified Device Achitectue) a C ogamnyelv kitejesztése, amelynek segítségével GPGPU kées NVidia videokátyák ogamozhatók. A hagyományos ogamozási technikáktól elsősoban egyedi áhuzamosítási lehetőségében és többszintű memóiakezelésében különbözik. 18
A szimulációs módszeek iodalmi háttee..1.1. Pogamszálak A CUDA alaelve öviden úgy fogalmazható meg, hogy azonos műveletek, egyszee, különböző adatokkal. Az időigényes számításokat a kátyán sok, aká többeze ogamszálon lehet végezni. A többszálúsítás akko a leghatékonyabb, ha ezek a szálak ugyanazt a műveletet vagy műveletsot végzik különböző adatokkal, amely adatok a kátya saját memóiájában keülnek táolása. A GPU a CPU-val együttműködik, a kétiányú adatfogalom biztosítja a jó és hatékony ogamozhatóságot [90, 111]. A ogamszálakat a CUDA-ban (legfeljebb háomdimenziós) blokkokba szevezik. A blokkok legfeljebb 51 szálat tatalmaznak. A gyakolatban a blokkok szálai nem teljesen egyszee, hanem úgynevezett wa-okba endezve hajtják vége az utasításokat. A blokkok méetét ezét úgy célszeű megválasztani, hogy az a wa méetének többszööse legyen. A CUDA 1.3 vezióig a wa méete 3 szál, az ideális blokkméet edig 16 16 illetve 3 16 [111]. A szálakat tatalmazó egységes dimenziójú blokkokat a CUDA gidbe szevezi, így az egyszee indítható szálak száma többeze lehet. Az azonos giden lévő különböző blokkok szálainak végehajtási soendje esetlegesnek tekintendő, ezek nem tudnak egymással kommunikálni sem. Ez a szekezet lehetővé teszi, hogy a végehajtás soán videokátyától függően a blokkok tetszőleges soendben akáhány magon végehajthatók legyenek [111]. A szálakat a blokkon belül, illetve a blokkokat a giden belül a CUDA automatikusan indexeli, így minden szál könnyen és egyételműen azonosítható. A gid, illetve a blokkok dimenzióját a továbbiakban g, illetve blokkon belüli ozícióját edig x, d x, y jelöli. d y, a blokk giden belüli ozícióját b, a szálak Egy a kenelen végehajtandó eljáás meghívása soán deklaálni kell a gid és a blokkok dimenzióit, a áhuzamosan futó szálak száma ezen méetek szozata lesz: g d x d y. Ezek a szálak mindenkéen ugyanazt a számolási feladatot végzik el. Nem hatékony különböző feladatokat egy híváson belül a szálak között felosztani, mivel ebben az esetben a szálak a két feladatot egymás után hajtják vége, és nem egyszee. Például, ha egy szálanként változó adat szeinti elágazás van a ogamkódban, akko előszö az igaz ágat hajtják vége azok a szálak, amelyeknek azt kell, majd ezután a hamis ágat a többi. Emiatt éldául nem édemes két tömb összeszozásánál a nulla elemeket kiválogatni még akko sem, ha ezek az adatok többségét kiteszik. A hagyományos ogamnyelveken megszokott egyszeűsítő elágazásoknak (l. az említett nulla elemek szűése) akko van 19
. fejezet ételme a CUDA-ban, ha az elágazási feltétel egy wa minden száláa egyfoma eedményű. A szálak kétszees stuktuálásának (gid és blokk) a memóiakezelésben (ld...1.. fejezet) és a szálak szinkonizálásban van szeee. A gid különböző blokkokban lévő szálai a kenelen belülől nem szinkonizálhatók. Ezzel szemben az egy blokkban lévő a szálak szinkonizálhatók egymással (synctheads() utasítás). A szinkonizálásnál figyelni kell aa, hogy az elágazások, illetve ciklusok belsejében kiadott synctheads() utasítás a blokk minden száláa vonatkozik. A ogamkódot a ocesszook addig hajtják vége az egyes szálakon amíg egy ilyen utasításhoz ének, de nem ellenőzik, hogy a kédéses utasítás ugyanaz-e. Ha éldául egy elágazáson belül csak az egyik ágban van benne egy szinkonizálási léés, akko azok a szálak, amelyek a másik ágat hajtják vége, előe fognak szaladni a végehajtásban. Általában tehát synctheads() utasítást csak olyan helye szabad tenni a ogamkódban, amit a blokk minden szála egyfomán hajt vége...1.. Memóiakezelés A CUDA szálkezelésének megfelelően különböző szintű memóiateületeket definiál az egyes szálak, blokkok és a teljes gid szintjén. A szálak egyedi változóinak fenntatott helyek a 3 bites egiszteek. Ezek eléése gyos és a szálak a hozzáféés soán nem ütközhetnek egymással. A egiszteek száma kolátozott, blokkonként legfeljebb 819 (CUDA 1.1-ig), illetve 16384 (CUDA 1.-től). Emellett a szálaknak lokális memóiateülete is van, ennek méete 16 kbyte. A egiszteek és a lokális memóia között a fodító osztja el a szálak saját változóit. Egy szálblokknak fenntatott memóiateület a megosztott (shaed) memóia. Ez a memóia gyosan eléhető és a blokk minden egyes szála olvashatja és íhatja. Élettatama megegyezik a kenelhívás hosszával. A megosztott memóiateületen keesztül bonyolítható adatfogalom, illetve adatmegosztás egy blokk különböző szálai között. A megosztott memóia méete, a ma megszokott méetekhez kéest kicsi, néhány kbyte nagyságú [111]. Az eddigi memóiateületeket kizáólag a kenel ogam éheti el, a host (azaz a CPU-n futó ogam) nem. A gid minden szála, valamint a host is eléi a globális (global) memóiateületet. Ehhez a memóiához való hozzáféés lassabb, mint a megosztotthoz, ezét olyan adatokat, amelyeke a eljáás soán többszö szükség van, általában édemes a megosztott memóiába másolni. Ez a memóiateület használható változók közvetítésée a host és a kenel között, valamint a kenel életénél hosszabb ideig szükséges vagy a kisebb memóiateületeken el nem féő adat táolásáa. 0
A szimulációs módszeek iodalmi háttee A CUDA nyelvű ogamokban a többszintű memóiakezelés miatt a memóiateületek otimális felhasználása és az íási-olvasási műveletek megfelelő koodinálása legalább olyan fontos, mint maga a ogamkód. Egy-egy eljáás lényegesen felgyosítható azzal, ha a globális memóiából való olvasási és íási műveleteket a minimuma szoítjuk vissza és elkeüljük az olyan helyzeteket, amiko több szál ugyanahhoz az adathoz szeetne hozzáféni (bank conflict). A megosztott memóiateülethez való hozzáféés otimálása is elsősoban a bank conflict megelőzését jelenti, azonban seciális olvasási műveletek miatt éldául konfliktusmentes az is, ha egy blokk minden szálának ugyanaz az adat kell.... Néhány élda a GPGPU alkalmazásáa...1. Egyszeű műveletek A CUDA különösen hatékony mátix- és vektoműveletek végzésée. Ez annak köszönhető, hogy az egy blokkon belüli ogamszálak többé-kevésbé szinkonizáltak, ha ugyanazokat a műveleteket kell elvégezniük. Ennek kihasználása az egyszeű mátix- és vektoműveletekben a leglátványosabb. Első éldaként tekintsük egy mátix másolását. Ez a feladat általában a memóiateületek közötti adatmozgatás fomájában jelentkezik, éldául az adatok betöltése a globális memóiából a megosztottba. A legegyszeűbb esetben a bemásolandó ξ mátix dimenziója megegyezik a szálblokk dimenziójával, ami d x d y. Ekko az Y eedménymátix x, y indexű elemét, a szálblokk x, y indexű szála fogja betölteni és egy léésben összesen d x d y elemet másolnak át a szálak. A szálblokk méeténél nagyobb mátixok bemásolásánál minden egyes szála több elem másolása jut. Ekko a másolást blokkonként édemes elvégezni, azaz a x, y indexű szál a a d, b d indexű elemeket tölti be, ahol a és b futóindexek. x x y y Akko is lehet blokkonként másolni, ha a bemásolandó mátix méete nem többszööse a szálblokk méetének, csak az indexelési algoitmus bonyolultabb. Például egy vekto másolása esetén a szálblokkban minden egyes szálnak új indexet kell adni, éldául x, y helyű szál lineáis indexe x d x y lehet. A másolás végén a blokk szálait minden esetben szinkonizálni kell [111]. A másoláshoz hasonlóan lehet gyosan elemenkénti műveleteket végezni mátixokkal vagy vektookkal (l. összeadás, skaláal szozás). Valamivel bonyolultabb műveletet jelent egy tömbben lévő számok összegének meghatáozása. Az egyszálas megoldás 1
. fejezet ekko a soozatos összegzés. Több szálon ez a művelet úgy gyosítható, hogy a szálak egy léésben mindig két elemet adnak össze, majd a következő léésben az előtte kaott eedmények közül kettőt és így tovább. Így minden léésben feleződik az összeadandó tagok száma és n léés után n daab elem összegét kajuk meg. Ebben az esetben minden egyes összeadási léés után szinkonizálni kell a blokk szálait.... Nagy mátixok szozása A mátixok szozása annyiban különbözik az egyszeű mátixműveletektől, hogy egyetlen elem kiszámításához az eedeti mátixok több elemét kell ismeni és az eedeti mátixok elemei az eedménymátix több elemét is befolyásolják. Olyan mátixok esetén, ahol a mátix méete kisebb, mint a CUDA szálblokk dimenziója (illetve a mátixok befének a megosztott memóiába) a szozáshoz a kiindulási mátixokat (A és B) és az eedményt (C) a megosztott memóiában édemes táolni. A szozat kiszámításánál minden egyes szál a C mátix áeső elemét számolja ki, azaz a x, y indexű szál C x y -t: C x y d a1 A xd B dy, (1) ahol d az A mátix oszloainak száma (azaz B soainak száma). Az a szeinti összegzés a ogamkódban egyetlen ciklusként jelenik meg, de nincs szükség az eedménymátix elemein végigfutó másik két ciklusa. Ebben az esetben a szálblokk dimenziójának az eedménymátix méeteivel kell megegyeznie. A nagy mátixok szozási algoitmusát a kis mátixokéa lehet feléíteni. Ebben az esetben a teljes gid ugyanazt az eedménymátixot számolja, és minden egyes szálblokka a C mátix egy kisebb blokkjának kiszámolása jut C. Ezen blokkok dimenziója megegyezik a szálblokk dimenziójával és minden egyes szál ennek ontosan egy elemét számolja ki. A gid egyes blokkjai a sub C sub mátix kiszámítását blokkonkénti ciklusban végzik, ahol az A és B mátixok egy-egy blokkjának szozatát számolják ki egy léésben, és ezalatt csak ezek a blokkok vannak a megosztott memóiába másolva. Minden egyes iteáció két léésből áll: az A és B mátixblokkok bemásolásából és ezek összeszozásából. Mindkét léés után szinkonizálni kell a szálakat majd az iteációs ciklus végén a blokk szálai az eedményül kaott C sub mátixot a globális memóiába másolják.
3. fejezet Dinamikus NMR sektoszkóia
3. fejezet 3.1. A dinamikus NMR jelenség Az NMR sektumok detektálási ideje többszáz ms. Ez alatt az idő alatt a minta atomi szinten olyan változásokon mehet keesztül, amelyek a detektált fidet és a sektumot befolyásolják (l. elaxációs folyamatok, kémiai cseefolyamat, diffúzió). Nagy általánosságban ezeket a jelenségeket tekintjük dinamikus jelenségeknek az NMR sektoszkóiában. A szűkebb ételemben vett dinamikus NMR sektoszkóia vizsgálatai olyan kémiai cseefolyamatoka kolátozódnak, amelyek időállandója az NMR időskáláa esik. A cseefolyamat lehet valódi egyensúlyi eakció két különböző molekula között (intemolekuláis csee), vagy lehet egy molekula átendeződése vagy konfomációs mozgása is (intamolekuláis csee). Ez a kémiai különbség a eakció ételmezése szemontjából édektelen. Ennél sokkal fontosabb különbség, hogy a folyamat két oldalán álló sinendszeek egymással ekvivalensek (kölcsönös csee) vagy nem (nem kölcsönös csee). A cseefolyamatok a hőméséklet (eakciósebesség) függvényében jellegzetes NMRjelalakváltozást okozhatnak: alacsony hőmésékleten (a két jel fekvenciakülönbségénél és k -nál lényegesen lassabb eakciónál) az összes foma jelei jól láthatók, magas hőmésékleten (a fekvenciakülönbségnél gyosabb eakciónál) a jelek átlaga jelenik meg. A megjelenő jelek mindkét szélső tatományban élesek, a köztes tatományban szélesek [15]. A legszélesebb jeleket a koaleszcencia-hőmésékleten taasztaljuk. Ilyenko a sektum átmenetet kéez az egy és a két csúcsból álló sektum jelei között. Az 1. ábán látható a dimetil-acetamid 1 H NMR sektuma négy különböző hőmésékleten. Ebben a molekulában az amidkötés köüli fogás szobahőmésékleten gátolt, magasabb hőmésékleten azonban a fogás szabaddá válik, így a két N-metil csoot megkülönböztethetetlen lesz. Ennek megfelelően 30 K hőmésékleten (és az alatt) a sektumban két éles jel van, amelyek a hőméséklet emelésével kiszélesednek. Tovább emelve a hőmésékletet a cseefolyamat gyosul, a jelek összeolvadnak (370 K), majd ez a jel kiélesedik (40 K). Amiko dinamikus NMR sektumok szimulációjáól beszélünk, akko az ilyen kinetikai folyamatoknak a sektumok jeleie gyakoolt hatását íjuk le. Több hőmésékleten vagy többfé- 3, 0, 8 T=40 K T=370 K T=350 K T=30 K 1. Ába Az N,N-dimetil-acetamid /m 1 H NMR sektuma négy különböző hőmésékleten (50 MHz készülék, d 6 -DMSO). 4
Dinamikus NMR sektoszkóia le téeőnél felvéve a sektumot a szimuláció segítségével meghatáozhatók az éintett cseefolyamat aktiválási aaméteei is. A kaott adatok megbízhatósága nagymétékben függ a sektumok minőségétől és a kiétékelés módjától is. A legegyszeűbb összefüggés szeint, két szingulett jelet éintő egyetlen cseefolyamat (éldául a dimetil-acetamid amidkötés köüli otációja) koaleszcencia állaotában a k c sebességi együtthatót a következő összefüggés adja meg: ahol Δ a két jel fekvenciájának különbsége [11]. k c, () Az. kélet legnagyobb hibája, hogy csak abban az esetben használható, ha mindkét jel szingulett, továbbá meg tudjuk állaítani a két elkülönülő jel eltolódását. A módsze további hibája, hogy a koaleszcencia hőmésékletének meghatáozása is ontatlan, mivel a jel legszélesebb állaotának könyékén nagyon kicsi az eltéés két sektum között. Többféle mágneses tében, vagy különböző magáoka meghatáozva a koaleszcenciahőmésékleteket, megkahatók a cseefolyamat aktiválási aaméteei, de ezen adatok ontossága az említettek miatt nem elfogadható. A ontosabb eedmények édekében mindenkéen szükségessé válik a teljes sektumsoozat szimulációja. Általában a aaméteek ontossága növelhető több cseélő magá vagy nagyobb sinendszeek szimulációjával. Ez utóbbinak előnye az egymagos szimulációkkal szemben, hogy a temészetes jelszélesedés hatásai jobban kiszűhetők, mivel ezek máské hatnak a jelalaka, mint a cseefolyamat [1]. 3.. A dinamikus NMR jelenség ételmezése 3..1. Az egymagos vektomodell Eős mágneses tében az 1 sinű magoknak két megkülönböztethető sinállaota van, ezeket α és β állaotoknak nevezzük. A két állaot enegiaszintje közötti különbség tiikusan MHz nagyságendbe esik. A vektomodellben egy izolált mag sinállaotait vektookkal szimbolizáljuk, amelyek hossza II 1 hogy z iányú vetületük és mágneses tében úgy állnak be, I z m m 1. Az I oeáto komonensei egymással nem kommutálnak, ezét a vektook másik két komonense meghatáozhatatlan, ezek az xy sík bámely iányába állhatnak, így az adott sinkvantumszámhoz tatozó vektook egy fogáskú felszínén helyezkednek el. Az α és β állaotú vektook az enegiakülönbségüknek 5
3. fejezet megfelelő fekvenciával ecesszálnak a kú tengelye köül. A vektook eedője, a makoszkoikus mágnesezettség vekto (M) egyensúlyban z iányú a két kú eltéő oulációja miatt. A méést indító 90 -os ulzust követően az M vekto az xy síkba keül, ez adja a detektálható jelet. A ecesszió és a elaxációs folyamatok következtében az egyetlen kú vektoai által adott jel (fid) exonenciálisan csökkenő amlitúdójú szinuszgöbe [15]. Többmagos sinendsze esetén a vektomodell nem ételmezhető ilyen egyszeűen. Gyengén csatolt sinendszeeke az egymagos sinendsze modellje magonként alkalmazható. Így a vizsgált magtól különböző magokkal való csatolást a ecessziós fekvenciába éíthetjük, mivel a gyenge csatolás definíciója J azt jelenti, hogy az egyes magok átmenetei csak elsőendben függnek a többi mag sinállaotától. A detektált jel ebben az esetben az egyes magkönyezetek által adott szinuszgöbék összege lesz. A vektomodell eedeti fomájában nem évényes eősen csatolt sinendszeeke, mivel ezeknél az egyes magok ecessziója definíció szeint nem választható el egymástól. 3... A dinamikus NMR jelenség ételmezése csatolatlan sineke A dinamikus NMR jelenség leíásáa nagyon egyszeű modell ismet, amennyiben a jelenség egyetlen izolált sinhez kacsolódik [15]. Ebben az esetben a detektált jelet (fidet) a 3..1. fejezetben ismetetett vektomodell makoszkoikus mágnesezettség vektoa adja. Ez a vekto a detektálás ideje alatt a külső mágneses té iányáa meőleges xy síkban foog, fekvenciáját a mag kémiai könyezete hatáozza meg. A továbbiakban tekintsünk egy olyan magot, amely kétféle könyezetben lehet, ezeket jelöljük 1 A -gyel és A -vel. A mag kétféle könyezetéhez tatozó két fekvenciája 1 legyen és. A kétféle könyezet közötti átmenetet egy cseefolyamat biztosítja, (a) FT (b) FT (c) FT (d) FT 0,0 0, 0,4 0,6 t/s 0,0 /m. Ába A dinamikus jelenség ételmezése egymagos sinendszeben. (a c) egy-egy mag fidje és sektuma (d) száz ilyen fid, illetve sektum átlaga. 6
Dinamikus NMR sektoszkóia amelynek sebességi együtthatói a két iányba k 1 ill. k 1. A méés soán a endsze makoszkoikus egyensúlyban van. A sebességi együtthatók alaján meghatáozható a két állaot egyensúlyi elatív koncentációja ( K 1 és K ): K k 1 1 illetve k1 k1 K k 1. (3) k1 k1 A detektálás soán a vizsgált mag K 1, illetve K valószínűséggel van az két konfomáció egyikében. Ezen valószínűségek ismeetében egy szeudo véletlen szám segítségével meghatáozható az adott sinhalmaz konfomációja a detektálás kezdetén (a éldában 1 A lesz). A mágnesezettség vekto így a fid t A cseefolyamat egy idő után közbeszól, és a 1 fekvenciával kezd köözni: 1 ex i t. (4) 1 t -gyel jelölt időontban illanatszeűen megváltoztatja a mag kémiai könyezetét és így ebben az időontban megváltozik a ecessziós fekvencia is ( lesz). Így detektált jel a ahol fid 1 a vekto fázisát adja meg a 1 t ex i t t 1 1 t t időontoka:, (5) 1 t időontban: 1 1 1 Az 5. egyenlet egészen a következő csee időontjáig ex i t. (6) t évényes, ahol ugyanúgy fekvenciaváltás töténik, mint az első cseénél, azaz a t időont után a detektált jelet a összefüggés adja, ahol fid 1 t ex i t t (7) 1 i t t 1 Általánosan tehát az. cseét követően a detektált jel: fid 1, ahol a étéke aitásától függ. ex. (8) 1, t i t t ex, (9) Egy ilyen módon szimulált fid látható a.a ábán. Ezt diszkét Fouietanszfomálva megkajuk a mag sektumát. Ez a sektum általában nagyon zajos, habá má sejteni lehet a jel alakját. A cseék bekövetkezését az eedeti leíás szeint úgy lehet meghatáozni, hogy megfelelően választott csee, ha ez a szám kisebb, mint ha nagy, akko sűűn. A Δ t időközönként egy ε véletlen számot geneálunk, és akko töténik k 1 Δt. Ha k 1 kicsi, a cseék itkán következnek be, míg Δ t időközöknek elég sűűn kell lenniük a cseesebességhez ké- 7
3. fejezet est, különben tozítják az eedményt. Az első konfome véletlenszeű megválasztása és a cseék véletlenszeű időontjai miatt különböző magok különböző fidet és más-más sektumot eedményeznek (.b c ába). A modellben néhány száz mag sektumát összeadva az egyes magok sektumának zaja kiátlagolódik (.d ába). Az egyféle fekvenciával való ecesszálás hossza az egyes magoknál más és más, de ezen időintevallumok átlaghossza a döntési kitéiumon keesztül függ a sebességi együtthatóktól is. Lassú cseefolyamat esetén az egyes fekvenciák külön évényesülnek, így mindkét jelet detektáljuk. A sebességi együtthatók növelésével a különböző fekvenciájú észletek összekeveednek. Tovább növelve a cseék gyakoiságát, má csak a két jel átlaga figyelhető meg (3.a ába), ami egyetlen jelet eedményez [15]. Több, azonos sebességi együtthatóval számolt fidet összeadva látható, hogy a lassú cseénél a fid két különböző szinuszgöbe szueozíciója, míg gyos cseénél egyetlen lecsengő szinuszgöbe (3.b ába). A köztes sebességnél fidek összhangja hama megszűnik és ezét az összegük gyosan lecseng, így a sektumban kaott jel széles. A véletlen számok szeee valamint a véletlenszeűen választott fidek összegzése miatt ez a modell egy Monte Calo szimulációs módsze alajának tekinthető. A dinamikus jelenség itt bemutatott ételmezése a makoszkoikus mágnesezettség vekto fekvenciaváltásán alaul, emiatt csak csatolatlan sineke és olyan gyengén csatolt sinendszeekben évényes, ahol a cseeatneek között nincs skaláis csatolás. 3.3. NMR sektumok szimulációjának gyakolata (a) (b) FT 0,0 0,5 t/s /m,5 0,5 k = 10000 s -1 k = 1000 s -1 k = 100 s -1 k = 10000 s -1 k = 1000 s -1 k = 100 s -1 3. Ába A sebességi együttható és a scanszám hatása a fid és a sektum alakjáa. (a) egyetlen mag szimulált fidje és sektuma, (b) 100 mag átlagaként kaott jel és sektumok. 3.3.1. Statikus NMR sektumok szimulációja 3.3.1.1. Hamilton-oeáto mátixának feléítése A dinamikus NMR sektumok számolása a endsze kölcsönhatási oeátoainak feléítésée és ezek sajátétékoblémájának megoldásáa éül. A figyelembe vett köl- 8
Dinamikus NMR sektoszkóia csönhatások közül a legösszetettebb a sinek kölcsönhatása, azaz a kémiai eltolódás és a csatolási állandók ezonanciafekvenciáa gyakoolt hatása. Ezen kölcsönhatások leíása a dinamikus és a statikus (azaz kémiai cseefolyamatoktól mentes) endszeekben azonos. Legyen n a sinhalmaz méete, μ ill. μ a sinendszeben lévő magokat indexe, a μ mag kémiai eltolódásának megfelelő fekvencia (Hz-ben), J ' a μ és a μ mag közötti csatolási állandó. Ekko az oldatfázisú NMR statikus kölcsönhatásait leíó Hamilton-oeáto fekvencia egységben a következő alakba íható [11]: ahol n 1 n n ' 1 ' 1 Hˆ Iˆ J Iˆ Iˆ Iˆ Iˆ Iˆ Iˆ, (10) z Î z a μ mag sinoeátoának z komonense, Î és z z ' Î edig a μ mag létető oeátoai. Ezen oeátook a következőkéen hatnak egy 1 sinű mag esetén: valamint 1 z I ˆ és I ˆ z 1, (11) ˆ I 0 és Î, (1) illetve Î és ˆ I 0. (13) A numeikus szimulációkban általánosan eltejedt otonomált bázist a szozatfüggvények alkotják (továbbiakban a ), amelyek a sinendszeben lévő magok lehetséges sinfüggvényeinek szozatai az összes lehetséges vaiációban. Ebben az esetben a mag μ indexét má nem szokás kitenni, azt a függvények soendje egyételműen meghatáozza. Ilyen szozatfüggvényből n daab 1 sinű mag esetén n daab van. A szozatfüggvényekben az egyes magok oeátoai csak az adott mag sinfüggvényée hatnak. A 11 13. egyenletek alaján a szozatbázison a Hamiltonoeáto mátixának elemei a következők: ahol H e D ' ab ab n 1 m n n a a ab J ' 1 ' 1 D ' 1 ab n n J ' 1 ' 1 F ', (14) étéke 1 illetve 1, ha az a-adik bázisfüggvényben a μ-edik és a μ -edik sinfüggvény aalel ill. antiaalel állású, a m az Î z oeáto a bázisfüggvényhez tatozó sajátétéke és ab F ' étéke 1, ha az a-adik és a b-edik bázisfüggvények totálsinkvan- 9
3. fejezet tumszáma azonos és ontosan az μ és a μ magok sinfüggvényében különböznek, egyébként nulla [11]. A 14. egyenletben az első záójelben szeelő tag a mátix diagonális, míg a második annak offdiagonális elemeit tatalmazza. Látható, hogy a Hamilton-oeáto mátixa valós és szimmetikus. A mátix diagonalizálásával megkajuk a endsze sajátállaotait és k a hozzájuk tatozó enegiákat. A sajátállaotok felíhatók a szozatfüggvények lineáis kombinációjaként: k uaka, (15) a ahol az u ak együtthatók valósak és a belőlük feléített U mátix unité. A sinendsze átmeneteinek fekvenciáját az enegiaszintek különbsége adja meg. Az egyes fekvenciákhoz tatozó jelek intenzitásának számolásához be kell vezetni a teljes sinendsze gejesztő oeátoát Î : Iˆ n 1 k Iˆ. (16) A jelek intenzitása a gejesztő oeáto és azon két sajátállaot szozatából számolható, amelyek közötti koheencia a jelet adja: Y kl ˆ k I l uakubl ab, (17) a, b ahol I 1, ha a a b átmenet megengedett, és nulla egyébként [11]. ab 3.3.1.. Blokkosítás totálsinkvantumszám szeint A 14. egyenlet alaján a Hamilton-oeáto mátixának csak azon offdiagonális elemei lehetnek nullától különbözőek, ahol a a és a b bázisfüggvények totálsinkvantumszáma azonos (mivel az ab F ' H ab étéke csak így lehet 1). Emiatt a H mátix totálsinkvantumszám szeint blokkosítható. A totálsinkvantumszám étéke n daab 1 sinű mag esetén n 1 különböző étéket vehet fel, így a Hilbet-té I tot szeint n 1 invaiáns alteée bomlik. A mátix blokkdiagonális alakja miatt a Hamilton-oeáto k sajátfüggvényei is az egyes alteekben lesznek. A H mátix blokkjait, illetve az egyes alteeket a továbbiakban totálsinkvantumszáma l 0... n indexeli, ahol az l indexű altében lévő függvények n l. 30
Dinamikus NMR sektoszkóia A Hilbet-té l indexű alteének dimenziója n. Az alté dimenziója az l n l esetben lesz a legnagyobb, a mátixblokk méete ekko lényegesen kisebb, mint a teljes mátixé, így a szimulációban jelentős mennyiségű memóiateület megsóolható [13]. A blokkdiagonális alakban a legnagyobb blokk méete azonban ugyanúgy exonenciálisan n nő, mint a teljes mátixméet, csak kisebb alaal. 3.3.. Dinamikus NMR sektumok szimulációja 3.3..1. Az átlag-sűűségmátix módsze Az átlag-sűűségmátix módszeben a mozgásegyenlet a Liouville-von Neumann egyenleten alaul: d i H,. (18) dt ahol a sinendsze átlag-sűűségmátixa, t az idő, H edig a endsze Hamilton oeátoa. Ez utóbbit a 14. egyenlet alaján lehet feléíteni a sinendsze összes magjának figyelembe vételével, beleétve a cseeatneekben lévő sineket is. A 18. egyenletet a a bázisállaotok teében (Hilbet-tében) ítuk fel, hasonlóan a statikus NMR sektumok szimulációjához. A kommutáto kezelése ebben a tében nehézkes, ezét első léésként a 18. egyenletet az egykvantumátmenetek által kifeszített tébe tanszfomálják (ami az átmenetek teének a szimulációban szeeet játszó M dimenziós altee, M n és a továbbiakban Liouville-tének nevezzük). A tanszfomáció nyomán az átlag-sűűségmátix ( ) vektoá alakul : e ab. (19) A Hamilton-oeáto szeeét átvevő oeáto mátixát L jelöli és elemeit a következő összefüggés definiálja [113]: L ef H H, (0) ac bd ahol e és f Liouville-tébeli indexek az (a,b) ill. (c,d) Hilbet-tébeli indexáok megfelelői. Ekko a Hamilton-oeátoal vett kommutáto egy mátixszozássá egyszeűsödik: H L és a 18. egyenlet alakja ebben a tében a következő: db ca,, (1) d il. () dt 31
3. fejezet A. egyenlet a sinek egymással való kölcsönhatásait íja le. A dinamikus effektusok (elaxáció, cseefolyamatok) figyelembe vételéhez további tagokkal kell kiegészíteni az egyenletet. A cseefolyamatok leíásához definiálni kell minden cseefolyamat tanszfomációs mátixát ( h, h kivételesen a cseefolyamat indexe), amely a sinendsze Hilbet-tébeli bázisfüggvényeit emutálja annak megfelelően, ahogy a cseefolyamat a magokat felcseéli. Ezen bázistanszfomáció hatásáa a mátix új alakot ölt és a mozgásegyenletben az átlag-sűűségmátix ezen megváltozása szeeel: d dt 1 m k h h h h T. (3) ahol a k h a h-adik cseefolyamat sebességi együtthatóját, m a sinendszeben definiált cseefolyamatok számát, h T edig a h tanszonáltját (és egyben invezét) jelöli. A cseefolyamatokat a Liouville-tében leíó Kubo-Sack-féle [114, 115] mátixot ( X ) a 3. egyenletben definiált kifejezés tanszfomációjával kajuk, így: m h1 h h X ef k h ac bd ac bd, (4) ahol e és f Liouville-tébeli indexek az (a,b) ill. (c,d) Hilbet-tébeli indexáok megfelelői. A elaxációt egzaktul a Redfield-féle oeáto íja le [116], amely a sinendsze bámely két függvénye közötti elaxációt megengedi. Ehelyett a következő, a Blochegyenletekből számaztatott egyszeűsített egyenletet is lehet használni [1]: d eq, (5) dt T T 1 amely a Redfield-féle oeáto diagonális közelítése ( T 1 ill. T a sin-ács, illetve a sinsin elaxáció időállandója). Általában ez a tag tovább egyszeűsíthető, és a elaxáció oeátoa ( R ) egy skaláá egyszeűsödik: R ef 1 1 ef k ef, (5) T1 T amelynek a sektuma gyakoolt hatása aká a szimuláció végén külön is számolható. Látható, hogy az átmenetek teében töténő szimuláció elsősoban a cseefolyamatokat leíó tag (3. egyenlet) miatt válik szükségessé. A szimulációhoz megoldandó diffeenciálegyenlet a Liouville-tében: d il R X, (7) dt 3
Dinamikus NMR sektoszkóia ahol a záójelben szeelő L, R és X valós szimmetikus mátixok, így a teljes mátix komlex és szimmetikus, tehát nem hemitikus. A mátix sajátétékei emiatt komlex számok, amelyeknek kézetes észe adja a jel fekvenciáját, valós észe edig a félétékszélességét [117]. A sektum kiszámításáa két lehetőség van: az il R X mátix sajátétékoblémájának megoldása (hasonlóan a 3.3.1.1. fejezethez) vagy a 7. egyenlet, mint diffeenciálegyenlet megoldásán keesztül. Ez utóbbi közvetlenül a sűűségmátix időbeli változását adja meg: t ex il R X t 0, (8) ahol 0 az átlag-sűűségmátix a detektálás kezdetén t 0. A detektált jel (fid) a sűűségmátix és az I oeátot eezentáló sovekto tanszonáltjának szozataként számolható ki [118]: fid t t I. (9) Az 9. egyenlet alaján az ekvidisztáns mintavételi időontokban kiszámolhatók a fid aktuális étékei, majd az így kaott időjel Fouie-tanszfomálásával megkaható a szimulált sektum. Ez a megoldás nem feltétlenül igényli a sajátétékek kiszámítását és az első megoldással azonos eedménye vezet. A H mátixhoz hasonlóan az L, R és X is blokkosítható totálsinkvantumszám szeint. Az I oeátoal való szozásban csak a sűűségmátix azon elemei éintettek, amelyek egykvantumátmenethez tatoznak. Ezen elemek kiszámításához az il R X oeáto egykvantumátmeneteke ható észét elég kiszámítani. Emellett a totálsinkvantumszám szeinti blokkokat az L mátix öökli a H-tól és X Γ-tól, így ebben az esetben az átmenetek totálsinkvantumszám-ájai szeint jönnek léte a blokkok. Az egykvantumátmeneteknél a nagyobb indexű átmenet egyételműen megszabja a másik kvantumszámát is. Ennek megfelelően ezek a blokkok a Hilbet-tébeliekhez hasonlóan indexelhetők l 1...n. Az l indexű altéből az l 1 indexűbe töténő átmenetek által alkotott alté dimenziója ekko n l n. 1 l 3.3... A dinamikus NMR sektumokat szimuláló ogamok Az első dinamikus sektumokat számoló ogamokat az 1960-as éveke fejlesztették ki [113, 119 11]. Ezek a ogamok a 3.3..1. fejezetben ismetetett elven szimulálják a sektumot. Az eedeti soozat utolsó ismet változata a DNMR5 ogam volt [1], ami 33
3. fejezet az azóta született dinamikus NMR sektumot szimuláló ogamok alaját kéezi. Ezzel a ogamcsomaggal néhány (legfeljebb öt) csatoló mag sektumát lehet kiszámolni úgy, hogy ezek között tetszőleges számú (elsőendű) cseefolyamat lehet. Az utóbbi években kifejlesztett, új szemléletű ogamcsomag a MEXICO [13 16]. Ez a ogam is a 3.3..1. észben ismetetett elven számolja ki a sektumokat, de jelentős ogamozástechnikai újításokat tatalmaz (itka mátixok hatékony táolása [0], Lanczos-iteáció [1], dinamikus memóia-allokáció), amelyeknek köszönhetően a égebbi DNMR5-nél lényegesen gyosabb és stabilabb. A MEXICO egyelőe csak kétoldali cseefolyamat leíásáa alkalmas, és jelenleg ublikált veziója csatolt sinek közötti nemkölcsönös cseét osszul szimulálja. Szintén köülbelül öt magot tatalmazó sinendszeek DNMR sektumának szimulációjáa és aaméteeinek illesztésée alkalmas a WinDNMR 7.1 is [17 130]. Ez a ogam az előzőekhez hasonló elven működik, eltejedését jelentősen segítette a könnyen használható gafikus felülete. A Buke BioSin GmbH ToSin ogamjának dinamikus NMR sektumokat számoló TEDDY modulja [131] is a cseefolyamatokkal kiegészített Liouville-von Neumann-egyenlet (7. egyenlet) kvázistacionáius megoldásán alaul. A ogam tetszés szeinti sinendszet (maximum 4 5 maggal), szeudo-sinnel jellemzett sin-csootokat [13] és ugyancsak tetszőleges számú, aká több magot is éintő cseefolyamatot tud kezelni. Az említett ogamokon kívül a legtöbb sektumfeldolgozó ogamcsomag tatalmaz dinamikus NMR sektumok szimulációjáa illetve sektumaaméteek illesztésée alkalmas eljáásokat (MNova -NMR [133], inmr [134], SinWoks [135], NUTS [136], NMRLoo [137]). Seciális, kis sinendszeekben a 7. egyenletben záójelben szeelő mátix analitikusan diagonalizálható, és ez alaján a sektumaaméteek egyszeű nemlineáis aaméteillesztéssel is megkahatók (l. 4.5..1. leítak alaján vagy Ref. [118]-ben). 34
4. fejezet Elméleti eedmények
4. fejezet 4.1. Alafogalmak 4.1.1. A sinhalmaz A szimuláció kulcsfogalma a sinhalmaz, ami olyan S 1, S,... S n atommagok endezett halmaza, amelyek a sinhalmaz elemein kívül más magokkal nem csatolnak. Dinamikus jelenség esetén a sinhalmaz többféle kémiai könyezetben fodul elő, ezeket a továbbiakban konfomeeknek nevezzük és A m 1 A, A... -mel jelöljük (m a konfomeek száma). Ez a fogalom intamolekuláis cseefolyamatokban a hagyományos ételemben vett konfomeeket jelenti (4.a ába), intemolekuláis cseefolyamatokban edig a eakcióegyenlet egyik oldalán lévő sinhalmaz kémiai könyezetét íja le (4.b ába). A konfomeek közötti átmenetek soán csak a sinhalmaz könyezetét leíó sektoszkóiai aaméteek (kémiai eltolódás, csatolási állandó) változnak meg (a cseefolyamat egy hasonló ételmezése található [138]-ben is). A 3.3..1. fejezetben az összes oeáto mátixát a teljes sinendsze bázisfüggvényein ítuk fel, az átlag-sűűségmátixon alauló szimulációkban ee van szükség. A sinendsze az összes magot tatalmazza, amely valamelyik sinhalmazban szeeel. Tehát a sinendsze nem csak a J-csatolása, hanem a cseefolyamatoka nézve is zát halmaz és általában nagyobb, mint egy sinhalmaz. A két definíció és a cseefolyamat kacsolatát a 5. ábán hasonlítjuk össze. A sinendszeben a sineket mágneses tulajdonságuk és kémiai könyezetük alaján különböztettük meg, a magok soendje a cseefolyamatok soán megváltozik. Ezt szemlélteti az 5.a ába egy kölcsönös csee esetén, ahol S 1 1 H mag az A könyezetből B-be keül, így S lesz belőle, míg az eedeti S mag eközben a B-ből az A-ba jutva S 1 lesz. A sinhalmazban ezzel szemben az egyes sineket a halmazban elfoglalt helyük definiálja. Ez az atomi soend a cseefolyamatok soán nem változik meg, a kémiai könyezet leíása edig csak a konfomeekben jelenik meg. Az 5.b ábán látható, hogy az S 1 mag mindvégig az első helyen maad, de könyezete A vagy B is lehet. Eközben az S mag is megőzi helyét, csak a könyezete vált B-ből A-ba, és vissza. A magok szemontjából a H CH 3 N C (b) RO - + H O O R CH 3 N ROH - + OH 4. Ába A konfomeek ételmezésének lehetőségei. (a) Kémiai ételemben vett konfomeek (otameek) cseéje (az 1 H sinhalmaz méete: n = 4 mag). (b) Kémiai eakciók, mint cseefolyamatok (az 1 H sinhalmaz méete: n = mag). H C O R 36