Agócs Ádám és Bozsogi Balázs Nagy hatékonyságú trigger algoritmusok Tudományos Diákköri Dolgozat Eötvös Loránd Tudományegyetem Informatikai Kar 2008
2 Az alábbi dolgozat az MTA KFKI RMKI és az ELTE Informatikai Kar Komputeralgebrai tanszék közös együttműködésében készült. Szakmai vezető: Vesztergombi György Témavezető: Fülöp Ágnes
Tartalomjegyzék 1. Bevezetés
5
2. A kísérleti részecskefizika 7 2.1. A feldolgozás folyamata . . . . . . . . . . . . . . . . . . . . . 7 2.1.1. Szimuláció . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.1.2. Detektorok építése, illetve a kisérlet fizikai megvalósítása 8 2.1.3. Kisérletek végrehajtása . . . . . . . . . . . . . . . . . . 8 2.2. Elemirészek és alapvető kölcsönhatásai . . . . . . . . . . . . . 8 3. Geant4 3.1. A fontosabb osztályok leírása . . . . . . . . . . . . . . . . 3.1.1. Main - A főprogram . . . . . . . . . . . . . . . . . 3.1.2. DetectorConstruction - A detektor fizikai felépítése 3.1.3. PrimaryGeneratorAction - Események generálása . 3.1.4. SteppingVerbose - Kiírási tulajdonságok . . . . . . 4. A fizikai probléma felvetése 4.1. A szilícium, mint detektáló anyag . . . . . . . . . 4.2. A szimuláció és az adatok feldolgozása . . . . . . 4.2.1. Generált események . . . . . . . . . . . . . 4.2.2. A Geant4 által generált adatok átalakítása 4.2.3. Részecskék helyének meghatározása . . . . 5. Mozaik trigger rendszer 5.1. A probléma felvetése . . . . . . . 5.2. A detektor felépítése . . . . . . . 5.3. Események generálása . . . . . . 5.4. Ütközés helyének meghatározása . 5.5. A pályák rekonstruálása . . . . . 3
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
13 14 14 15 17 18
. . . . .
21 21 22 22 22 24
. . . . .
27 27 27 29 30 33
4
TARTALOMJEGYZÉK
6. Pályák görbületének meghatározásas 6.1. Detektor felépítése . . . . . . . . . . 6.2. A szimuláció . . . . . . . . . . . . . . 6.3. Pálya meghatározás . . . . . . . . . . 6.4. Az egyenesek meghatározása . . . . . 6.5. Görbületi tényezők . . . . . . . . . . 6.6. Az algoritmus értékelése, vizsgálata . 7. Gyorsítási lehetőségek 7.1. Szuperszámítógép . . . . . . 7.1.1. A teszt környezet . . 7.2. Grid . . . . . . . . . . . . . 7.2.1. A teszt környezet . . 7.2.2. A program felépítése 8. Melléklet
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . .
35 35 36 36 37 38 39
. . . . .
41 41 41 41 42 42 47
1. fejezet Bevezetés
A kisérletifizika egyik legjelentősebb kutatási területe a nagy energiájú ütközések vizsgálata, melynek fontos központjai a CERN-i Magkutató Intézet illetve GSI Darmstadt. 2008 nyarán bekapcsolódtunk a KFKI RMKI Részecskefizika Főosztályán folyó CBM Collaboration kutatásába, ahol a nagy energiás proton nyalábok félvezető detektorral történő vizsgálata folyik.
A KFKI RMKI Részecskefizika Főosztály és az ELTE Komputeralgebra Tanszék közt létrejött együttműködés keretében KFKI ösztöndíjasként, 2008 júliusa és augustusában tanulmányoztuk a kísérleti részecskefizikában alkalmazott trigger algoritmus numerikus modellezését. Ezen számolás eredménye bemutatásra került a ’Physics of Compressed Baryonic Matter 12th CBM Collaboration Meeting’ (Octóber 13-18, 2008 JINR International Conference Hall, Dubna) konferencián.
A dolgozat két fő részből áll. Az első nagy fejezetben rövid áttekintést adunk ezen terület fizikájáról és arról az informatikai szoftverről, melyet a detektor építésben és az események generálásánál használtunk. A második részben bemutatjuk azokat az eljárásokat, melyekkel meghatároztuk a mérések során keletkezett részecskék detektálását és ezek pályájának meghatározását. 5
6
FEJEZET 1. BEVEZETÉS
2. fejezet A kísérleti részecskefizika 2.1.
A feldolgozás folyamata
A kísérleti részecskefizikában a kutatás folyamata a következő fontosabb lépésekből áll: • Probléma felvetése • Fizikai modell kidolgozása • Szimuláció • Detektor építése, illetve a kisérlet fizikai megvalósítása • Kisérletek végrehajtása • A kisérleti eredmények analízise • Az elméleti modell és a kisérleti eredmények együttes vizsgálata és az elméleti modell esetleges finomítása Informatikai szempontból az alábbi részfeladatatok problematikusak:
2.1.1.
Szimuláció
Ebben a fázisban lépésenként építik fel az egész rendszert, rengeteg számítással, ellenőrzéssel és ezek alapján törekednek a valós rendszer legoptimálisabb kialakítására. Az egyik legelfogadottabb numerikus modell a később bemutatásra kerülő Geant, amely alkalmas egy bonyolult részecskefizikai rendszer teljes körű szimulációjára. 7
8
2.1.2.
FEJEZET 2. A KÍSÉRLETI RÉSZECSKEFIZIKA
Detektorok építése, illetve a kisérlet fizikai megvalósítása
A detektor építésénél figyelembe kell venni a szimuláció során kapott eredményeket, az ott történő finomításokat. Mivel akár tetabájt méretű adat generálódhat a másodperc tört része alatt, ezek feldolgozásához nagyon gyors számításokra van szükségünk. Erre a célra olyan processzorokat használunk, amelyek a részecskék beütési helyeit tudják mérni és feldolgozni.
2.1.3.
Kisérletek végrehajtása
A kisérletek végrehajtása során létrejött adatok mérete elérheti a Peta nagyságrendet is, melynek a tárolása, keresése és az adatok szűrése és kiértékelése lényeges probléma.
2.2.
Elemirészek és alapvető kölcsönhatásai
A kísérleti részecskefizika a múlt században vált a fizika egyik lefontosabb kutatási területévé. Az elemirészek vizsgálata felhasználja a fizika fő diszciplínáit (klasszikus mechanika, kvantummechanika, relativitás elmélet, elektrodinamika). A kísérletileg mért ill. elméleti modellekben leírt több száz részecske rendszerezésének egyik legfontosabb modellje az un. Standard modell , mely tartalmazza az alapvető kölcsönhatásokat (erős, gyenge, elektromágneses kh.) és azon részecskéket, melyek az anyag építő kövei: a kvarkokat és ezekből felépülő több száz hadront, mezont, ill. a különböző kölcsönhatásokat közvetítő részecskéket gluonokat, fotonokat, W ill. Z-bozonokat. A leptonikus részecskékhez tartoznak az elektron, muon és tau részecskék ill. ezeknek megfelelő neutrinó párjaik. (A gravitációs kölcsönhatás nincs közvetlenül beépítve a modellbe.) [3] A kísérletifizika kutatásának egyik legfontosabb intézménye a CERN-i (European Organiztaion for Nuclear Research) Magkutató Intézet, melyet 1954-ben alapítottak, Svájcban, 20 tagállama van jelenleg. Számos jelentős kísérletet hajtottak végre (anyag-antianyag, W,Z bozonok, kvark-gluon plazma) az elmúlt 50 év során a legfontosabb kutatási területek: anyagantianyag, W,Z bozonok, kvark-gluon plazma vizsgálata. Napjainkban kezdik meg a méréseket az LHC (Large Hadron Collider) gyorsító berendezésben, mely több TeV-es energiákon fog működni. A gyorsító Franciaország és Svájc határán helyezkedik el, 6 kísérlet fut nemzetközi
2.2. ELEMIRÉSZEK ÉS ALAPVETŐ KÖLCSÖNHATÁSAI
9
együttműködésben (ALICE, ATLAS, CMS, LHCb,TOTEM, LHCf). A kísérletek során keletkezett adatokat (évente 15 Petabyte) a számítőgép grid rendszerében dolgozzák fel, melyben 33 ország számítógépes hálózata vesz részt. A gyorsító beredezés bizonyos pontjain elhelyezett detektorok teszik lehetővé a részecske ütközések következtében keletkezett részecske záporok mérését. KülönbözőA detektorok különböző típusait alkalmaznak a mérések során, mint például kaloriméterek, ionizációs detektorok, szcintillációs mérőberendezések, multiwire proprtional chamber, félvezető berendezések. A detektorok bizonyos fajtája lehetővé teszi a kialakult elemirészek pályájának meghatározását. A dolgozatban a félvezető detektorok által történő részecske nyom vizsgálatával fogunk foglalkozni.
Röviden összefoglaljuk a fizika legfontosabb kölcsönhatásait és az elemirészek legfontosabb típusait. kölcsönhatás típusa típusa amire hat
erős
gyenge
elektromágneses
gravitációs
színtöltés
íz
elektromos töltés
közvetítő részecske
gluonok
γ foton
kölcsönhatás ezen részecskék közt hat relatív erősség két up kvarkra: 10−18 m 3 ∗ 10−17 m két proton az atommagban
kvarkok, gluonok
W +, W −, Z 0 bozonok kvarkok leptonok
tömeg, energia impulzus graviton
elektomos töltések
minden minden
25 60 -
0.8 10−4 10−7
1 1 1
10−41 10−41 10−36
Kvark, antikvark kötött állapotaiból épül fel a hadronikus anyag: hadronok egyik típusa: barionok qqq vagy antibarionok qqq triplettek, számos ismert barion van, melyekből néhányat feltüntettünk a következő táblázatban.
10
FEJEZET 2. A KÍSÉRLETI RÉSZECSKEFIZIKA jel p proton p proton n neutron lambda
kvark össz. uud uud udd uds
tömeg GeV /c2 0.938 0.938 0.940 1.116
elektromos töltés 1 -1 0 0
spin 1 2 1 2 1 2 1 2
2.2. ELEMIRÉSZEK ÉS ALAPVETŐ KÖLCSÖNHATÁSAI
11
A hadronok másik típusa: mezonok qq, számos ilyen mezon van, néhány példát bemutatunk a következő táblázatban. jel + Π pion K − kaon ρ+ ró-mezon B-null mezon
kvark össz. ud su ud db
tömeg GeV /c2 0.140 0.494 0.770 5.279
elektromos töltés 1 -1 1 0
Példa az elemirészek ütközésére: Π0
pp → pp Kiterjeszthető töltött Π cserére Π−
np → pn
+
Π+
pn → np
pp → Z 0 Z 0 + hadronok
spin 0 0 1 0
12
FEJEZET 2. A KÍSÉRLETI RÉSZECSKEFIZIKA
3. fejezet Geant4 A Geantot 1993 -ban kezdték fejleszteni, amikor a svájci CERN és a Japán KEK egymástól függetlenül egy FORTRAN alapú szimulációs rendszert szerettek volna kidolgozni. A két kutatóközpont között 1994-ben született megállapodás, hogy a meglévő eredményeiket alapul véve közösen fejlesztik tovább a már meglévő szoftvereiket. Azóta az egész világot behálózó fejlesztőrészlegek dolgoznak együttműködésben a Geant fejlesztésén Japántól, az európai államokon keresztül egészen az Egyesült Államokig. A Geant4 fejlesztői már beépítették azt a nagy energiás részecskefizika modellt, amely a számunkra fontos elemirészeket (proton, pion, kaon, lambda) kölcsönhatásokat (elektromágneses, gravitációs, erős) tartalmazzák, ezért nekünk csak ezt a már megírt objektumot kell felhasználnunk a detektor megkonstruálásánál és az események generálásánál. Érdemes pár szóban megemlíteni az elvet, mellyel meghatározzák, hogy egy-egy részecskéből a szétbomlásakor milyen részecskék keletkezhetnek. A soktest probléma megoldásának egyik legismertebb módszerét, a Monte-Carlo eljárást alkamazzák a Geant programcsomagban az elemirészek dinamikájának szimulációja során. A Monte-Carlo módszert leíró első cikk a "The Monte-Carlo Method", mely 1949-ben jelent meg. Az eljárás keletkezését Neumann János, S. Ulam és N. Mettropolis, valamint G. Kant és E. Fermi nevéhez kötik (valamennyien a 40-es években Los Alamosban(USA) dolgoztak), habár az elméleti alapok korábban ismertek voltak [1]. A Geant sorozat jelenlegi verziója - a Geant4 - megtalálható és letölthető a program hivatalos oldalán, a http://geant4.web.cern.ch -n. A Geant4 már a C++ nyelve épül (a korábbi verziók FORTRAN (1-2.), illetve C (3.) alapúak voltak). A program szerkezete a C++ objektum-orientáltságának elvét követi, vagyis minden egyes része külön, önálló egységben foglal helyet. Ennek előnye, hogy az alkalmazás-fejlesztőknek futtatható szimuláció készítéséhez egyszerűen csak a Geant4 adott osztályainak különböző metódusait kell felüldefiniál13
14
FEJEZET 3. GEANT4
nia a programjában. Egy Geant4 -es szimuláció elkészítéséhez az alábbi jellemzőket kell megadnunk: • A térben előforduló anyagok, tárgyak tulajdonságai és elhelyezkedésük • A rendszerre ható terek paraméterei • A kezdeti állapotok és az egyes események generálásának mikéntje • Használandó fizikai modell Mivel számunkra az analizálás szempontjából a kimenet szerkezete is fontos, ezért ezt is az alapsémától eltérően magunknak definiáljuk.
3.1.
A fontosabb osztályok leírása
Az alábbiakban bemutatjuk az általunk használt detektor egyszerűsített változatán keresztül a fontosabb osztályokat.
3.1.1.
Main - A főprogram
A Geant4 main eljárásának legfontosabb része a G4RunManager osztály. Ez az osztály felügyeli a futás folyamatát és kezeli az esemény ciklusokat a futtatás során. A G4RunManager felelős továbbá az inicializáló folyamatok kezeléséért. , mint például a detektor, vagy a használt fizikai folyamatok leírása. Például a detektor geometriáját leíró objektum pointerének megadása és átadása a G4RunManagernek: G4VUserDetectorConstruction* detector = new DetectorConstruction; runManager->SetUserInitialization(detector); Meg kell adnunk továbbá egy osztályt, ami leírja egy esemény kezdeti állapotát (PrimaryGeneratorAction), illetve a fizikai folyamatok leírását.
3.1. A FONTOSABB OSZTÁLYOK LEÍRÁSA
3.1.2.
15
DetectorConstruction - A detektor fizikai felépítése
A detektor fizikai objektumainak megadása: A detektor geometriáját úgynevezett kötetekkel adhatjuk meg. Ezek közül a legnagyobbat "világ" -nak nevezzük, az összes többit ebbe helyezzük el. A koordináta rendszer, amelyhez új elem behelyezésénél viszonyítunk mindig a szülő kötet (0,0,0) középpontú koordináta rendszere. A kötetek alakjához téridomokat használunk úgy, hogy megadjuk a rájuk jellemző paramétereket (például téglatestnél az oldalakat, hengernél a magasságot és a sugarat, stb..). A következő lépés a logikai kötet definiálása. Itt adhatjuk meg az elem összes paraméterét, értve ezalatt az előbb említett alakot, illetve a fizikai tulajdonságait (anyag, különböző mezők, stb.) Végül az így létrehozott elemet el kell helyeznünk a térben, ezt hívjuk fizikai kötetnek. Ezek alapján egy 1m*1m*0.3mm -es szilíciumlap kódja: G4double layer_x = 0.15*mm; G4double layer_y = 50.0*cm; G4double layer_z = 50.0*cm; G4Box* SilikonLayer_box = new G4Box ("SiLayer_box",layer_x,layer_y,layer_z); SilikonLayer_log = new G4LogicalVolume(SilikonLayer_box, Silicon,"SiLayer_log",0,0,0); SilikonLayer_phys = new G4PVPlacement(0,G4ThreeVector(0*cm,0.0*cm,0.0*cm), SilikonLayer_log,"SiLayer",logicWorld,false,0); A detektorban megjelenő anyagok definiálása A kísérletben használt anyagokat a következő módokon definiálhatjuk: • egyszerű anyag G4Material* Silicon = new G4Material("Silicon", z=14., a=28.09*g/mole, density=2.33g*cm3); • molekulák a karbon:
16
FEJEZET 3. GEANT4 G4Element* C= new G4Element("Carbon", symbol="C", z=6., a=12.01*g/mole); G4Matrial* CMat = new G4Material("CMat", density = 2.25*g/cm3, nel=1); CMat->AddElement(C, 100.*perCent); a levegő: a = 14.01*g/mole; G4Element* elN = new G4Element(name="Nitrogen",symbol="N" , z= 7., a); a = 16.00*g/mole; G4Element* elO = new G4Element(name="Oxygen" ,symbol="O" , z= 8., a); density = 1.290*mg/cm3; G4Material* Air = new G4Material(name="Air ",density,ncomponents=2); Air->AddElement(elN, fractionmass=70*perCent); Air->AddElement(elO, fractionmass=30*perCent);
Terek megadása a detektorban Különböző terek megadásának módja, hogy definiáljuk a tér tulajdonságait, majd ezt hozzárendeljük egy kötethez. Egy 1m*1m*1m -es mágneses tér megadása, ahol Tx=0, Ty=0, Tz=0.5 irányú mágneses tér Teslában megadva: Mágneses tulajdonságok megadása: G4MagneticField* magField= new G4UniformMagField( G4ThreeVector(0.0, 0.0, 0.5*tesla) ); G4FieldManager* localFieldMgr=new G4FieldManager(magField); localFieldMgr->SetDetectorField(magField); localFieldMgr->CreateChordFinder(magField); Ezek hozzárendelése egy kötethez: G4double m_x = 0.5*m; G4double m_y = 0.5*m; G4double m_z = 0.5*m; G4Box* solidMag = new G4Box("Mag",m_x,m_y,m_z);
3.1. A FONTOSABB OSZTÁLYOK LEÍRÁSA
17
logicMag = new G4LogicalVolume(solidMag,Air,"Mag",0,0,0); logicMag->SetFieldManager(localFieldMgr,true); physiMag = new G4PVPlacement (0,G4ThreeVector(0.m,0.*m,0.*m),logicMag,"Magnetic",logicWorld,false,0);
3.1.3.
PrimaryGeneratorAction - Események generálása
Ebben az osztályban kell megadnunk az egyes események jellemzőit. Megtehetjük ezt úgy, hogy minden eseményben ugyanazokat az értékeket használjuk, illetve ezeket eseményenként módosíthatjuk is. Az osztály paraméterezését programrészleten keresztül mutatjuk be: belövendő részecskék száma ... G4int n_particle = 1; particleGun = new G4ParticleGun(n_particle); belövendő részecske típusa G4ParticleTable* particleTable = G4ParticleTable::GetParticleTable(); G4String particleName; particleGun->SetParticleDefinition (particleTable->FindParticle(particleName="proton")); belövendő részecske energiája particleGun->SetParticleMomentum(90.0*GeV); belövés helye particleGun->SetParticlePosition(G4ThreeVector (-1025*mm, 0*mm, 0*mm)); belövés iránya particleGun->SetParticleMomentumDirection (G4ThreeVector(1.,1.,1.)); ...
18
FEJEZET 3. GEANT4
Példa az eseményenkénti módosításra: ha eseményenként hátrébb szeretnénk tolni a kilövés helyét 0.1mm -el: void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) { i:=i-0.1; particleGun->SetParticlePosition(G4ThreeVector(0*mm, 0*mm, i*mm)); particleGun->GeneratePrimaryVertex(anEvent); }
3.1.4.
SteppingVerbose - Kiírási tulajdonságok
Egy szimuláció futtatása során általában szükségünk van arra, hogy a kiírás csak a számunkra fontos részeket tartalmazza olyan formában, amit később könnyedén fel tudunk használni. Az alapértelmezett kiírási tulajdonságokon ebben az osztályban tudunk változtatni. Például csak a pi+ részecskék ütközésének koordinátái a szilíciumlapokon: void SteppingVerbose::StepInfo() { CopyState(); if(fStep->GetPostStepPoint()->GetProcessDefinedStep() ->GetProcessName()=="Transportation") { if(fTrack->GetDefinition()->GetParticleName() != "pi+") { if(fTrack->GetVolume()->GetName()=="SiLayer") { G4cout << fTrack->GetPosition().x()/mm << " " << fTrack->GetPosition().y()/mm << " " << fTrack->GetPosition().z()/mm << " " << G4endl; } } } }
3.1. A FONTOSABB OSZTÁLYOK LEÍRÁSA
19
Geant4
Visualization
Readout
Persistency
Interfaces
Run
Event
Tracking
Digits+Hits
Processes
Track
Geometry
Graphic_Reps
Particle
Material
Intercoms
Global
3.1. ábra. A Gean4 osztályainak arhitektúrája
20
FEJEZET 3. GEANT4
4. fejezet A fizikai probléma felvetése 4.1.
A szilícium, mint detektáló anyag
Félvezető szilíciumlapok segítségével detektáljuk a részcskék pályának egyegy pontját oly módon, hogy ha a részecske keresztülhalad ezeken a lapokon, „nyomot” hagy maga után az áthaladás helyén. Miután a részecske áthalad a rendszeren, az összes szilíciumlapon érzékelt beütésből rekonstruálni tudjuk a részecske pályáját. Jelen dolgozatban 50 nanométeres csíkokra felosztott szilíciumlapokat használunk. Ez azt jelenti, hogy miközben egy részecske áthalad a lapon és kölcsönhatásba kerül a szilícium atomjaival, akkor a lapnak valamelyik 50 nanométeres csíkja fogja jelezni, hogy ott történt az áthaladás, ezáltal a részecske helyének koordinátáit maximum δε=50nm pontossággal tudjuk érzékelni. A szilíciumlapok vastagságának optimalizálásakor két fontos tényezőt vizsgáltunk: Olyan vastagnak kell lennie, hogy • a belőtt proton a szilíciumlap atomjaival kölcsönhatásba kerüljön, ezáltal ott érzékelni tudjuk • olyan rugalmatlan kölcsönhatásoknak a valószínűsége, melynek során a proton elemi részecskékre bomlik minimális legyen. A mérések során azt tapasztaltuk, hogy 300 mikron vastagságú szilíciumlapok kielégítik a fenti feltételek. A probléma megoldásának a megvalósítása előtt érdemes még áttekinteni a manapság használt szilíciumlapokat. A technika mostani állása szerint kétféle szilíciumlapot különböztetünk meg: • Létezik olyan, amely képes detektálni a részecske vagy csak az X vagy csak az Y beütési koordinátáját. Ennek a lapnak hátránya, hogy több 21
22
FEJEZET 4. A FIZIKAI PROBLÉMA FELVETÉSE beütés esetén nem kapunk pontos képet arról, hogy mely X beütés mely Y beütéshez tartozik. • Létezik olyan szilíciumlap, amely a beütés X és Y koordinátáját párban képes detektálni, ezáltal megkapjuk a egy-egy részecskéhez tartozó (X,Y) beütési koordinátákat.
4.2. 4.2.1.
A szimuláció és az adatok feldolgozása Generált események
A generálás kimenete egy egyszerű szöveges file, amelyben megadjuk eseményenként a számunkra fontos részecskéket, tulajdonságaikat és beütési helyeiket. A feldolgozás érdekében előre meghatározott formában generáltunk le az adatokat. A könnyebb megértés miatt előbb egy példát keresztül magyarázzuk el a kimenet jelentését: 1 1 2212 90.9383 0.938272 0 0 0 -1.66658 2.40037 -1025 1.30838e-05 -0.000317986 90.9333 9 -1.66661 2.40036 -1009.85 -1.66661 2.40033 -999.85 -1.66654 2.40036 -989.85 -1.68925 2.26697 990.15 -1.68943 2.26559 1000.15 -1.69002 2.26421 1010.15 -46.9568 1.17123 8990.15 -47.0391 1.17001 9000.15 -47.1213 1.16876 9010.15 0
4.2.2.
A Geant4 által generált adatok átalakítása
hit.cpp Az előzőekben ismeretetett kimenet nem megfelelően tükrözi a valós kísérletből kinyerhető adatokat, mivel a szimulációban explicit módon adott a részecske útvonala, a kísérletből pedig csak az egyes szilíciumlapokon érzékelt részecskék koordinátáját és energiáját kaphatjuk meg. Szükségünk van továbbá események összekapcsolására (un. pileup), amiben több belőtt proton egyszerre történő feldolgozását szimuláljuk. Ennek megfelelően át kell alakítanunk a kimenetet a következő formára:
4.2. A SZIMULÁCIÓ ÉS AZ ADATOK FELDOLGOZÁSA 1 1 2212 90.9383 0.938272 0,0,0 (X,Y,Z) (X,Y,Z) 9 (X,Y,Z) ...
23
az adott esemény száma[db] az eseményben keletkezett részecske sorszáma a részecske típusa (2212, vagyis proton) a részecske összenergiája[GeV] részecske tömege[GeV] Azonosan nulla a részecske keletkezési helyének X,Y,Z koordinátája[mm] az impulzus X,Y,Z koordinátája[GeV] a érzékelő szilíciumlap száma szilikonlapokon az X,Y,Z beütési koordináták[mm] ... 4.1. táblázat. A generált kimenet magyarázata
Az átalakított struktúra egy kölcsönhatás nélkül végigfutó protonra, pileup nélkül: 1 1 0 0 -2.74021 3.0564 -1049.85 1 1 0 1 -2.74034 3.05686 -999.85 1 1 0 2 -2.74002 3.05762 -949.85 1 1 0 3 -2.71455 3.05244 950.15 1 1 0 4 -2.71312 3.05203 1000.15 1 1 0 5 -2.71187 3.05155 1050.15 1 1 0 6 -104.244 3.05072 8950.15 1 1 0 7 -105.53 3.05089 9000.15 1 1 0 8 -106.815 3.05098 9050.15 9999999 A leírásban kétféle megkülönböztetett jel (token) található, az utána levő sorban pedig a hozzá tartozó adatok, sorrendben: 1 - A beütésre vonatkozó adatok
24
FEJEZET 4. A FIZIKAI PROBLÉMA FELVETÉSE 1 0 0 -2.74021 3.0564 -1049.85
Az esemény száma A részecske sorszáma detektálási sorrendben A beütést érzékelő szilikonlap száma A beütés X koordinátája[mm] A beütés Y koordinátája[mm] A beütés Z koordinátája[mm]
4.2. táblázat. A beütésekre vonatkozó adatok magyarázata 9999999 - Az adott esemény illetve az egész adathalmaz végét jelölő token
4.2.3.
Részecskék helyének meghatározása
Egy részecske helyének meghatározásához felhasználhatjuk az X,Y derékszögű koordináta rendszert, vagy egy R,φ szöggel paraméterezett síkbeli pontokat. Mivel a részecskék helyének meghatározása egy szilíciumlap síkján történik, ezért a jövőben a ezen helymeghatározásokat fogjuk használni, mellyel rögzítjük a rácsfelbontás nagyságát (δε), azaz az ennél közelebb elhelyezkedő részecskék között nem teszünk különbséget, azaz a szimuláció helymeghatározásának hibája a δε megválasztásától függ.
4.2. A SZIMULÁCIÓ ÉS AZ ADATOK FELDOLGOZÁSA
4.1. ábra. A Szilícium strip detektor
25
26
FEJEZET 4. A FIZIKAI PROBLÉMA FELVETÉSE
5. fejezet Mozaik trigger rendszer A nagy erengiás protonnyaláb targeten történő szoródásából keletkezett részecskék szilikonlapokkal történő detektálása.
5.1.
A probléma felvetése
Egy 90 GeV energiájú protonnyalábot lövünk át egy szilíciumlapokat és egy targetet tartalmazó rendszeren. A nyaláb áthaladása során a következő esetek lehetségesek: • a proton egyenesen halad át a rendszeren • a proton szóródik a szilikonlapon vagy a targeten • a proton a szilikonlapok vagy a target atommagjába ütközve új részecskékké alakul Feladatunk, hogy hatékony szelektáló algoritmust írjunk arra az esetre, amikor a belőtt proton a céltárgy egyik atomjával ütközve letér a belövési (egyenes) pályájáról.
5.2.
A detektor felépítése
Az alábbiakban leírást adunk a szimulálandó detektor felépítéséről és működésükről. A detektor részei: 27
28
FEJEZET 5. MOZAIK TRIGGER RENDSZER
5.1. ábra. A detektor
• 1: Szilícium kötegek 3 db szilícium detektor • 2: Céltárgy 1cm*1cm*1cm -es karbon tömb • 3: Mágneses mező (Tx =0,Ty =0,Tz =1) irányú mágneses mező Elsőként a céltárgyat helyezzük el a detektorunkban, a későbbiekben ezt a pontot választjuk a (X=0mm,Y=0mm,Z=0mm) viszonyítási pontnak. Céltárgyunk kiválasztásánál fontos szempont volt, hogy átlagosan minden 50. belőtt proton lépjen kölcsönhatásba a targettel. Ehhez három anyagot viszgáltunk: karbon, CO2, folyékony hidrogén. Az anyagok tulajdonságainak vizsgálatakor a következő eloszlásokat: [[kieg]] 10000 ’distr_ch2_pi-_t.dat_100’ ’distr_h_pi-_t.dat_100’ ’distr_c_pi-_t.dat_100’
Number of pion-
1000
100
10
1 0
0.5
1
1.5
2
2.5
P_T [GeV]
5.2. ábra. Pion eloszlás A szilícium kötegek elhelyezkedése X=-1m, X=1m illetve X=13m. A 3 darab szilíciumlap egymástól mért távolsága a kötegeken belül 10cm-10cm. Kísérletünkben szükséges, hogy az utolsó szilíciumkötegre ne juthassanak el a targetből származó másodlagos töltött részecskék, ezért a második és harmadik szilícium köteg közé 12m -es mágneses teret illesztünk. Ennek hatására
5.3. ESEMÉNYEK GENERÁLÁSA
29
a kisebb energiájú részecskék akkora görbületet írnak le, hogy a harmadik szilíciumköteg előtt elhagyják a rendszert. A 90 GeV -es egyenes proton pályájának utolsó szilíciumlapokon történő beütését több ezer futtatásból nyert adatból becsültük meg.
Az alábbi ábrák szemléltetik a mágneses mező működését a különböző részecskékre:
5.3. ábra. Mágneses mező hatása a nagy energiájú protonra
5.4. ábra. Mágneses mező hatása a kisebb energiájú másodlagos részecskékre
5.3.
Események generálása
A proton kilövésének helyét és irányát - a valós fizikai detektor hibáinak megfelelően eseményenként bizonyos eltéréssel szimuláljuk. Minden kilövés
30
FEJEZET 5. MOZAIK TRIGGER RENDSZER
450
2500 ’eloszlgaussy100.dat_1.1’
’eloszlgauss2y100.dat_5’
400 2000
350
300 1500 250
200 1000 150
100
500
50
0 -15
-10
-5
0
5
10
15
0 -6e-06
-4e-06
-2e-06
0
2e-06
4e-06
6e-06
5.5. ábra. 2D -s Gauss eloszlások: kilövés helye és iránya
X=-1100mm -ről történik, az hely X és Y, illetve az irány X és Y koordinátája kétdimenziós Gauss-eloszlást követnek. A Gauss-eloszlás meghatározásához felhasználtuk, hogy Ha u, v ∈ [0, 1[ egyenletes eloszlású független véletlen számok, akkor p x = 2.0 ∗ (log(1.0 − u)) ∗ cos (2.0 ∗ Π ∗ v) p y = 2.0 ∗ (log(1.0 − u)) ∗ sin (2.0 ∗ Π ∗ v) számok egy kétdimenziós Gauss eloszlás Descartes-koordinátáinak az eloszlását követik.
5.4.
Ütközés helyének meghatározása
Az első programunk bemutatja, hogy tudjuk meghatározni a belőtt proton szétesésének helyét nagyon pontos szilícium pixeldetektorok segítségével. Helymeghatározás A megoldást 3 részre bontjuk:
5.4. ÜTKÖZÉS HELYÉNEK MEGHATÁROZÁSA
31
5.6. ábra. Egy targetben szoródó esemény
• 1: csak a belőtt protont tartalmazó események Lényeges információ számunkra, hogy az eseményben keletkeztek-e új részecskék, vagy a rendszerben csak a belőtt proton lett észlelve. Erről úgy bizonyosodhatunk meg, hogy megnézzük minden egyes szilíciumlapon, hogy hány részecskét észlelt. Ha mind csak egyet, akkor elfogadjuk, hogy a rendszerben csak a belőtt proton van jelen. Ezzel a módszerrel szétválogatjuk az eseményeket két részre: csak protonos, illetve más részecskéket is tartalmazó események. • 2: corridorok illetve egyenes illesztések Az előző lépésben kapott csak protonos eseményekben megvizsgáljuk, hogy a proton pályája egy korridorba esik-e. Ha igen, akkor a proton kölcsönhatás nélkül haladt végig a rendszerben, ha nem, akkor pedig megnézzük, hogy hányadik szilíciumlapig maradt egy korridorban. • 3: helymeghatározás Végül maradnak azon eseméyek, melyekben több részecske keletkezik, ezekkel foglalkozunk részletesebben. Célunk, hogy megállapítsuk, hogy pontosan hol történt a protonnal az a kölcsönhatás, melynek során létrejöttek a további részecskék. Számunkra azon események az érdekesek, amikor a 2*3db -os szilíciumtömb között történt a kölcsönhatás, tehát az első olyan szilíciumlap, amin több ütközést mértünk ki, az a negyedik. Az összes többi számunkra nem érdekes, mert ekkor a szilíciumlap atommagjával ütközött a proton, nem a targettel. Az első három szilíciumlap által detektált pontokból fel tudjuk írni az egyenes egyenletét. Szükségünk lenne még a többi részecske egyenleteire (amiket a második három szilíciumlap mért ki). Mivel a szilí-
32
FEJEZET 5. MOZAIK TRIGGER RENDSZER ciumlapok egymástól egyenlő távolságra vannak (10-10cm), ezért elég azt megvizsgálnunk, hogy 3 kiválasztott pont y és z koordinátáinak távolsága a 4-5., illetve az 5-6. lapok között megegyezik-e (kis pontatlansággal, a lebegőpontos számítás hibái miatt). Tekintsük egy valódi esemény pontjait a 4., 5. és 6. szilíciumlapon: layer 3 3 3 3 3 4 4 4 4 4 5 5 5 5 5
X 34.9991 69.9286 -37.1896 3.3571 12.1605 35.3739 70.6618 -37.5443 3.41424 12.3083 35.7489 71.395 -37.8988 3.47097 12.4553
Y 98.4654 196.932 7.12613 -18.3243 13.5516 99.4158 198.88 7.14802 -18.5602 13.64 100.366 200.828 7.16987 -18.7965 13.728
Z 990.15 990.15 990.15 990.15 990.15 1000.15 1000.15 1000.15 1000.15 1000.15 1010.15 1010.15 1010.15 1010.15 1010.15
5.1. táblázat. A beütések koordinátái
Ha (xi , yi ), i = 1..3 a három kiválasztott pont koordinátái, akkor |(x1 − x2 ) − (x2 − x3 )| < δε és |(y1 − y2 ) − (y2 − y3 )| < δε, akkor a 3 beütés egy egyenesen van. Az algoritmust lefuttatva az összes beütésre megkapjuk a helyes egyeneseket A δε = 0.03 hibakorláttal csökkentésével elérhetjük, hogy a közel azonos pályán mozgó részecskéket pontosabban detektáljuk, de ezzel kockáztatjuk, hogy nem vesszük figyelembe azokat, amik minimálisan szóródnak valamelyik anyagon áthaladáskor. Mivel az utóbbi eseményekből lényegesen több van, ezért a finomítás nem célszerű.
5.5. A PÁLYÁK REKONSTRUÁLÁSA
33
Végső lépésben megkeressük a proton egyenesének és a keletkezett egyenesek legközelebb eső pontját, ami megadja, hogy a targetben, vagy a targeten kívül történt-e a kölcsönhatás.
5.5.
A pályák rekonstruálása
A második programunk segítségével ki szeretnénk szűrni a céltárgyban kölcsönható részecskéket strip detektorok segítségével. Mivel rendszerben vízszintes és függőleges, 50nm pontosságú strip detektorokat használunk, ezért egy részecske beütését nem (X, Y ) párban, hanem két külön X és Y strip koordinátaként kapjuk vissza. A szilícium kötegbe tettük még egy T , U strip detektort (45◦ -al elforgatott X, Y ), hogy ezeket az X, Y értékeket párosítani tudjuk. Ennek menete, hogy az összes lehetséges (X, Y ) párra kiszámoljuk a T és U értéket és ha ezeket megtaláljuk a T , U strip detektorokon, akkor azt a párt elfogadjuk. Egyenes és a mágneses térig egyenes trackek kiszűrése Mivel számunkra csak azok az események fontosak, mikor a proton a céltárgynak ütközve letér az eredeti (egyenes) pályájáról, ezért első lépésben az egyenes pályákat kell kiválogatnunk. Ehhez megvizsgáljuk az 1. és 3. szilíciumlapon mért ütközéseket. Ezek közül csak azokat a párok fogadjuk el, melyek egy egyenesre esnek bizonyos hibahatáron belül (pl: |X1 − X3 | < 1 strip). Ezekből a koordinátákból exaktul kiszámoljuk minden szilíciumra a várt beütési koordinátát, majd megvizsgáljuk, hogy megtaláljuk-e a beütést azokon hibahatáron belül (δX3 , δX5 = 5 strip; δX6 , δX8 = 45 strip). Ha a betüések jelen vannak az összes szilíciumlapon, akkor a vizsgált XZ vagy Y Z síkot elfogadjuk egyenesnek és a továbbiakban nem foglalkozunk vele. Ha a beütések csak az 5. szilíciumlapokig vannak jelen, akkor szintén elfogadjuk a síkokat (mivel minket csak a targetben történő eltérés érdekel, aminek a hatása már itt kellene, hogy látszódjon) és a továbbiakban nem foglalkozunk vele. X és Y trackek párosítása Maradtak tehát azok az X és Y beütések az első szilíciumlapon, melyek biztosan olyan protonhoz tartoznak, ami a céltárgyban letért az egyenes pályáról. Ezeket a síkokat a már említett algoritmussal párosítjuk, így megkapjuk első beütési (X, Y ) koordináta párját.
34
FEJEZET 5. MOZAIK TRIGGER RENDSZER
6. fejezet Pályák görbületének meghatározásas
6.1. ábra. pályameghatározás
6.1.
Detektor felépítése
.. kép beillesztése .. A detektor - ahogy a képen is látható - egy csonka kúp alakú, de használhatósági szempontból a kúp közepe üres, hogy a protonnal 35
36
FEJEZET 6. PÁLYÁK GÖRBÜLETÉNEK MEGHATÁROZÁSAS
érkező energia ne égesse szét a detektort. A kúp magassága 1 méter. A proton és a target ütközésekor keletkezett részecskék pályájáinak a mérésére 9 db szilícium lapot használunk, a targettől 5, 10, 15, 20, 40, 60, 80, 90, 100 cm távolságra. Ezekből a szilícium lapokból az első 4 olyan, amely egyszerre képes meghatározni az XY koordinátor szerinti értékeket. Míg az utolsó 5 párba rakott koordináta szerinti meghatározott szilícium lap.
6.2.
A szimuláció
A szimuláció megírása - az adatok megléte miatt - a pályameghatározó algoritmusból áll, amely 3 db programból áll, amely egymás utáni lefutatásakor kapjuk meg a helyes eredményt. A megoldás részleteit programonként ismertetjük.
6.3.
Pálya meghatározás
Mivel, ahogy a fenti részből is kitűnik, egy-egy mérési helyhez több érték, több pont is tartozhat, ezért a pálya meghatározás előtt meg kell határozni, hogy mely 14 esetleg 13 db beütésre próbáljuk elvégezni az algoritmust. A Beütés száma 1. beütés 2. beütés 3. beütés 4. beütés 5. beütés 6. beütés 7. beütés 8. beütés 9. beütés 10. beütés 11. beütés 12. beütés 13. beütés 14. beütés
A beütés helye Az 1. szilíciumlapka A 2. szilíciumlapka A 3. szilíciumlapka A 4. szilíciumlapka Az 5. szilíciumlapka Az 5. szilíciumlapka A 6. szilíciumlapka A 6. szilíciumlapka A 7. szilíciumlapka Az 7. szilíciumlapka A 8. szilíciumlapka A 8. szilíciumlapka A 9. szilíciumlapka A 9. szilíciumlapka
Felhasználható adatok X,Y koordinátában mért adatok X,Y koordinátában mért adatok X,Y koordinátában mért adatok X,Y koordinátában mért adatok X koordinátában mért adatok Y koordinátában mért adatok X koordinátában mért adatok Y koordinátában mért adatok X koordinátában mért adatok Y koordinátában mért adatok X koordinátában mért adatok Y koordinátában mért adatok X koordinátában mért adatok Y koordinátában mért adatok
6.1. táblázat. A megvizsgált beütések megvizsgált beütések magas száma a targettől távol lévő szilícium lapok hibájából adódik, mivel - hiába a két féle szilícium lap közötti viszonylagos kis
6.4. AZ EGYENESEK MEGHATÁROZÁSA
37
távolság - az adatok egyértelműen nem rendelhetőek egymáshoz, ezért azokat duplikálni kell és az összes lehetséges párosításban meg kell őket vizsgálni. A pontok együttes vizsgálata előtt nem tudjuk meghatározni, hogy mely pontok illeszkedhetnek legjobban a pályára és melyek nem, ezért a pontok összes variációjára meg kell vizsgálni a pálya meghatározási feltételeinket. Melyek a kövektezők: • Az első 4 (esetleg 3) elem egy egyenesre esik-e • Az utolsó 3 szilikon lapon lévő elem egy egyenesre esik-e XZ és YZ koordinátákra nézve, azaz külön a 9., 11., 13. beütés és külön a 10., 12., 14. beütés • Az XZ sík szerint az előbbi 7 (esetleg 6) pont egy egyenesre esik-e, azaz az 1., 2., 3., 4., 10., 12., 14. beütés egy egyenesre esik-e • Az első 4 (esetleg 3) pont és az (xcc, zcc) ponttal kiegészülve egy egyenesre esik-e az XZ síkban • Az utolsó 3 pont és az (xcc, zcc) ponttal kiegészülve egy egyenesre esik-e az XZ síkban, azaz a 9, 11, 13 beütések • Az YZ és XZ síkban lévő görbe görbülete egy előre meghatározott tartományban van-e • Az 5., 6. szilíciumlapocskákban mért beütések egy adott pont előre meghatározott környezetében fekszenek-e külön az XZ és külön az YZ síkban. A fenti részben látható,
6.4.
Az egyenesek meghatározása
Az egyenesek meghatározását az egyik legegyszerűbb módszerrel végeztük el. Veszünk 2 előre, a kritériumok szerint meghatározott pontot. Ekkor a két pontra illeszkedő egyenest tudunk meghatározni. A feltételekben meghatározott pontok egy előre definiált távolságra kell lenniük a meghatározott egyenestől. Azaz Ha vi = (xi , yi , zi ) és vj = (xj , yj , zj ) az előre meghatározott pontok ⇒ e=
(vj − vi ) |zj − zi |
⇒
∀vk ∈ Adott pontok halmaza : k vi + e(zk − zi ) − vk k< ²
38
FEJEZET 6. PÁLYÁK GÖRBÜLETÉNEK MEGHATÁROZÁSAS • Az első kritériumnak megfelelően, a két adott pont a 10 és a 20 cm-nél lévő beütés. • A második kritériumban a Z koordináta szerinti 80 és 90 cm-re lévő szilíciumlapokban keletkezett részecsékék a mérvadó pontok. Természetesen ebben az esetben a térbeli pontok minden egyes komponensére vizsgáljuk meg az illeszkedést, hanem csak a megfelelő esetekre - jelen esetben -, Y és Z komponensekre. • A harmadik kritériumban a második és a negyedik szilíciumlapkában mért beütéseket vesszük alapnak, vagyis a 10 és 20 cm-nél lévőket. • A negyedik kritériumban az (xcc, zcc) pont koordinátáit számoljuk ki. Mivel adott a zcc értéke (50), ezért xcc-nek a helyét szintén meghatározhatjuk a már említett egyenessel. • Az ötödik kritériumban a kapott (xcc, zcc) pont illesztjük az utolsó három szilíciumlapban mért beütésekből kapott egyenesre.
6.5.
Görbületi tényezők
Az XZ sík szerinti görbületi tényező meghatározása az egyenesek meghatározásához képest egyszerűbb és gyorsabb. Adott v2 , v4 , v9 , v11 pontok, ekkor |
x11 − x9 x4 − x2 − | < 0.0110 z11 − z9 z4 − z2
illetve Adott v2 , v4 , v10 , v12 pontok, ekkor |
y12 − y10 y4 − y2 − | < 0.0015 z12 − z10 z4 − z2
Az 5. és a 6. szilíciumlapban mért pontok meghatározása Adott v2 , v4 , v9 , v11 , v5 , v7 pontok, ekkor s=
(z9 + z11 ) − (z2 + z4 ) (x2 + x4 + x9 + x11 ) , xAB = 2 4 (x9 + x11 − (x2 − x4 ) mxAb = 2∗s
6.6. AZ ALGORITMUS ÉRTÉKELÉSE, VIZSGÁLATA
39
x11 − x9 x4 − x2 s − )∗ z11 − z9 z4 − z2 8 x11 − x9 x4 − x2 s newSixthX = xAB + mxAB ∗ (z7 − zcc) − ( − )∗ z11 − z9 z4 − z2 8
newF if thX = xAB + mxAB ∗ (z5 − zcc) − (
és |newF if thX − x5 | < ² illetve |newSixthX − x7 | < ² A képlet hasonló YZ síkban is Adott v2 , v4 , v10 , v12 , v6 , v8 pontok, ekkor (z10 + z12 ) − (z2 + z4 ) (y2 + y4 + y10 + y12 ) , yAB = 2 4 (y10 + y12 − (y2 − y4 ) myAb = 2∗s y12 − y10 y4 − y2 s newF if thY = yAB + myAB ∗ (z5 − zcc) − ( − )∗ z12 − z10 z4 − z2 8 y12 − y10 y4 − y2 s newSixthY = yAB + myAB ∗ (z7 − zcc) − ( − )∗ z12 − z10 z4 − z2 8 s=
és |newF if thY − y5 | < ² illetve |newSixthY − y7 | < ²
6.6.
Az algoritmus értékelése, vizsgálata
Az algoritmus két részre bontható. • Az adott 13 illetve 14 db beütés kiválasztására illetve, • A kiválasztott elemek kritérium szerinti vizsgálatára A második részben egyszerűen definiálható és egyszerűen megvalósított lépések miatt az algoritmus ezen szakasza konstansnak mondható. Ez a konstans szakasz a kiválasztott beütések lehetséges összes variációjára lefut, amely viszonylag nagy O(n14 ) értéket kap, amely viszonylagos nagy számokra beláthatatlan lefutási idejű eredményeket okozna. Az algoritmusunkban a helyzet egyértelműen más, mivel a korridorok megfelelő paraméterezésével elérhetjük, hogy egy-egy korridoron belüli pontok, beütések száma viszonylag alacsony maradjon, amely lehetővé teszi a futási idő korlátok közé szorítását. Igaz, ennek a módszernek a hátránya, hogy a korridorok méretének csökkenésével a korridorok száma nővekszik meg.
40
FEJEZET 6. PÁLYÁK GÖRBÜLETÉNEK MEGHATÁROZÁSAS
7. fejezet Gyorsítási lehetőségek A számítástechnikai jelen körülményei között jó pár lehetőséget kínál az algoritmusok futási idejének lecsökkentésének. A teljesség igénye nélkül • Szuperszámítógép • Grid • Az alkalmazásnak megfelelő célgép • ... Ezen lehetőségek közül az első két variációt fogjuk részletesen megvizsgálni, összehasonlítva az egy processzoros megoldással, bemutatva az esetleges javulást - vagy a kommunikációs költségek miatti romlást.
7.1.
Szuperszámítógép
A párhuzamosítás egyik leggyakrabban használt változata, amely a gépek ára miatt igen költséges.
7.1.1.
A teszt környezet
A program a processzorok közti kommunikációt az MPI programcsomagot használja, amely lehetővé teszi a futási idők mérését is.
7.2.
Grid
A Grid rendszerek alapjait az 1990-es évek elején dolgozta ki Ian Foster és csapata a CERN keretén belül. Az ötletük az volt, hogy a elektromos hálózathoz hasonlóan, ha egy-egy szervezetnek, intézménynek szüksége van plusz 41
42
FEJEZET 7. GYORSÍTÁSI LEHETŐSÉGEK
Rendszer neve Rendszer telephelye Szuperszámítógép model Szállító Teljes Memória Üzembe helyezésének éve Operációs rendszer Processzorok Maximális processzorszám Felhasznált processzorszám
ASTRAL Cranfield University HP DL140 G3 Cluster Hewlett-Packard 1712 GB 2007 RedHat Enterprise 4 Intel EM64T Xeon 51xx (Woodcrest) 3000 MHz 856 15 - hozzáférési okokból
7.1. táblázat. Hardver környezet teljesítményre - a mi esetünkbe plusz számítási kapacitásra, tárolási lehetőségre -, akkor a vele együttműködő intézmények idéglenes kisegítik. A Nagy Áteresztőképességű Számítások (HTC) feladatkörébe, azokat a feladatokat értjük, amelyekben • egy viszonylag rövid futási idejű algoritmust • az algoritmus paramétereinek megváltoztatása mellett • viszonylag nagy számban futtatjuk. A mi feladatunk megfelel a HTC kritériumainak, mivel • adott egy viszonylag egyszerű algoritmus, • melynek a bemenő paraméterei változnak • és az algoritmus futtatásának számat a korridorok finomsága adja
7.2.1.
A teszt környezet
Az algoritmus Grid rendszeres változatát a SZTAKI Párhuzamos és Elosztott Rendszerek Kutatólaboratórium által fejlesztett PGrade Portal (http://portal.pgrade.hu) nevű rendszerrel valósítottuk meg a GILDA VO-n (https://gilda.ct.infn.it).
7.2.2.
A program felépítése
. . . ide kell egy kép, amint meglesz felteszem . . . Teszteremények
Irodalomjegyzék [1] N. Metropolis, S. M. Ulam, The Monte Carlo method, J. Amer. Statist. Assoc., 1949, 44, No. 247., 335-341. [2] Walter F.J. Müller, Data Acquisition at CBM(FAIR) (IRTG Lecture Week 2007, Bergen, Norway, 11-15 April 2007) [3] Phys. Rev. D 50(3) (1994) PART I. Review of Particle Properties [4] D. H. Perkins, Intsoduction to high energy physics, Addison-Wesley Publishing Company (1987),
43
44
IRODALOMJEGYZÉK
Ábrák jegyzéke
3.1. A Gean4 osztályainak arhitektúrája . . . . . . . . . . . . . . . 19
4.1. A Szilícium strip detektor . . . . . . . . . . . . . . . . . . . . 25
5.1. A detektor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 5.2. Pion eloszlás . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 5.3. Mágneses mező hatása a nagy energiájú protonra . . . . . . . 29 5.4. Mágneses mező hatása a kisebb energiájú másodlagos részecskékre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 5.5. 2D -s Gauss eloszlások: kilövés helye és iránya . . . . . . . . . 30 5.6. Egy targetben szoródó esemény . . . . . . . . . . . . . . . . . 31
6.1. pályameghatározás . . . . . . . . . . . . . . . . . . . . . . . . 35 45
46
ÁBRÁK JEGYZÉKE
8. fejezet Melléklet
Fizika táblázatok kvarkok (spinjük: 12 ): jel u up d down c charm s strange t top b bottom
tömeg GeV /c2 0.005 0.01 1.5 0.2 170 4.7
elektromos töltés 2 3 −1 3 2 3 −1 3 2 3 −1 3
leptonok (spinjük: 12 ): jel νe elektron neutrínó e elektron νµ muon neutrínó µ muon τ tau nutrínó µτ tau
tömeg GeV /c2 < 7 ∗ 10−9 0.000511 < 0.0003 0.106 < 0.03 1.7771
köocsönhatások közvetítő részecskéi: 47
elektromos töltés 0 -1 0 -1 0 -1
48
FEJEZET 8. MELLÉKLET jel g gluon γ gamma W + W-bozon W − W-bozon Z 0 Z-null bozon
tömeg GeV /c2 0 0 80.22 80.22 91.187
elektromos töltés 0 0 1 -1 0
kölcsönhatás típusa erős kh. elektromágneses kh. gyenge kh. gyenge kh. gyenge kh.