140 likes | 285 Views
ATHENA SOFTWARE. - Tatjana Jovin -. The Athena soft ver : uobičajena softverska kontrolna razvojna platforma ATLAS detektora, napisana u C++ i Python, na osnovu Gaudi arhitekture: Simulacija događaja Trigger-ovanje događaja Rekonstrukcija događaja Fizička analiza
E N D
ATHENA SOFTWARE - Tatjana Jovin -
The Athena softver : uobičajena softverska kontrolna razvojna platforma ATLAS detektora, napisana u C++ i Python, na osnovu Gaudi arhitekture: Simulacija događaja Trigger-ovanje događaja Rekonstrukcija događaja Fizička analiza Athena softverpovezan sa modularnom strukturommodela podataka događaja – EDM – Event Data Model Distribuirani računarski alati: Upravljanje distribuiranim podacima – DDM - The Distributed Data Management Distribuirani produkcioni sistem - DPS - The Distributed Production System Ganga/pAthena razvojna platforma za disribuirane analize na GRID-u DDM je centralni link izmeđusvih komponenti Kompjuterski model ATLAS-a
Athena softversko okruženje • SVN (Subversion) - je verzija alata koja se koristi u Athena softveru za upravljanje različitim verzijama koda • Mogućnost primene starijih verzija • Klaster koji služi SVN skladištu je atlas-sw.cern.ch • 3 repozitorijuma: atlasoff, atlasusr, atlasgrp • Definisanje okruženja realizuje se uz pomoć CMT (Configuration Management Tool) • Okruženje se instalira uz pomoć nekoliko skripti • Korišćenje novog paketa zahteva samo dodatak u listu paketa • Athena je struktuirana na paketima – “Packages”
Arhitektura jednog Paketa u Athena-i Sadrži datotekurequiremenstsdefinisanu konfigurac. paketa Sadrži datoteke header (*.h) • Sadrži: • source datoteke (*.cxx) • direktorijum • component • (*.cxx) Sadrži jobOptions (*.py) Sadrži dokumentac. u vezi paketa
Koncept razvoja paketa u Athena softveru Glavne komponente Athena softvera prilikom razvoja koda: • Algorithm – poziva alate i primenjuje ih na podatke (u vidu objekata); operacije u algoritmima treba da budu svedene na minimum; obično su algoritmi i alati smešteni u odvojene direktorijume; mora da sadrži 3 metoda: initialize (), execute (), finalize () • AlgTools– slični algoritmu u tome da radi na ulaznim podacima i može da generiše izlazne podatke, ali se razlikuje u tome da može da bude izvršen nekoliko puta po događaju; npr. za definisanje rekonstruisanog elektronakoji je najbliži MC elektronima • Data objects– “kontejneri” informacija; podaci dostupni od strane algoritama organizovani su u raznim prolaznim skladištima podataka - podaci o događaju upravljani su jednim skladištem, podaci o statusu detektora, geometrija i poravnanje, u drugom, ... • Services- obezbeđuju način preuzimanja alata i podataka (u vidu objekata) za potrebe algoritama • JobOptions datoteka – python skripta (default jobOptions.py) koja se upotrebljava za specifiranje konfiguracije algoritma, specifira sve potrebne servise i njihove konfiguracije
Generisanje događaja - Nekoliko generatora na raspolaganju (Pythia, MC@NLO, Herwig, E …) Mogućnost da se uključe fizički pod-procesi (Pile-up, …) Simulacija detektora - Korišćenje GEANT4 - Opis različitih materijala detektora Digitalizacija podataka - “Hits” u “Digits” Rekonstrukcija fizičkih objekata - ESD, AOD, Backnavigation Analiza podataka - Sprovedena uz pomoć ROOT-a Produkcija događaja uz pomoć Athena softvera
Formati podatakana ATLAS-u – Event Data Model - EDM • Athena – za rekonstrukcijuRAWpodataka i produkciju i reprocesing ESD/AOD/DPD • ATLAS – proizvodiće oko 3 PB neobrađenih podataka godišnje; da bi se omogućilo fizičarima da analiziraju podatke na udaljenim lokacijama, nekoliko tipova skupova podataka, koji odgovaraju različitim fazama rekonstrukcije, su proizvedeni: • “Byte stream”podaci; ~ 200 Hz, 1.6 MB/event, trajna prezentacija podataka o događajima koji pristižu sa HLT-a • Raw Data Object Data – RDO – C++ reprezentacija byte-stream informacije • Na Tier-0 (CERN), softver za rekonstrukcijuobrađuje sirove podatke u realnom vremenui produkuje: • ESD – Event Summary Data – sadrži detaljan izlazrekonstrukcije detektora u objektnom (pool/root) formatu: Tracks, Calo Clusters, Calo Cells, objekti iz kombinovane rekonstrukcijeitd.; omogućuje brzu optimizaciju algoritama za rekonstrukciju i kalibraciju; 500 kB/event • AOD – Analysis Object Data – sažetakrekonstruisanog događaja sa (pool/root) objektima: elektroni, mioni, džetovi; sadrži dovoljno informacija za uobičajene analize; 100 kB/event • DPD – Derived Physics Data – “skimmed/thinned/slimmed” events + drugi korisni “korisnički” podaciizvedeni iz AOD-ai sistema za konstanto praćenje parametara sistema; ~ 10 kB/event; D1PD, D2PD, D3PD • TAG – metapodaci na nivou događaja, koji skupljaju opšte karakteristike događaja, omogućujubrzu selekcijuu AODi/ili ESD fajlovima i brz pristup delovima podataka o događajima; ~ 1 kB/event
Operativni model • The Tier-0 (CERN) distribuira sve rekonstruisane podatke (ESD/AOD/DPD/TAG) ka svim od 10 Tier-1 i u proseku 10% RAW podataka, tako da potpuna kopijaRAW podataka postoji • Tier-1 - distribuira njihove podatke ka > 60 Tier-2’s i re-rekonstruiše njihove RAW podatke po potrebi • Tier-2 - uglavnom za simuulacijei analize na korisničkom nivou na AOD i primarnim DPDs kako bi se proizveli sekundarni i tercijarni DerivedPhysics Data (D2/3PD) • Tier-3 – omogućen pristup GRID-u i lokalnom prostoru na diskovima; doprinosi CPU procesiranju za simulacije i analize • D1PD – proizvedeni na GRID produkcionom sistemu; sadržaj neće biti specifičan za analizu • D2PD - su u ESD/AOD/DPD formatu, preciznijii sadrže podatke za analizu • D3PD - sadrže ntuple;pogodni za grafičko predstavljanje konačnih rezultata
Stalna (‘persistent’) prezentacija ATLAS podataka, distribuirana ka svim Tier1 Proizvedeni rekonstrukcije ili iz ESD-a Tzv. Stanjivanje (‘slimming’) ESD fajlova; dobijanje fajlova koji imaju jedan C++ objekat za isti fizički objekat Dodeljeni objekti sa linkovima (point-erima) ka detaljnim informacijama u ESDobjektima U pojedinim slučajevima informacije koje su potrebne na nivou analize veoma bliske informacijama iz rekonstrukcije Produkcija Ntuple-i koji se upotrebljavaju kao input-i za analizu putem ROOT-a Uvod u fizičku analizu (Tier-2)AOD arhitektura
Uvod u fizičku analizu Oruđa za analizu algoritama nad AOD • Klase oruđa za analizu - Analysis Tools: - Kombinacije – pr. imamo kontejner elektrona i želimo sve kombinacije 2 elektrona - Kombinacije uz selekciju – interesuju nas samo dobre kombinacije – selectElectron i staviti ih u vektor ePair - Permutacije – želimo da dobijemo sve permutacije od M objekata, gde je M ≥ N; npr. želimo sve permutacije od npr. 2 džeta - Permutacije uz selekciju – želimo da dobijemo objekte koji su prošli kriterijume zadane funkcijom selekcije – selectBJet i staviti ih u vektor bPair - Sortiranje – sortiranje kontejnera u odnosu na pT, E, η, φ njihovih objekata u opadajućem nizu - Filteri – želimo npr. da izdvojimo MC Truth događaje za određeni raspad t→ Wb → jjb; želimo npr. da kreiramo sopstvenu MC truth kolekciju, koja ima samo određene filtrirane zapise i zapise raspada
Uvod u fizičku analizu Oruđa za analizu algoritama nad AOD - Oruđa algoritama - AlgTools: 1. Sortiranje – oruđe za pozivanje već opisanog oruđa za sortiranje prilikom kreiranja sopstvene kolekcije objekata myCollection - uglavnom sortPT, sortE, sortEta,sortPhi 2. Oruđe za izračunavanje rastojanja ΔR i ΔΦizmeđu dva objekta – Lorencov 4-vektor već implement. računanje ΔR 3. Oruđe koje nam daje odgovor na sledeća pitanja: poklapanje ili “match” po ΔR između rekonstruisanog objekta i MC truth objekta, koje je rastojanje između ta dva objekta ukoliko postoji poklapanje i koji je to aktuelni MC truth objekat koji je najbliži rekonstuisanom objektu 4. Klasifikacija po naelektrisanju – npr. imamo kontejner elektrona koji želimo da razdvojimo na dva kontejnera – elektrone i pozitrone
Uvod u fizičku analizu Oruđa za analizu algoritama nad AOD • Kompozitne čestice – omogućuje korisnicima da kreiraju kompozitne objekte; npr. kreiranje Z kandidata kao kompozitne čestce od 2 leptona (elektrona ili miona); možemo da pitamo za masu ili kinematičke parametre Z bozona; možemo da dodamo 2 Z bozona zajedno da kreiraju Higs kandidata kao kompozitne čestice • Navigacija konstituenata – npr. pristupanje kalo. klasterima ili ćelijama iza džeta i sabiramo ET u ćelijama; kalo. ćelije nisum AOD objekti, “back navigation” do ESD je neophodno kako bi im se pristupilo • Poseban uslužni paket – SpecialUtils – npr. želimo da pronađemo longitudinalnu komponentu impulsa neutrina W → l ν, upotrebljavajući W masu kao ograničenje i pretp. da neutrino “nosi” nedostajući pT • Back Navigation – do ESD ili do RAW može biti “trigger”ovana za pristup objektima – AOD “zna” iz kog ESD je kreiran → za omogućavanje ove funkcije, potrebno je dodati sledeću liniju u jobOptions datoteku: EventSelector.BackNavigation = True
Još malo o Athena-i • Široka primena dinamičkih biblioteka • Jasno razdvajanje između podataka i algoritama; npr. interfejs koji omogućava pristup podacima o tragu (npr. 4-impuls) odvojen je u različite klase (pakete obično) od koda odgovornog za traženje i građenje traga • Jasno razdvajanje između “persistent” i “transient” podataka • Prepoznavanje da ima mnogo tipova podataka koji imaju različita vremena trajanja unutar softvera (npr. statistički podaci akumulirani unutar histograma su dugo živeći u poređenju sa podacima pojedinačnog događaja • Apstraktni interfejsi – omogućavaju različite softverske implementacije za slične funkcionalnosti, ali optimizovane za različita okruženja; laka manipulacija grupe komponenata koji dele opšti interfejs • Athena developer ima omogućeno sistem servisa za konfiguraciju poslova, praćenje poslova, praćenje performansi sistema, za otklanjanje grešaka,... • Athena obezbeđuje mnoge alate u oblasti rada, za snimanje istorije procesiranja podataka, za upravljanje podacima događaja i detektora • https://twiki.cern.ch/twiki/bin/view/Atlas/AtlasComputing • https://twiki.cern.ch/twiki/bin/view/AtlasProtected/PhysicsAnalysisTools