19.05.2011 Go4 Workshop 2011 - J.Adamczewski-Musch, S.Linev Go4 advanced features.

Slides:



Advertisements
Similar presentations
Linking A quick overview of how to configure PulseWorx UPB devices to control each other.
Advertisements

H.G.Essel: Go4 - J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev CHEP 2004 Go4 v2.8 Analysis Design.
ROOT Root Commands and CINT Functions and Fitting (The Tree Viewer)
Chapter 12 Creating and Using Templates. If you have already created and designed a page you like, you can use the layout and design for other pages in.
Access Tutorial 10 Automating Tasks with Macros
2. Introduction to the Visual Studio.NET IDE 2. Introduction to the Visual Studio.NET IDE Ch2 – Deitel’s Book.
Creating a MagicInfo Pro Screen Template
1 ENG236: ENG236: C++ Programming Environment (2) Rocky K. C. Chang THE HONG KONG POLYTECHNIC UNIVERSITY.
8 Copyright © 2004, Oracle. All rights reserved. Creating LOVs and Editors.
Chapter 3 Working with Symbols and Interactivity.
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.
Advanced Excel for Finance Professionals A self study material from South Asian Management Technologies Foundation.
XP Tutorial 5 Buttons, Behaviors, and Sounds. XP New Perspectives on Macromedia Flash MX Buttons Interactive means that the user has some level.
For Version 6.0 and later Lattice3D Reporter Tutorial For Version 6.0 and later LATTICE TECHNOLOGY, INC.
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
IE 411/511: Visual Programming for Industrial Applications
© 2004 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice SISP Training Documentation Template.
Introduction to Matlab & Data Analysis
Prepared by: Sanaz Helmi Hoda Akbari Zahra Ahmadi Sharif University of Tech. Summer 2006 An Introduction to.
21-Apr-2005J. Adamczewski1 DVEE C++ course 2005 The ROOT framework 1: Introduction.
THttpServer class Sergey Linev (GSI). Some history Development was inspired by JSRootIO why not achieve similar functionality with online ROOT application?
Marcel Casado NCAR/RAP WEATHER WARNING TOOL NCAR.
Simulink ® Interface Course 13 Active-HDL Interfaces.
LLRP GUI Client User Guide
In the next step you will enter some data records into the table. This can be done easily using the ‘Data Browser’. The data browser can be accessed via.
Active-HDL Interfaces Debugging C Code Course 10.
Active-HDL Interfaces Building VHPI Applications C Compilation Course 9.
Tutorial 7 Planning and Creating a Flash Web Site.
Adobe Flash CS3 Revealed Chapter 3 - WORKING WITH SYMBOLS AND INTERACTIVITY.
Lesson 2 Basic editing Word 2013.
ROOT Tutorial An object oriented HEP data analysis framework Presented by Dimitri Bourilkov University of Florida UltraLight Workshop, June 2005, FIU,
10/31/2015PHYS 3446 DØ Data Analysis with ROOT Venkat (for Dr.Yu)
Chapter 12: Pointers, Classes, Virtual Functions, and Abstract Classes.
SilkTest 2008 R2 SP1: Silk4J Introduction. ConfidentialCopyright © 2008 Borland Software Corporation. 2 What is Silk4J? Silk4J enables you to create functional.
Go4 v3 - J.Adamczewski, H.G.Essel, S.Linev IT/EE Palaver Go4 version 3.
H.G.Essel: Go4 - J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev CHEP 2003 GSI Online Offline Object Oriented Go4.
Using of XML for object store S. Linev, GSI Using of XML for object store. S.Linev2 Content XML and existing packages XML and existing packages.
Chapter 8: Plotting. After completing this Chapter, you will be able to use the following features: Planning the Plot Sheet Plotting Environments Plotting.
ROOT Tutorials - Session 51 ROOT Tutorials – Session 5 Dictionary Generation, rootcint, Simple I/O, Hands-on Fons Rademakers.
PROOF and ALICE Analysis Facilities Arsen Hayrapetyan Yerevan Physics Institute, CERN.
XP Tutorial 7 Creating a Flash Web Site. XP New Perspectives on Macromedia Flash 82 Objectives Plan and create a Flash Web site Create a Flash template.
H.G.Essel: Go4 - J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel, S.Linev ROOT 2002 GSI Online Offline Object Oriented Go4.
XP Tutorial 8 New Perspectives on Microsoft Windows XP 1 Microsoft Windows XP Object Linking and Embedding Tutorial 8.
 2002 Prentice Hall. All rights reserved. 1 Chapter 2 – Introduction to the Visual Studio.NET IDE Outline 2.1Introduction 2.2Visual Studio.NET Integrated.
GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GGO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4G.
9/28/2005Philippe Canal, ROOT Workshop TTree / SQL Philippe Canal (FNAL) 2005 Root Workshop.
Prof. amr Goneid, AUC1 CSCE 110 PROGRAMMING FUNDAMENTALS WITH C++ Prof. Amr Goneid AUC Part 15. Dictionaries (1): A Key Table Class.
LCG AA Meeting 31 October 2007 The new dynamically and extensively customizable ROOT browser Bertrand Bellenot.
Techniques for List Creation (2) Data formatting and control level processing Basics for Interactive Lists Detail lists The Program Interface Interactive.
© Geodise Project, University of Southampton, Workflow Application Fenglian Xu 07/05/03.
S.Linev: Go4 - J.Adamczewski, H.G.Essel, S.Linev ROOT 2005 New development in Go4.
© 2010 Delmar, Cengage Learning Chapter 11 Creating and Using Templates.
TP…..lab work 1)Vigru 2)Standard analysis / conversion 3)User analysis 4)Usage of cuts 5)In Ganil Acquisition ( nota : available files in /home/legeard/TP/
Integrating Components and Dynamic Text Boxes with the Animated Map– Lesson 101 Integrating Components and Dynamic Text Boxes with the Animated Map Lesson.
 2002 Prentice Hall. All rights reserved. 1 Introduction to the Visual Studio.NET IDE Outline Introduction Visual Studio.NET Integrated Development Environment.
Joe Foster 1 This talk extends the one I gave in 2006 called Visualizing Data with ROOT. –
Import existing part with drawing
HYDRA Framework. Setup of software environment Setup of software environment Using the documentation Using the documentation How to compile a program.
GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GGO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4G.
ROOT Event Recording system
Go4 v2.2 Status & Overview CHEP 2003
Creating a Flash Web Site
VAB™ for INFINITY Tutorial
Distributed object monitoring for ROOT analyses with Go4 v.3
S.Linev, J. Adamczewski, M. Al-Turany, D. Bertini, H.G.Essel
User Interface Classes Signals / Slots
The ROOT framework 1: Introduction
Presentation transcript:

Go4 Workshop J.Adamczewski-Musch, S.Linev Go4 advanced features

Go4 Workshop Overview Tree viewer Parameter editor Dynamic list editor Macros usage Fitting in go4

Go4 Workshop Go4 as ROOT files browser Go4 GUI can be used in offline as ROOT files browser To create example ROOT file: [shell] root -l $ROOTSYS/tutorials/hsimple.C –q Open produced file with go4: [shell] go4 hsimple.root Subdirectories and TTree brunches/leafs can be seen Display of any histogram by double click

Go4 Workshop Tree viewer

Go4 Workshop Tree viewer Tree viewer activated by double-click on any tree leaf item 1-D, 2-D and 3-D tree draw is possible with cut condition Drag & drop of leafs names to viewer fields Automatic histogram creation or via special dialog Same in ROOT session: shell$ root –l hsimple.root root [1] new TBrowser; root [2] “double click” leaf item in TBrowser

Go4 Workshop Parameter editor Editing of local/remote TGo4Parameter objects

Go4 Workshop User parameter class User classes, derived from TGo4Parameter, could be used as coefficients table TGo4Parameter::UpdateFrom() method can be implemented for user control how values will be assigned in the analysis For simple cases UpdateFrom() implementation is no longer required class TUserParameter : public TGo4Parameter { public: TUserParameter(const char* name = 0) : TGo4Parameter(name), fillRaw(kFALSE) {} Bool_t fillRaw; // control filling of raw histograms ClassDef(TUserParameter,1) };

Go4 Workshop Parameter editor Basic data types, array of basic data types, TString and TGo4Fitter are supported for editing Array contents can be expanded / shrink Comments in class declaration are visible in parameter editor Class library is not required for parameter editing (only for file I/O) Parameter can be updated in analysis or stored / restored in file

Go4 Workshop Dynamic list editor

Go4 Workshop Dynamic list editor Browser displays analysis event structure and opened tree in analysis These data updated once per event and therefore can be used for histogramming Two alternatives for dynamic histogramming: –over any element(s) in events structures, including condition –TTree::Draw() operation

Go4 Workshop Macros usage with go4 ROOT provides C-like scripting language CINT Advantage – no need to recompile before usage, very flexible Any go4 class (parameter, event, fitter) is available after “. go4login” To compile macro with ACLiC: [root] gSystem->AddIncludePath(“-I$GO4SYS/include”); [root].x your_macro.C++

Go4 Workshop ROOT macros in user analysis Access to all object via go4 – pointer on TGo4Analysis object Often use for configuration – macro can be changed without need for recompilation of whole analysis void setup() { TUserParameter* par = (TUserParameter*) go4->GetParameter(“UserPar"); if (par==0) return; par->fillRaw = kTRUE; cout << “Setup done” << endl; }... gROOT->ProcessLine(“.x setup.C”);... Somewhere in processor constructor:

Go4 Workshop ROOT macros in the GUI Manipulate objects in the GUI Number of useful macros provided in $GO4SYS/macros Hotstart file is just ROOT script for GUI

Go4 Workshop ROOT macros in the GUI

Go4 Workshop ROOT macros in the GUI In the GUI go4 is pointer on TGo4Script class, which provides access to main GUI functionality Example of simple commands: –go4->MonitorItem("Analysis/Histograms/His1"); –go4->DrawItem("Analysis/Histograms/His1"); –go4->StartMonitoring(4); –go4->StopAnalysis();

Go4 Workshop Fitting in Go4 Fit panel TGo4Fitter class Use of TGo4Fitter in macro Reuse of fitter in GUI / Analysis

Go4 Workshop Fit panel

Go4 Workshop Main features of fit panel Fitting of histograms / graphs for any kind of model Peak finder Manual change of model components / fit parameters Fitting and parameters view, parameters output Fit panel menu commands Different display modes: –show only model –show model components –use different panel for drawing Store fitter in file

Go4 Workshop TGo4Fitter class Central API class for fitting in go4 Keeps all components to perform a fit Advanced features: –simultaneous fit of several histograms –fitting model via: TFormula sample histogram function from shared library –flexible range settings –two-dimensional histograms fit –most are available via “Expert” mode in Fit panel See Fit tutorial on Go4 webpage Many examples in $GO4SYS/Go4FitExamples

Go4 Workshop Example1 from Go4FitExamples // create fitter, select fit function and add standard actions list TGo4Fitter fitter("Fitter", TGo4Fitter::ff_ML_Poisson, kTRUE); // add histogram to fitter, which should be fitted fitter.AddH1("data1", GetHistogram("hDeg120_P_c"), kTRUE, 2200., 2900.); // create polynom of first order fitter.AddPolynomX("data1", "Pol", 1); // create two gaussians fitter.AddGauss1("data1", "Gauss1", 2553., 15.); fitter.AddGauss1("data1", "Gauss2", 2672., 15.); // execute all actions fitter.DoActions(); // draw data, full model and two gaussains fitter.Draw("#data1,Gauss1,Gauss2");

Go4 Workshop Reuse of fitter in GUI Store fitter in macro: TFile* f = TFile::Open("fitter.root","recreate"); fitter.ClearObjects(0, kFALSE); // do not store histos with fitter fitter.Write(); delete f; Load file with fitter in Go4 browser Drop fitter on histogram to be fitted Press Fit button

Go4 Workshop Reuse of fitter in macros Do fitting in fit panel Store fitter in file (via browser) Load fitter in macro and assign histograms: // read fitter from file TFile* f = TFile::Open("fitter2.root"); TGo4Fitter* fitter = (TGo4Fitter*) f->Get("Fitter"); delete f; if (fitter==0) return; // set histogram in fitter fitter->SetObject("data1", GetHistogram("hDeg120_P_c"), kTRUE); // make fitting fitter->DoActions(); // just draw fitter fitter->Draw("#data1,Gauss1,Gauss2"); Repeat fitting as many time as necessary