Virtual Monte Carlo. I. Hrivnacova, IPN Orsay. http://root.cern.ch/root/vmc/virtualmc.html. ROOT 2002 Workshop, CERN 15 October 2002



Similar documents
Supported platforms & compilers Required software Where to download the packages Geant4 toolkit installation (release 9.6)

Overview of EVE - the Event Visualization Environment of ROOT

GLAST Geant4 Simulation

Use of ROOT in Geant4

EVE - Event Visualization Environment of the ROOT framework

Other GEANT4 capabilities

The LHCb Software and Computing NSS/IEEE workshop Ph. Charpentier, CERN

Adobe Summit 2015 Lab 718: Managing Mobile Apps: A PhoneGap Enterprise Introduction for Marketers

The Persint visualization program for the ATLAS experiment

Introduction: ROOT/C++ Analyzer

GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4GO4G

Neutron Detection Setups proposed for

CHM 579 Lab 1: Basic Monte Carlo Algorithm

Mercury Users Guide Version 1.3 February 14, 2006

The Data Quality Monitoring Software for the CMS experiment at the LHC

Evaluation of the CMT and SCRAM Software Configuration, Build and Release Management Tools

IDS 561 Big data analytics Assignment 1

Proton tracking for medical imaging and dosimetry

IBM Rational Rhapsody Gateway Add On. CaliberRM Coupling Notes

Acquisition IPN

Pro/INTRALINK Curriculum Guide

Getting Started Android + Linux. February 27 th, 2014

CLAS12 Offline Software Tools. G.Gavalian (Jlab)

10 STEPS TO YOUR FIRST QNX PROGRAM. QUICKSTART GUIDE Second Edition

École des Ponts Paristech DSI. Installing OpenVPN

