ROOT Support and Developments at FNAL

Slides:



Advertisements
Similar presentations
The Complete Technical Analysis and Development Environment An attractive alternative to MATLAB and GAUSS - Physics World.
Advertisements

Key-word Driven Automation Framework Shiva Kumar Soumya Dalvi May 25, 2007.
1 OBJECTIVES To generate a web-based system enables to assemble model configurations. to submit these configurations on different.
Alternate Software Development Methodologies
Web Applications Development Using Coldbox Platform Eddie Johnston.
GridRPC Sources / Credits: IRISA/IFSIC IRISA/INRIA Thierry Priol et. al papers.
O. Stézowski IPN Lyon AGATA Week September 2003 Legnaro Data Analysis – Team #3 ROOT as a framework for AGATA.
1 Chapter 12 Working With Access 2000 on the Internet.
Performed by: Yair Sommer Rea Yeheskel Instructor: Idan Katz In Cooperation with:Motorola הטכניון - מכון טכנולוגי לישראל הפקולטה להנדסת חשמל Technion -
Mehmet Can Vuran, Instructor University of Nebraska-Lincoln Acknowledgement: Overheads adapted from those provided by the authors of the textbook.
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
Chapter 6: An Introduction to System Software and Virtual Machines
Introduction to Java.
L EC. 01: J AVA FUNDAMENTALS Fall Java Programming.
Web 2.0 with AJAX Students : LASC Ioana KELEMEN Csilla POP Dan Adrian CIOBANU Dumitru Daniel Project leader : Ahmed RHIAT.
Professional Informatics & Quality Assurance Software Lifecycle Manager „Tools that are more a help than a hindrance”
A Free sample background from © 2001 By Default!Slide 1.NET Overview BY: Pinkesh Desai.
JCE A Java-based Commissioning Environment tool Hiroyuki Sako, JAEA Hiroshi Ikeda, Visible Information Center Inc. SAD Workshop.
Sept 11, 2003ROOT Day1, Suzanne Panacek39 ROOT An object oriented HEP analysis framework. Day 1.
ROOT An object oriented HEP analysis framework.. Computing in Physics Physics = experimental science =>Experiments (e.g. at CERN) Planning phase Physics.
CIS 451: Web Services Dr. Ralph D. Westfall March, 2009.
CS 355 – Programming Languages
Manage Engine: Q Engine. What is it?  Tool developed by Manage Engine that allows one to test web applications using a variety of different tests to.
GLAST Science Support CenterAugust 9, 2004 Implementation of the Standard Analysis Environment (SAE) James Peachey (HEASARC/GLAST SSC—GSFC/L3)
CINT Retrospect ROOT Workshop Mar 2013 Agilent Technologies Masaharu Goto.
Self Guided Tour for Query V8.4 Basic Features. 2 This Self Guided Tour is meant as a review only for Query V8.4 Basic Features and not as a substitute.
SB ScriptBasic Introduction to ScriptBasic There are more people writing programs in BASIC than the number of people capable programming.
1 Apache. 2 Module - Apache ♦ Overview This module focuses on configuring and customizing Apache web server. Apache is a commonly used Hypertext Transfer.
21-Apr-2005J. Adamczewski1 DVEE C++ course 2005 The ROOT framework 1: Introduction.
Copyright © 2007 Addison-Wesley. All rights reserved.1-1 Reasons for Studying Concepts of Programming Languages Increased ability to express ideas Improved.
Webcommerce Computer Networks Webcommerce by Linnea Reppa Douglas Martindale Lev Shalevich.
Axel Naumann University of Nijmegen / NIKHEF, NL ROOT 2004 Users Workshop The Future of THtml Plans and Status of ROOT’s documentation facility.
Shannon Hastings Multiscale Computing Laboratory Department of Biomedical Informatics.
5 - 1 Copyright © 2006, The McGraw-Hill Companies, Inc. All rights reserved.
10/31/2015PHYS 3446 DØ Data Analysis with ROOT Venkat (for Dr.Yu)
VAPOR 3.0 Architecture Overview. Purpose of this document Provide understandable overview of 3.0 architecture Enable the development team to maintain.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
I Power Higher Computing Software Development Development Languages and Environments.
SEAL Core Libraries and Services CLHEP Workshop 28 January 2003 P. Mato / CERN Shared Environment for Applications at LHC.
Apr. 8, 2002Calibration Database Browser Workshop1 Database Access Using D0OM H. Greenlee Calibration Database Browser Workshop Apr. 8, 2002.
ROOT Tutorials - Session 51 ROOT Tutorials – Session 5 Dictionary Generation, rootcint, Simple I/O, Hands-on Fons Rademakers.
SharePoint Administrative Communications Planning: Dynamic User Notifications for Upgrades, Migrations, Testing, … PRESENTED BY ROBERT FREEMAN (
An evaluation of tools for static checking of C++ code E. Arderiu Ribera, G. Cosmo, S. M. Fisher, S. Paoli, M. Stavrianakou CHEP2000, Padova,
Copyright © 2010, SAS Institute Inc. All rights reserved. SAS ® Using the SAS Grid.
Chapter 3 JSP Overview. The Problem with Servlets processing the request and generating the response are both handled by a single servlet class Java programming.
Module 6: Configuring User Environments Using Group Policies.
Lesson 1 1 LESSON 1 l Background information l Introduction to Java Introduction and a Taste of Java.
CINT & Reflex – The Future CINT’s Future Layout Reflex API Work In Progress: Use Reflex to store dictionary data Smaller memory footprint First step to.
GLAST 1 Event Display VRVS meeting Glast software collaboration Pisa experience with ROOT N Lumb and G Spandre INFN-Pisa.
Visual Basic.Net. Software to Install Visual Studio 2005 Professional Edition (Requires Windows XP Pro) MSDN Library for Visual Studio 2005 Available.
1 G4UIRoot Isidro González ALICE ROOT /10/2002.
Go4 Workshop J.Adamczewski-Musch, S.Linev Go4 advanced features.
2001 ROOT Workshop The Summary. Content Most Requested Request already satisfied Build and Distribution Web Page Information and Documentation.
POOL Based CMS Framework Bill Tanenbaum US-CMS/Fermilab 04/June/2003.
Barthélémy von Haller CERN PH/AID For the ALICE Collaboration The ALICE data quality monitoring system.
Patrick Gartung LArSoft Usability Meeting 22 June 2016 Build system explorations: Spack.
Jean-Philippe Baud, IT-GD, CERN November 2007
Advanced Computer Systems
Visit for more Learning Resources
Distribution and components
Deploying and Configuring SSIS Packages
Introduction Enosis Learning.
Chapter 2: Database System Concepts and Architecture
Introduction Enosis Learning.
SharePoint Administrative Communications Planning: Dynamic User Notifications for Upgrades, Migrations, Testing, … Presented by Robert Freeman (
Support for ”interactive batch”
BCS Template Presentation February 22, 2018
Chapter 1 Introduction.
Consuming Web Services with 2E Generated Objects
Presentation transcript:

ROOT Support and Developments at FNAL ROOT For RUN II ROOT Support and Developments at FNAL Philippe Canal pcanal@fnal.gov 630-840-2545 7/10/2019

Philippe Canal, pcanal@fnal.gov ROOT for Run II Selecting a Physics Analysis Tool Concerns Addressing the Concerns 7/10/2019 Philippe Canal, pcanal@fnal.gov

Philippe Canal, pcanal@fnal.gov Requirements Functional requirements Scripting language Run on several platforms Modular architecture Support requirements Portability Ease of maintenance Close collaboration Committees to understand requirements and support needs. Composition of the committees: Blend of physicist and computer professionals. 7/10/2019 Philippe Canal, pcanal@fnal.gov

Philippe Canal, pcanal@fnal.gov Candidates Histoscope No scripting language LHC++ Scheduled for use in 2005 – too late IDL Limitation on the size of the data set Root Closest to meeting the requirements Some requirements were only partially met - risky 7/10/2019 Philippe Canal, pcanal@fnal.gov

Philippe Canal, pcanal@fnal.gov A Visit to CERN Discuss issues (Some resolved on the spot) ROOT team is enthusiastic to collaborate Plans to hold a ROOT workshop at FNAL for US HENP experiments considering ROOT 7/10/2019 Philippe Canal, pcanal@fnal.gov

Requests From The Workshop Improved robustness STL support Improved documentation Persistence for CLHEP Multi-threading Interface to SQL 7/10/2019 Philippe Canal, pcanal@fnal.gov

Philippe Canal, pcanal@fnal.gov Improved Robustness External preprocessor FNAL ROOT team modified CINT and ROOT to implement this. Modularization of ROOT Implemented by ROOT team in v2_23 Automatic handling of STL Added by the ROOT team Available via the script compiler 7/10/2019 Philippe Canal, pcanal@fnal.gov

Philippe Canal, pcanal@fnal.gov Improved Robustness User support, deployment, and testing UPS/UPD Test on all released platforms Local support Central contact to voice user needs and during feature implementation 7/10/2019 Philippe Canal, pcanal@fnal.gov

Philippe Canal, pcanal@fnal.gov Script Compiler Advantages Five Times Faster than Interpreter Full C++ capability Syntax checking Can be used to add a class to a ROOT session. Disadvantages Can only load a C++ library once Compile time The Script Compiler gives the ROOT user the choice to compile a ROOT macro rather than using CINT and interpreting it. The Script Compiler compiles a ROOT macro and produces a shared library. The compiler and compiler switches used by default are the same as those used to build the current root executable (the one from which the script compiler is invoked). These default values can be easily changed. We will show you two demonstrations. In the first demonstration, we will show you how to invoke the script compile, and illustrate the difference in execution speed between the interpreted run and the compiled run. In the second demonstration, I will show you how you can add a class to root session by using the script compiler. cd script root –l gROOT->Time() .L ScriptCompilerDemo.C++ .files ----- note the shared library Demo() note the time it takes ---------- .q root -l .L ScriptCompilerDemo.C Note the time it takes ------------- 7/10/2019 Philippe Canal, pcanal@fnal.gov

Adding a Class with The Script Compiler Step 1: Write the class definition in a separate file. Step 2: Add the ClassDef and ClassImp macro calls to the class definition. Step 3: Load the class with the script compiler. root[0] .L ABCClass.C++ root[1] ABC abc root[2] abc.a = 3.2; root[3] abc.b = 4.0; root[4] abc.Dump(); Step 1: Open the /v1/home/pcanal/root/script/ABCClass.C file. The class ABC is defined. Note the ClassDef and ClassImp. -------------------------------------- #include "TObject.h" // define the ABC class and make it inherit from // TObject so that we can write ABC to a root file class ABC : public TObject { public: Float_t a,b,c,p; ABC():a(0),b(0),c(0),p(0){}; // Define the class for the cint dictionary ClassDef(ABC,1) }; // Call the ClassImp macro to give the ABC class RTTI and // full I/O capabilities. #if !defined(__CINT__) ClassImp(ABC); #endif ---------------------------------- Then execute the following commands: .L ABCClass.C++ .files ------------ note the shared library ABCClass ABC abc abc.a = 3.2; abc.b = 4.0; abc.Dump(); 7/10/2019 Philippe Canal, pcanal@fnal.gov

Improved Documentation For the novice user Root 101 hands-on class with exercises Root files and GUI overview Tree viewer How to find more information Macros “Getting started with root” document http://www-pat.fnal.gov/root/ 7/10/2019 Philippe Canal, pcanal@fnal.gov

Improved Documentation For the intermediate user Root 102 hands-on class with exercises Functions and fitting Building root trees Putting trees to work More about CINT Script complier C++ basics for root users document Extras Collections slide presentation XClasses implementation in ROOT 7/10/2019 Philippe Canal, pcanal@fnal.gov

Philippe Canal, pcanal@fnal.gov And … Interface to CLHEP PhysicsVector More to come Multi-threading Implemented by GSI Interface to SQL Implemented by the CERN ROOT team 7/10/2019 Philippe Canal, pcanal@fnal.gov

Other FNAL/ROOT Projects Automatic documentation Inline functions Point and click inheritance diagram Self describing object format Reading ROOT files without having the source file for the saved object. 7/10/2019 Philippe Canal, pcanal@fnal.gov

Philippe Canal, pcanal@fnal.gov Conclusion Confidence in our choice of ROOT Successfully addressed concerns Success factors Unprecedented support by ROOT team Make up of skills and personalities of the FNAL ROOT team Identification of specific issues to work on 7/10/2019 Philippe Canal, pcanal@fnal.gov