Paul Scherrer Institut 5232 Villigen PSI ROME / 11.5.2004 / Matthias Schneebeli ROME Root based Object oriented Midas Extension Presented by Matthias.

Slides:



Advertisements
Similar presentations
Network II.5 simulator ..
Advertisements

H.G.Essel: Go4 - J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev CHEP 2004 Go4 v2.8 Analysis Design.
DB2 Tools Pertemuan 3 Matakuliah: T0413 Tahun: 2009.
© 2004, D. J. Foreman 1 Program Linking. © 2004, D. J. Foreman 2 Program Content  Given the following file: Float Mysqrt(float); void Prog1 () { extern.
Copyright 2003 Scott/Jones Publishing Brief Version of Starting Out with C++, 4th Edition Chapter 1 Introduction to Computers and Programming.
TIBCO Designer TIBCO BusinessWorks is a scalable, extensible, and easy to use integration platform that allows you to develop, deploy, and run integration.
What is R By: Wase Siddiqui. Introduction R is a programming language which is used for statistical computing and graphics. “R is a language and environment.
CLEO’s User Centric Data Access System Christopher D. Jones Cornell University.
Computer Systems Week 10: File Organisation Alma Whitfield.
Zhonghua Qu and Ovidiu Daescu December 24, 2009 University of Texas at Dallas.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Root based Object oriented Midas Extension Presented by Matthias.
Shuei MEG review meeting, 2 July MEG Software Status MEG Software Group Framework Large Prototype software updates Database ROME Monte Carlo.
Introduction to Hall-D Software February 27, 2009 David Lawrence - JLab.
Software Engineering 2003 Jyrki Nummenmaa 1 CASE Tools CASE = Computer-Aided Software Engineering A set of tools to (optimally) assist in each.
Form printing with SAP Smart Forms Instructor: Dylan Liu
Tutorial 121 Creating a New Web Forms Page You will find that creating Web Forms is similar to creating traditional Windows applications in Visual Basic.
DBSQL 14-1 Copyright © Genetic Computer School 2009 Chapter 14 Microsoft SQL Server.
2. Introduction to the Visual Studio.NET IDE. Chapter Outline Overview of the Visual Studio.NET IDE Overview of the Visual Studio.NET IDE Menu Bar and.
Storage Manager Overview L3 Review of SM Software, 28 Oct Storage Manager Functions Event data Filter Farm StorageManager DQM data Event data DQM.
Introduction of Geoprocessing Topic 7a 4/10/2007.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Softies Meeting Presented by Matthias Schneebeli.
As of 28 Juni 2005Getting Starged with GEM - Shuei Yamada 1 Getting Started with GEM Shuei YAMADA ICEPP, University of Tokyo What is GEM? Before you start.
Guide to Linux Installation and Administration, 2e1 Chapter 7 The Role of the System Administrator.
Update on the new reconstruction software F. Noferini E. Fermi center INFN CNAF EEE Analysis Meeting - 14/09/20151.
14 February 2007Fabrizio Cei1 INFN and University of Pisa PSI Review Meeting PSI, 14 February 2007 Status of MEG Software.
Prediction W. Buchmueller (DESY) arXiv:hep-ph/ (1999)
Gnam Monitoring Overview M. Della Pietra, D. della Volpe (Napoli), A. Di Girolamo (Roma1), R. Ferrari, G. Gaudio, W. Vandelli (Pavia) D. Salvatore, P.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME CHEP 2006 Presented by Matthias Schneebeli a universally applicable.
1 Control Software (CAT) Introduction USB Interface implementation Calorimeter Electronics Upgrade Meeting Frédéric Machefert Wednesday 5 th May, 2010.
DANA uses a factory model to deliver data “just in time”
Update on the new reconstruction software F. Noferini E. Fermi center INFN CNAF EEE Analysis Meeting - 15/06/20151.
CMS pixel data quality monitoring Petra Merkel, Purdue University For the CMS Pixel DQM Group Vertex 2008, Sweden.
Ptolemy Tutorial What is Ptolemy? How it works? What is the development environment for you Show demo and former simulation work.
Introduction CMS database workshop 23 rd to 25 th of February 2004 Frank Glege.
H.G.Essel: Go4 - J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev CHEP 2003 GSI Online Offline Object Oriented Go4.
1 N. BrunerUniv. of New Mexico MuTr Software  Online  Calibration  Offline.
Introduction of Geoprocessing Lecture 9. Geoprocessing  Geoprocessing is any GIS operation used to manipulate data. A typical geoprocessing operation.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME CHEP 2006 Presented by Matthias Schneebeli a universally applicable.
David Adams ATLAS DIAL: Distributed Interactive Analysis of Large datasets David Adams BNL August 5, 2002 BNL OMEGA talk.
Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli ROME CHEP 2006 Presented by Matthias Schneebeli a universally.
Talk. Paul Scherrer Institut 5232 Villigen PSI CHEP 2006 in Mumbay / / Matthias Schneebeli ROME CHEP 2006 Presented by Matthias Schneebeli a.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Root based Object oriented Midas Extension Presented by Matthias.
SoLID simulation with GEMC Zhiwen Zhao 2015/03/26.
Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Collaboration Meeting in Pisa Presented by Matthias Schneebeli.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Wednesday Seminar Presented by Matthias Schneebeli a universally.
Configuration database status report Eric van Herwijnen September 29 th 2004 work done by: Lana Abadie Felix Schmidt-Eisenlohr.
Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Root based Object oriented Midas Extension Presented by Matthias.
TDAQ Experience in the BNL Liquid Argon Calorimeter Test Facility Denis Oliveira Damazio (BNL), George Redlinger (BNL).
Alberto Colla - CERN ALICE off-line week 1 Alberto Colla ALICE off-line week Cern, May 31, 2005 Table of contents: ● Summary of requirements ● Description.
October Test Beam DAQ. Framework sketch Only DAQs subprograms works during spills Each subprogram produces an output each spill Each dependant subprogram.
Introduction of Geoprocessing Lecture 9 3/24/2008.
The MEG Offline Project General Architecture Offline Organization Responsibilities Milestones PSI 2/7/2004Corrado Gatto INFN.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Analysis experience at GSIAF Marian Ivanov. HEP data analysis ● Typical HEP data analysis (physic analysis, calibration, alignment) and any statistical.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Softies Meeting Presented by Matthias Schneebeli.
ATLAS The ConditionDB is accessed by the offline reconstruction framework (ATHENA). COOLCOnditions Objects for LHC The interface is provided by COOL (COnditions.
LonWorks Introduction Hwayoung Chae.
The Database Project a starting work by Arnauld Albert, Cristiano Bozza.
Talk. Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Wednesday Seminar Presented by Matthias Schneebeli a universally.
Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Root based Object oriented Midas Extension Presented by Matthias.
May 18th, 2003 RT2003, Montreal1/100 MIDAS Short Course Stefan Ritt (Paul Scherrer Institute, Switzerland) Pierre André Amaudruz (TRIUMF, Canada)
1 Copyright © 2008, Oracle. All rights reserved. Repository Basics.
Solvency II Tripartite template V2 and V3 Presentation of the conversion tools proposed by FundsXML France.
HYDRA Framework. Setup of software environment Setup of software environment Using the documentation Using the documentation How to compile a program.
Presented by Matthias Schneebeli
ROME Root based Object oriented Midas Extension
Talk.
Chapter 1 Introduction to Database Processing
ACTIVE DIRECTORY An Overview.. By Karan Oberoi.
Calibration Infrastructure Design
Presentation transcript:

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Root based Object oriented Midas Extension Presented by Matthias Schneebeli

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Index Introduction to the ROME Environment o Objects inside ROME Projects o ROMEBuilder o Data Stream o Installation Sample Application within the ROME Environment o Project Sample o MEG Experiment

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Introduction to ROME

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Features Tool for Event based Data Analysis Fully Object Oriented Root based Full connection to the Midas Environment Online and Offline Based on Tasks 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

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Objects 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 Trees Data Objects : only written, never read Used to write data on files Histograms Graphical Data Objects : only written Belong to one Task

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Interconnections Folders Tasks Fill Read Trees Read Flag Histograms Fill Disk (Output) Write (ROOT) Disk (Input) Read (any Format)

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli The ROME Environment 5 experiment independent ‘ROME’-Classes o Base classes for the generated, experiment dependent classes. ROMEBuilder o Builds all experiment dependent classes out of simple XML Files o XML files describe Tasks, Folders, Trees, Histos and the Database. o Links the generated project o Documents the generated project ROME classes XML File ROME classes Exp. classes ROMEBuilder Executable Documentation Project ROME Environment

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME classes Tasks Classes in the Generated Project The generated project consists of Task classes o Implement 5 user methods : Init(), BeginOfRun(), Event(), EndOfRun(), Terminate(). Folder classes o Define the data structure of the folders. Analyzer class o Main class. Contains the folders, the trees and the data base. EventLoop class o Implements the event loop. The event loop calls the user methods of the tasks. ROME classes Folders EventLoop Analyzer Folder Handles Trees Data base fAnalyzer

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli XML Project Definition File Folder definitions … Task definitions … Tree definitions … Folder Classes Analyzer and EventLoop Class Task Classes

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Folders XML File [Experiment Shortcut][Folder Name]* Get[Folder Name]At(int index) TClonesArray* Get[Folder Name]Objects() Void Set[Folder Name]Object(int index,[Variable Type 1] [Field 1],…) [Experiment Shortcut][Folder Name]* Get[Folder Name]Object() Void Set[Folder Name]Object([Variable Type 1] [Field 1],…) Code

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Tasks 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) Get[Histo Name]Handle() Fill[Histo Name]At(int index,double value,double weight) Get[Histo Name]HandleAt(int index) Histogram ArraysSingle Histograms XML File Code

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Trees Bool_t is[Tree Name]FillEvent() void Set[Tree Name]FillEvent(true/false) XML File Code

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Data base XML Data base Run table contains the history of the experiment XML Files contain one data base entry of one folder <Entry TimeStamp=“Time” RunNumber=“Run” RunDescription=“Desc.” [Folder Name 1]File=“File 1” [Folder Name 2]File=“File 2” …> Run Table Value 1 Data Base

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli XML Editors XMLSpy -Table Format -Commercial Software (50 Euro) -Only for Windows EditiX -Nice Tree Format -Commercial Software (30 Euro) -Windows, Linux, Mac ROME works with any Editor

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Read and Write Data Input Data o Root files o Midas files o Online buffer o Data base Output Data o Root files o Database Read by the Framework. Data accessed via : (void*) fAnalyzer->GetMidasEvent(); Read and filled to the Folder by the Framework Written by the Framework, can be flagged Written with : fAnalyzer->Write[Folder]DataBase(this);

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Installation Installation of Cygwin (only Windows) Installation of ROOT Installation of LIBXML2 (only Linux) Installation of MIDAS (only online, Linux) [~]$ setenv ROMESYS ~/ROME [~]$ setenv PATH $ROMESYS/bin:$PATH [~]$ cvs checkout ROME [~/ROME]$ make [../MyExp]$ romebuilder myExp.xml –v [-o Output Path] [~/MyExp]$ progname Linux CVS checkout of ROME Define environment variable ROMESYS Define environment variable ‘Path’ C:\> set ROMESYS=C:/ROME C:\> set Path=%Path%;%ROMESYS%/bin C:\> cvs checkout ROME C:\ROME> nmake –f Makefile.win C:\MyExp> ROMEBuilder.exe myExp.xml –v [–o Output Path] C:\MyExp> progname Windows

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Sample Experiment

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Sample Overview 2 Tasks o ReadMidas o ADCCalib 4 Folders o CMPMTData o CMCalib(Data base) o CMPMTInfo(Data base) o Trigger 1 Tree o Data

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli XML Configuration File I ; ; ; (see CMCalib) sample.xml

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli XML Configuration File II sample.xml

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Read Midas Task void XXXTReadMidas::Event() { EVENT_HEADER *pevent = (EVENT_HEADER*)fAnalyzer->GetMidasEvent(); fAnalyzer->SetTriggerObject(pevent->event_id,pevent->serial_number); if (pevent->event_id== EVENTID_EOR) fAnalyzer->EndOfRun(); if (pevent->event_id event_id== EVENTID_EOR) { fAnalyzer->SetDataFillEvent(false); return; } pevent++; float fADC[gNumberOfPMT],*pADC; if (ROMEStatic::bk_locate(pevent, "ADC0", &pADC)) { for (int i=0;i<gNumberOfPMT;i++) fADC[i] = (Float_t)pADC[i]; } else { fAnalyzer->SetDataFillEvent(false); return; } for (int i=0;i<gNumberOfPMT;i++) { int iadc = fAnalyzer->GetCMPMTInfoAt(i)->GetADCID(); fAnalyzer->SetCMPMTDataObject(i,fADC[iadc]); } XXXTReadMidas.cpp

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ADC Calibration Task void XXXTADCCalib::Event() { if (fAnalyzer->GetTriggerObject()->GetID()!=1) return; for (int i=0;i<gNumberOfPMT;i++) { float pmtData = fAnalyzer->GetCMPMTDataAt(i)->GetADC0Data(); float pedestal = fAnalyzer->GetCMCalibAt(i)->GetADCPedestal(); int ipmt = fAnalyzer->GetCMPMTInfoAt(i)->GetADCID(); FillADC0HistoAt(ipmt,pmtData - pedestal); } XXXTADCCalib.cpp

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Run Program C:\Sample> ROMEBuilder.exe sample.xml –v link messages C:\Sample> XXXSample –r –db …/database/ -i …/data/ –o …/out/ –ta 1,1 –tr 0,1,1, events processed Task 'ReadMidas' : run time = 00:00:00 Task 'ADCPedestal' : run time = 00:00:02 Windows

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli The MEG Experiment

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli MEG Experiment CMDCTC CMScaler Scaler CMHV HV Environment Env Trigger MEG CMHit Hit Hit Tree CMRefCMPMTData Ref PMT Data Tree PMT Data CMPMTInfo Info Data base CMCalib Calib Data base

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Referencies CMHit Hit CMPMTInfo Info CMCalib Calib CMScaler Scaler CMHV HV Environment Env Trigger MEG PMT Data CMPMTData ADC0 ADC1 TDC Info CMRef Scaler HV Env Trigger

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli Detailed Introduction to ROME

Paul Scherrer Institut 5232 Villigen PSI ROME / / Matthias Schneebeli ROME Classes ROMEAnalyzer o Main Class o Provides general steering methods ROMEEventLoop o Implements the event loop ROMETask ROMETree ROMERunTable