Google App Engine f r o r J av a a v a (G ( AE A / E J / )

Simulation of wireless ad-hoc sensor networks with QualNet

CERN analysis preservation (CAP) - Use Cases. Sünje Dallmeier Tiessen, Patricia Herterich, Peter Igo-Kemenes, Tibor Šimko, Tim Smith

Version Control with Subversion

Oracle Tools and Bindings with languages

Quick Installation Guide. Overview. PLANET VIP-156/VIP-156PE/VIP-158 Quick Installation Guide

Eclipse installation, configuration and operation

TECHNICAL NOTE TNOI34

Business 360 Online - Product concepts and features

CAE DATA & PROCESS MANAGEMENT WITH ANSA

TIBCO Spotfire Platform IT Brief

Using VMware Player. VMware Player. What Is VMware Player?

Event display for the International Linear Collider Summer student report

The "Eclipse Classic" version is recommended. Otherwise, a Java or RCP version of Eclipse is recommended.

Calorimetry in particle physics experiments

Homework 9 Android App for Weather Forecast

Oracle Change Management Pack Installation

1z0-102 Q&A. DEMO Version

Introduction to ROOT and data analysis

SysPatrol - Server Security Monitor

Q N X S O F T W A R E D E V E L O P M E N T P L A T F O R M v Steps to Developing a QNX Program Quickstart Guide

INSTALLATION GUIDE ENTERPRISE DYNAMICS 9.0

ZeroTurnaround License Server User Manual 1.4.0

How To Run A Password Manager On A 32 Bit Computer (For 64 Bit) On A 64 Bit Computer With A Password Logger (For 32 Bit) (For Linux) ( For 64 Bit (Foramd64) (Amd64 (For Pc

Configuring Secure Socket Layer (SSL) for use with BPM 7.5.x

Python for Series 60 Platform

Laptop Backup - Administrator Guide (Windows)

Development_Setting. Step I: Create an Android Project

UNICORE UFTPD server UNICORE UFTPD SERVER. UNICORE Team

C Programming Review & Productivity Tools

Setting Up the Mercent Marketplace Price Optimizer Extension

How to install and run. in Microsoft Windows Environment

Analysis Programs DPDAK and DAWN

HDFS Cluster Installation Automation for TupleWare

PLESK 7 NEW FEATURES HOW-TO RESOURCES

Koha 3 Library Management System

Content. Development Tools 2(63)

Performance Monitoring of the Software Frameworks for LHC Experiments

Space Users: Status, Requirements and Open Issues

Hadoop Tutorial. General Instructions

Advanced Testing and Continuous Integration

Quote to Cloud Connecting QuoteWerks and Xero

Tool Integration and Data Formats for Distributed Airplane Predesign

EVALUATION ONLY. WA2088 WebSphere Application Server 8.5 Administration on Windows. Student Labs. Web Age Solutions Inc.

SAIP 2012 Performance Engineering

Appendix F: Instructions for Downloading Microsoft Access Runtime

Android Development. Marc Mc Loughlin

Installation Guide Sybase ETL Small Business Edition 4.2 for Windows

EDG Project: Database Management Services

Status and Integration of AP2 Monitoring and Online Steering

RTI Database Integration Service. Getting Started Guide

Crystal Reports Installation Guide

Deploying Intellicus Portal on IBM WebSphere


Transcription:

Virtual Monte Carlo I. Hrivnacova, IPN Orsay http://root.cern.ch/root/vmc/virtualmc.html ROOT 2002 Workshop, CERN 15 October 2002

Outline Introduction Packages Interfaces Available MCs Examples Distribution Future I. Hrivnacova ROOT 2002 Workshop 2

Introduction The concept of Virtual Monte Carlo has been gradually developed by the ALICE Software project Class TGeant3 providing access to GEANT3 data structures (commons) and functions Enabled to move user code from FORTRAN to C++ Interface to MC as generalization of TGeant3 Started development for Geant4 However the implementations of MC interface depend on the ALICE software Interfaces to a user MC application Enabled to remove the dependence on the ALICE software I. Hrivnacova ROOT 2002 Workshop 3

Packages MC The core package; provided within Root Directory: root/mc; Library: libmc.so Interfaces Geant321 + VMC Geant4 VMC Examples Provided within Geant4 VMC I. Hrivnacova ROOT 2002 Workshop 4

Interfaces Why interfaces? To decouple the dependence of a user code on a concrete MC Enable to run the same user application with all supported Monte Carlo programs Authors: R.Brun, F.Carminati, I. Hrivnacova, A. Morsch I. Hrivnacova ROOT 2002 Workshop 5

Virtual Monte Carlo I. Hrivnacova ROOT 2002 Workshop 6

Interfaces (1) TVirtualMC Interface to Monte Carlo program Generalization of Geant3 functions for definition of simulation task Provides methods for definition geometry and physics setup, for access to tracked particle properties during stepping, visualization Implementations: TGeant3, TGeant4 Are provided to a user Virtual MC Methods For Building & Accessing Geometry Methods For Building & Accessing Materials Methods For Setting Physics Methods For Accessing Tracked Particle During Stepping Methods For Drawing Methods For Run Control I. Hrivnacova ROOT 2002 Workshop 7

Interfaces (2) TVirtualMCApplication Interface to a user application Mandatory Implementation has to be done by a user Virtual MC Application ConstructGeometry InitGeometry GeneratePrimaries BeginEvent BeginPrimary PreTrack Stepping PostTrack FinishPrimary FinishEvent I. Hrivnacova ROOT 2002 Workshop 8

Interfaces (3) TVirtualMCStack Interface to a user defined particles stack Mandatory User can use the concrete stack classes provided in the examples or implement his own stack class Virtual MC Stack SetTrack GetNextTrack : TParticle* GetPrimaryForTracking : TParticle* SetCurrentTrack GetNTrack GetNPrimary CurrentTrack I. Hrivnacova ROOT 2002 Workshop 9

Interfaces (4) TVirtualMCDecayer Interface to an external decayer Eg. Pythia6 Not mandatory Virtual MC Decayer Init Decay ImportParticles SetForceDecay ForceDecay GetPartialBranchingRatio GetLifetime ReadDecayTable I. Hrivnacova ROOT 2002 Workshop 10

Available MCs Implementation for 2 MCs available: Geant3, Geant4 Implementation for Fluka is in development by the ALICE collaboration I. Hrivnacova ROOT 2002 Workshop 11

Available MCs Geant3 VMC Provided within a single package together with Geant321 (Fortran) File structure geant321/*, TGeant3, minicern source code Makefile config platform dependent makefiles lib created at compilation time Geant3 Geometry Browser Provided within TGeant3 http://alisoft.cern.ch/ people/morsch/geant3gui.html Authors: R.Brun, F.Carminati, A. Morsch I. Hrivnacova ROOT 2002 Workshop 12

Geant3 VMC Geant3 Geometry Browser I. Hrivnacova ROOT 2002 Workshop 13

Available MCs Geant4 VMC (1) Provided within a package geant4_vmc Requires Geant4 installation File structure README, history, source, config lib, tmp created at compilation time examples not dependent on Geant4 Access to Geant4 Geant4 classes are not processed by CINT G4 objects are not accessible from Root UI Switching between Root UI and Geant4 UI is available I. Hrivnacova ROOT 2002 Workshop 14

Available MCs Geant4 VMC (2) Geant4 VMC extensions: Geant4 VMC Geometry Browser Analogy to Geant3 Geometry browser Geometry XML Convertor Enables to export Geant4 geometry to XML and then to browse and visualize using GraXML GraXML = Tool for handling HEP experiment Detector Description & Event data in Java 3D (developed for Atlas by J. Hrivnac) Authors: D. Adamova, V. Berejnoi, A. Gheata, I. Hrivnacova I. Hrivnacova ROOT 2002 Workshop 15

Geant4 VMC Geant4 Geometry Browser Visualisation attributes set using G4 VMC commands, setting in browser not (yet) available I. Hrivnacova ROOT 2002 Workshop 16

Geant4 VMC - Geant4 Geometry in GraXML I. Hrivnacova ROOT 2002 Workshop 17

Geant4 VMC Limitations TVirtualMC has been inspired by Geant3 lead to certain difficulties and left Geant4 VMC with some limitations Geant4 VMC geometry is based on G3toG4 tool G3toG4 limitations They have been minimized with Geant4 4.0: Support for reflections Limited support for MANY volumes positions A few more minor limitations None of them a real obstacle for using the VMC More details can be found on VMC web page I. Hrivnacova ROOT 2002 Workshop 18

Examples 2 examples provided in geant4_vmc In spite of being provided within Geant4 VMC, they are built independently and do not require Geant4 installation in case a user wants to run them with Geant3 only Geant4 novice examples N01 and N02 rewritten with usage of Virtual Monte Carlo Implement MC Application and MC Stack Both examples are executed in the same way: cd geant4_vmc/examples/e01 or E02 root root[0].x run_g3.c or run_g4.c I. Hrivnacova ROOT 2002 Workshop 19

Examples E01 Rewritten Geant4 novice example N01 Builds simple geometry, tracks geantino and prints info at each step Classes: Ex01MCApplication, Ex01MCStack, Ex01Particle I. Hrivnacova ROOT 2002 Workshop 20

// skipped // void Ex01MCApplication::Construct Geometry() { //------------------------------ experimental hall (world) Double_t exphall[3]; exphall[0] = 300.; exphall[1] = 100.; exphall[2] = 100.; gmc->gsvolu("exph","box", fimedar, exphall, 3); //------------------------------ a tracker tube Double_t trackertube[3]; trackertube[0] = 0.; trackertube[1] = 60.; trackertube[2] = 50.; gmc->gsvolu("trtu","tube", fimedal, trackertube, 3); Double_t posx = -100.; Double_t posy = 0.; Double_t posz = 0.; gmc->gspos("trtu", 1,"EXPH", posx, posy, posz, 0, "ONLY"); // etc I. Hrivnacova } ROOT 2002 Workshop 21

{ // Load basic libraries groot->loadmacro(../macro/basiclibs.c ); basiclibs(); E01 run_g3.c run_g4.c // Load Geant3 libraries groot->loadmacro(../macro/g3libs.c ); g3libs(); // Load Geant4 libraries groot->loadmacro(../macro/g4libs.c ); g4libs(); // Load this example library gsystem->load("libexample01"); // MC application Ex01MCApplication* appl = new Ex01MCApplication("Example01", "The example01 MC application"); appl->initmc("g3config.c"); appl->initmc("g4config.c"); appl->runmc(1); } I. Hrivnacova ROOT 2002 Workshop 22

E01 g3config.c g4config.c void Config() { new TGeant3("C++ Interface to Geant3"); } void Config() { // RunConfiguration for Geant4 TG4RunConfiguration* runconfiguration = new TG4RunConfiguration(); } // TGeant4 new TGeant4("TGeant4", "The Geant4 Monte Carlo", runconfiguration); I. Hrivnacova ROOT 2002 Workshop 23

Examples E02 Rewritten Geant4 novice example N02 Builds parameterised geometry with magnetic field, draws geometry, tracks proton, registers hits in a tracker and saves hits and kinematics in a Root file Persistence only in VMC (not in the Geant4 example) Classes: Ex02MCApplication, Ex02MCStack, Ex02Particle, Ex02DetectorConstruction, Ex02ChamberParameterisation, Ex02MagneticField, Ex02TrackerSD, Ex02TrackerHit, Ex02RootManager I. Hrivnacova ROOT 2002 Workshop 24

Examples AliRoot AliRoot Framework Integrates simulation, reconstruction and analysis ALICE software Simulation based on Virtual Monte Carlo A complex example of VMC usage Users stay with Geant3 Each detector subsystem has one single package (one directory, one library) Dependence only on STEER No MC specific code I. Hrivnacova ROOT 2002 Workshop 25

Detectors ITS TPC MUON PHOS PMD RICH FMD TOF TRD START ZDC STEER run management interface classes detector base classes data structure base classes AliRoot EVGEN PYTHIA6 HIJING MICROCERN VMC ROOT Geant4 VMC Geant3 VMC Geant4 Geant3 External packages I. Hrivnacova ROOT 2002 Workshop 26

Examples AliRoot Run With Virtual MC Concrete Monte Carlo is selected and loaded dynamically at run time Steps: aliroot The main program creates the application object galice root [0] galice->init( Config.C ); G3 simulation root [0] galice->init( g4config.c ); G4 simulation Application is initialized with either G3 or G4 configuration file that instantiates either G3 or G4 root [1] galice->run(); Simulation run with selected MC I. Hrivnacova ROOT 2002 Workshop 27

Distribution ROOT CVS server mc in root geant3, geant4_vmc 2 new independent modules (parallel with root): cvs -d :pserver:cvs@root.cern.ch:/user/cvs co geant3 cvs -d :pserver:cvs@root.cern.ch:/user/cvs co geant4_vmc ROOT Web http://root.cern.ch/root/vmc/virtualmc.html Distribution of sources: geant321+_vmc.0.1.tar.gz geant4_vmc.0.1.tar.gz I. Hrivnacova ROOT 2002 Workshop 28

Future Fluka VMC In development by ALICE Software Project A. Fasso, E. Futo, I. Gonzalez, F. Carminati, A. Morsch TGeo + VMC It is foreseen to enable VMC geometry definition using the new geometrical modeller in Root R.Brun, A. & M. Gheata I. Hrivnacova ROOT 2002 Workshop 29

Summary VMC allows to run different simulation Monte Carlo from the same user code On the menu today: Geant3, Geant4 In preparation: Fluka The first release of VMC, Geant3+VMC, Geant4 VMC and examples available: http://root.cern.ch/root/vmc/virtualmc.html I. Hrivnacova ROOT 2002 Workshop 30