Geant4 Model Testing Framework:
From PAW to ROOT
Author: Roman Atachiants (PH-SFT)
Supervised by: Mikhail Kosov (PH-SFT)
12/08/2009
Summer Student Presentation
12/8/20091 r.atachiants@student.maastrichtuniversity.nl
Contents
  Introduction
  PAW? ROOT? Geant4?
  Model comparison 101
  Framework
  PAW to ROOT Conversion
  Architectural Overview
  Usage
  Conclusions and Future Work
  References
12/8/20092 r.atachiants@student.maastrichtuniversity.nl
Introduction
  Project
  PAW to ROOT translation of several .kumac macro files in
order to build a framework/tool for Geant4 models testing
  Building an underlying unified database for the models testing
  PAW: Physics Analysis Workstation
  Provides interactive graphical presentation and statistical or
mathematical analysis (FORTRAN)
  ROOT
  cf. Fons Rademakers lecture: Introduction to ROOT [1]
  Geant4
  Toolkit for the simulation of the passage of particles through
matter
12/8/20093 r.atachiants@student.maastrichtuniversity.nl
The goal is to compare the data points with the simulation curves
12/8/20094 r.atachiants@student.maastrichtuniversity.nl
PAW to ROOT Conversion (1)
  Some useful information can be found in:
http://root.cern.ch/root/HowtoConvertFromPAW.html
  PAW vectors treated as ROOTTTrees
  The C++ methods of ROOT are more comprehensive
than the PAW shortcuts, for example:
  PAW handles histograms using ID’s an in ROOT one can
extract the pointer by ID: gDirectory->Get(ID), and than use
this pointer for different functions.
  PAW [put/get]/[abscissa/error/content] are loops in ROOT:
  get/abs [id]([hf]:[hn]) wx
  TAxis* axis = hDT->GetXaxis();
for(Int_t i = 0; i< hnbin; ++i) vZeroLevels[i] = axis->GetBinCenter(i);
12/8/20095 r.atachiants@student.maastrichtuniversity.nl
PAW to ROOT Conversion (2)
  Exactly the same
result is achieved
  2 modes of analysis:
  Secondaries per Model
  Models per Secondary
12/8/20096 r.atachiants@student.maastrichtuniversity.nl
Architectural Overview
ROOT
•  CINT
•  Introspection
•  MonteCarlo extensions (ParticlePDG)
•  10+ libraries
Test programs, on top of Geant4
•  Test 19 and Test 29
•  By Mikhail Kosov
Data Model for Publications and
Simulations
•  DataObject and DataItemObject..
•  Extended ParticlePDG DataBase (With
Secondary Fragments)
Helpers and Utilities
•  Plotting
•  Simulating
Tools: Simulation
and Analysis
12/8/20097 r.atachiants@student.maastrichtuniversity.nl
Usage
  // Example of a ROOT Macro that launches the Geant4
model testing
{
// load the Library
gSystem->Load("libG4ModelTester.so");
// run the simulation (proj.: p , targ.:Al27, 90 MeV)
gSimulationTool->Run(1000010010,
1000130270, 90, 450, ”preco”);
}
12/8/20098 r.atachiants@student.maastrichtuniversity.nl
Conclusions and Future Work
  The universal experimental DB for model testing in Geant4
is completed, but still can be improved (designed to be)
  Show that ROOT can give bigger statistics and therefore
better comparison results than PAW. The main reason for
the PAW to ROOT porting
  ROOT Graphical User Interface for easier use of the tool
(using the power of the framework)
12/8/20099 r.atachiants@student.maastrichtuniversity.nl
Thank you for your attention!
12/8/200910 r.atachiants@student.maastrichtuniversity.nl
References
  [1] Rademakers F., CERN Summer Student Lecture,
Introduction to ROOT
  [2] ROOT User’s Guide, http://root.cern.ch/root/doc/
RootDoc.html
  [3] PAW – Physics Analysis Workstation, http://
