190 likes | 212 Views
MEG Software Status. Framework Large Prototype software updates Database ROME Monte Carlo Simulation. MEG Software Group. Framework. Online ROME - Root based Object oriented Midas Extension Offline / reconstruction ROOT/C++ based See Corrado’s presentation Monte Carlo simulation
E N D
MEG Software Status • Framework • Large Prototype software updates • Database • ROME • Monte Carlo Simulation MEG Software Group Shuei YAMADA @ MEG review meeting, 2 July 2004
Framework • Online • ROME - Root based Object oriented Midas Extension • Offline / reconstruction • ROOT/C++ based See Corrado’s presentation • Monte Carlo simulation • GEANT3 / FORTRAN77 Shuei YAMADA @ MEG review meeting, 2 July 2004
New DAQ for Large Prototype DAQ computer divided into 3 PCs: 1. Front-end for trigger & data logging 2. Back-end for online analyzer, ROOT server 3. Run control, slow control & event display Shuei YAMADA @ MEG review meeting, 2 July 2004
Software Modifications for Large Prototype • Online • ROOT based analyzer • Monitor online histograms thru network • Offline • Two analyzers: ROOT based & ntuple based • kumacs are merged in the ROOT-analyzer • Database : run catalog & connection table • Testing to use ROME Shuei YAMADA @ MEG review meeting, 2 July 2004
Another CEX beam test at pE5 • Further modification required • DAQ using wave-form digitizer • Database update during data taking • Run catalog • Hardware configurations • Cable connection, HV value, … Shuei YAMADA @ MEG review meeting, 2 July 2004
RDBMS • Relational Database Management System • Table format database consists from several tables • Tables are connected with relations Shuei YAMADA @ MEG review meeting, 2 July 2004
SQL • Standard Query Language • Standard format of statement to access to database • SELECT title FROM Tune WHERE composer = “Juno Reactor”; • INSERT INTO Tune(title,rating) VALUE (“High Energy Protons”, 3); • UPDATE Tune SET rating=5 WHERE title = “High Energy Protons”; • DELETE Artist WHERE name = “DJ19”; Shuei YAMADA @ MEG review meeting, 2 July 2004
Italy PSI Russia Japan MySQL • Network access • Open source • Large : 10000ch x 8M runs • Fast : <10 sec for 256ch x 1000 run pedestals • Multi platform : Linux, Macintosh, Solaris, Windows… • Server replication • XML database • if no network connection available Shuei YAMADA @ MEG review meeting, 2 July 2004
How to access? • UNIX command • C/C++ • DAQ • ROOT • Analysis tool • Web browser • PHP/Perl/Ruby • ODBC/JDBC • MS Excel, Access Shuei YAMADA @ MEG review meeting, 2 July 2004
Large Prototype database Run catalog Connection table Shuei YAMADA @ MEG review meeting, 2 July 2004
Tool for Event based Data Analysis • Fully Object Oriented • Root based • Full connection to the Midas Environment • Online and Offline • Based on Tasks, Containers and Folders for a good Data and Program Structure • Experiment independent Base Classes • Experiment dependent Classes are generated out of simple XML-Files • The Users write only experiment specific code (physics) • Administrative code is implemented in the generated code • Self Documenting Code • Self Linking Project ROMERoot based Object oriented Midas Extension Shuei YAMADA @ MEG review meeting, 2 July 2004
Folders • Objects, where data is stored in • Stores the data of one detector (or sub detector) component • Hierarchically arranged • Data inside of Folders is structured • Tasks • Tasks are objects, which provides actions • They make calculations • Store and read data in folders • Fill trees and histograms • Hierarchically arranged • Task also own histograms • Steering Parameters • Task steering • Framework steering • Trees • Data Objects : only written, never read • Used to write data on files ROME Objects • Histograms • Graphical Data Objects : only written • Belong to one Task Shuei YAMADA @ MEG review meeting, 2 July 2004
Histograms Histograms Histograms Histograms Histograms Histograms Histograms Histograms Histograms Tasks Tasks Tasks Trees Trees Trees Interconnections Disk (Input) Read (any Format) Read Fill Folders Fill Fill Flag Read Disk (Output) Write (ROOT) Shuei YAMADA @ MEG review meeting, 2 July 2004
ROME classes ROME classes ROME classes ROME classes ROME classes Exp. classes The ROME Environment • experiment independent ‘ROME’-Classes • Base classes for the generated, experiment dependent classes • ROMEBuilder • Builds all experiment dependent classes out of simple XML Files • XML files describe Tasks, Folders, Trees, Histos, Steering Parameters and Midas Banks • Links the generated project • Documents the generated project Project ROME Environment ROMEBuilder Executable Documentation XML File Shuei YAMADA @ MEG review meeting, 2 July 2004
XML File • <Experiment Shortcut> • <Task> • <SubTaskName=“Task Name”> • <Histos> • <Histo Name Type=“Variable Type” ArraySize=“Array Size” Title=“Title” FolderName=”Histo Folder Name” FolderTitle=”Histo Folder Title” NumberOfBinsX=“# of X bins” XMin=“X min” XMax=“X max”/> • </Histos> • </SubTask> • </Task> • </Experiment Shortcut> Code void [Experiment Shortcut]T[Task Name]::Init() { } void [Experiment Shortcut]T[Task Name]::BeginOfRun() { } void [Experiment Shortcut]T[Task Name]::Event() { } void [Experiment Shortcut]T[Task Name]::EndOfRun() { } void [Experiment Shortcut]T[Task Name]::Terminate() { } Fill[Histo Name](double value,double weight) Draw[Histo Name]() Get[Histo Name]Handle() Fill[Histo Name]At(int index,double value,double weight) Draw[Histo Name]At() Get[Histo Name]HandleAt(int index) Histogram Arrays Single Histograms Tasks Shuei YAMADA @ MEG review meeting, 2 July 2004
Benefit of a Generated Framework C++/OO knowledge not required for programmers, just write code in C • Consistent Program Structure • All classes look the same • Better readability • Less Handwritten Code • Code of a class is written once (in the builder) and reproduced many times • Easier Maintenance • Modification are done once (in the builder) and then available in the whole framework Shuei YAMADA @ MEG review meeting, 2 July 2004
Monte Carlo Simulation • GEANT3 / FORTRAN77 • Requires • Sync LXe geometry with PMT folder design • Geometry Database • MC run catalog Database • meg signal MC • Background MC • Digitization • Trigger simulation • How to combine signal & BG into one “triggered”-event? • Programmers’ manual and End-users’ manual • Human resource assignment Shuei YAMADA @ MEG review meeting, 2 July 2004
MC schedule/man power • By end of April2004 • Liq. Xe geometry: S.Yamada/F.Cei • By end of June 2004 • DigitizationXE: S.Yamada/F.CeiDC: H.NishiguchiTC: P.Cattaneo July September Shuei YAMADA @ MEG review meeting, 2 July 2004
Summary • Offline framework • use ROOT/C++ • Another CEX beam test using new software • ROME - ROOT/C++ based online software • MySQL database • Wave-form digitizer • Monte Carlo Simulation • GEANT3 / FORTRAN77 Shuei YAMADA @ MEG review meeting, 2 July 2004