wwwasd.web.cern.ch/wwwasd/paw/
  [4] Geant4 - http://www.geant4.org/geant4/
12/8/200911 r.atachiants@student.maastrichtuniversity.nl

Geant4 Model Testing Framework: From PAW to ROOT

  • 1.
    Geant4 Model TestingFramework: From PAW to ROOT Author: Roman Atachiants (PH-SFT) Supervised by: Mikhail Kosov (PH-SFT) 12/08/2009 Summer Student Presentation 12/8/20091 [email protected]
  • 2.
    Contents   Introduction   PAW?ROOT? Geant4?   Model comparison 101   Framework   PAW to ROOT Conversion   Architectural Overview   Usage   Conclusions and Future Work   References 12/8/20092 [email protected]
  • 3.
    Introduction   Project   PAWto ROOT translation of several .kumac macro files in order to build a framework/tool for Geant4 models testing   Building an underlying unified database for the models testing   PAW: Physics Analysis Workstation   Provides interactive graphical presentation and statistical or mathematical analysis (FORTRAN)   ROOT   cf. Fons Rademakers lecture: Introduction to ROOT [1]   Geant4   Toolkit for the simulation of the passage of particles through matter 12/8/20093 [email protected]
  • 4.
    The goal isto compare the data points with the simulation curves 12/8/20094 [email protected]
  • 5.
    PAW to ROOTConversion (1)   Some useful information can be found in: http://root.cern.ch/root/HowtoConvertFromPAW.html   PAW vectors treated as ROOTTTrees   The C++ methods of ROOT are more comprehensive than the PAW shortcuts, for example:   PAW handles histograms using ID’s an in ROOT one can extract the pointer by ID: gDirectory->Get(ID), and than use this pointer for different functions.   PAW [put/get]/[abscissa/error/content] are loops in ROOT:   get/abs [id]([hf]:[hn]) wx   TAxis* axis = hDT->GetXaxis(); for(Int_t i = 0; i< hnbin; ++i) vZeroLevels[i] = axis->GetBinCenter(i); 12/8/20095 [email protected]
  • 6.
    PAW to ROOTConversion (2)   Exactly the same result is achieved   2 modes of analysis:   Secondaries per Model   Models per Secondary 12/8/20096 [email protected]
  • 7.
    Architectural Overview ROOT •  CINT • Introspection •  MonteCarlo extensions (ParticlePDG) •  10+ libraries Test programs, on top of Geant4 •  Test 19 and Test 29 •  By Mikhail Kosov Data Model for Publications and Simulations •  DataObject and DataItemObject.. •  Extended ParticlePDG DataBase (With Secondary Fragments) Helpers and Utilities •  Plotting •  Simulating Tools: Simulation and Analysis 12/8/20097 [email protected]
  • 8.
    Usage   // Exampleof a ROOT Macro that launches the Geant4 model testing { // load the Library gSystem->Load("libG4ModelTester.so"); // run the simulation (proj.: p , targ.:Al27, 90 MeV) gSimulationTool->Run(1000010010, 1000130270, 90, 450, ”preco”); } 12/8/20098 [email protected]
  • 9.
    Conclusions and FutureWork   The universal experimental DB for model testing in Geant4 is completed, but still can be improved (designed to be)   Show that ROOT can give bigger statistics and therefore better comparison results than PAW. The main reason for the PAW to ROOT porting   ROOT Graphical User Interface for easier use of the tool (using the power of the framework) 12/8/20099 [email protected]
  • 10.
    Thank you foryour attention! 12/8/200910 [email protected]
  • 11.
    References   [1] RademakersF., CERN Summer Student Lecture, Introduction to ROOT   [2] ROOT User’s Guide, http://root.cern.ch/root/doc/ RootDoc.html   [3] PAW – Physics Analysis Workstation, http:// wwwasd.web.cern.ch/wwwasd/paw/   [4] Geant4 - http://www.geant4.org/geant4/ 12/8/200911 [email protected]