Introduction to Geant4

Similar documents
INTRODUCTION TO THE ANAPHE/LHC++ SOFTWARE SUITE

Offline Tutorial I. Małgorzata Janik Łukasz Graczykowski. Warsaw University of Technology

A Prototype of the CMS Object Oriented Reconstruction and Analysis Framework for the Beam Test Data

Monte Carlo programs

A Short Course on Geant4 Simulation Toolkit. How to learn more?

IEPSAS-Kosice: experiences in running LCG site

SLHC-PP DELIVERABLE REPORT EU DELIVERABLE: Document identifier: SLHC-PP-D v1.1. End of Month 03 (June 2008) 30/06/2008

GlueX Computing GlueX Collaboration Meeting JLab. Edward Brash University of Regina December 11 th -13th, 2003

ConCert FAQ s Last revised December 2017

Invenio: A Modern Digital Library for Grey Literature

The IDN Variant TLD Program: Updated Program Plan 23 August 2012

Software Architecture

GRIDS INTRODUCTION TO GRID INFRASTRUCTURES. Fabrizio Gagliardi

Implementing Problem Resolution Models in Remedy

The full detector simulation for the ATLAS experiment: status and outlook

The ATLAS Trigger Simulation with Legacy Software

New software library of geometrical primitives for modeling of solids used in Monte Carlo detector simulations

A new method of The Monte Carlo Simulation based on Hit stream for the LHAASO

GAUDI - The Software Architecture and Framework for building LHCb data processing applications. Marco Cattaneo, CERN February 2000

PROJECT FINAL REPORT. Tel: Fax:

The GEANT4 toolkit. Alessandro De Angelis. L Aquila, September University of Udine and INFN Trieste

DAC EVALUATION INVENTORY AS A POTENTIAL KNOWLEDGE BUILDING TOOL. Submitted by Canada

JSR 358 Progress Report. June 11, 2013

STRATEGY ATIONAL. National Strategy. for Critical Infrastructure. Government

Simulation Techniques Using Geant4

The Global Voice of the Lighting Industry

ATLAS NOTE. December 4, ATLAS offline reconstruction timing improvements for run-2. The ATLAS Collaboration. Abstract

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802

Applying STEP Principles to Product Models in High Energy Physics Research

Screen Saver Science: Realizing Distributed Parallel Computing with Jini and JavaSpaces

Geant4 simulation in a distributed computing environment

Contents. Today's Topic: Introduction to Operating Systems

Review of the Compact Muon Solenoid (CMS) Collaboration Heavy Ion Computing Proposal

LESSON PLAN SUB NAME : OBJECT ORIENTED ANALYSIS AND DESIGN UNIT SYLLABUS

Data Governance Central to Data Management Success

FAMOS: A Dynamically Configurable System for Fast Simulation and Reconstruction for CMS

CMS Simulation Software

Design Patterns for Description-Driven Systems

Building an Assurance Foundation for 21 st Century Information Systems and Networks

DEVELOPING DECISION SUPPORT SYSTEMS A MODERN APPROACH

ASG WHITE PAPER DATA INTELLIGENCE. ASG s Enterprise Data Intelligence Solutions: Data Lineage Diving Deeper

The BABAR Database: Challenges, Trends and Projections

On the EGI Operational Level Agreement Framework

Simulation and Physics Studies for SiD. Norman Graf (for the Simulation & Reconstruction Team)

Conference The Data Challenges of the LHC. Reda Tafirout, TRIUMF

A PROPOSAL FOR MODELING THE CONTROL SYSTEM FOR THE SPANISH LIGHT SOURCE IN UML

An open letter to Mindjet regarding problems with MindManager 9

European Standards & Community Specifications

Virtualizing a Batch. University Grid Center

Technology in Action. Chapter Topics. Scope creep occurs when: 3/20/2013. Information Systems include all EXCEPT the following:

ATLAS Tracking Detector Upgrade studies using the Fast Simulation Engine

EUROINDICATORS WORKING GROUP. Demetra+, a new seasonal adjustment tool 12 TH MEETING 3 RD & 4 TH DECEMBER 2009 EUROSTAT D5 DOC 287/09

Towards Semantic Interoperability between C2 Systems Following the Principles of Distributed Simulation

DatAlign IMPLEMENTATION OF THE NEW APS SURVEY AND ALIGNMENT DATABASE *

GOVERNANCE, RISK MANAGEMENT AND COMPLIANCE TRENDS BY FCPAK ERIC KIMANI

DQpowersuite. Superior Architecture. A Complete Data Integration Package

Geant4 Computing Performance Benchmarking and Monitoring

Test & Analysis Project aka statistical testing

Muon Collider Input ideas and proposals for the European Strategy Update

An approach to calculate and visualize intraoperative scattered radiation exposure

SENIOR DESIGN PROJECT. Project name: Sharewood. High-Level Design Report. Project Group Member Names: Merve Sezer. Evrim Şay.

Enterprise GRC Implementation

Integration of Software Packages with Different Programming Paradigms, Exemplified by a Ship Model Generating Tool

Status and plan for the hadron therapy simulation project in Japan

GoldSim: Using Simulation to Move Beyond the Limitations of Spreadsheet Models

PROCEDURE FOR THE DEVELOPMENT OF EURACHEM GUIDANCE. Contents

Signavio Process Manager. Collaborative process design for the entire organization

3. LABOR CATEGORY DESCRIPTIONS

Suez: Job Control and User Interface for CLEO III

PID System for eresearch

Design Patterns. Gunnar Gotshalks A4-1

PTSPAS Product Assessment HAPAS Equivalent in accordance with MCHW SHW Volume 1 Clause and

User Documents and Examples I. Geant4 Tutorial at Jefferson Lab 9 July 2012 Dennis Wright

2017 ICANN-IETF MoU Supplemental Agreement Introduction

ISTITUTO NAZIONALE DI FISICA NUCLEARE

An Object-Oriented HLA Simulation Study

History of NERC August 2013

ISO/IEC INTERNATIONAL STANDARD

Evaluation of the computing resources required for a Nordic research exploitation of the LHC

Software Development Methodologies

How Turner Broadcasting can avoid the Seven Deadly Sins That. Can Cause a Data Warehouse Project to Fail. Robert Milton Underwood, Jr.

Particle Track Reconstruction with Deep Learning

GOARN s role in the SEARO Regional Framework on Operational Partnerships for Emergency Response

CCSDS STANDARDS A Reference Model for an Open Archival Information System (OAIS)

ENISA s Position on the NIS Directive

Developing Software Applications Using Middleware Infrastructure: Role Based and Coordination Component Framework Approach

BPS Suite and the OCEG Capability Model. Mapping the OCEG Capability Model to the BPS Suite s product capability.

Introduction to Operating System. Dr. Aarti Singh Professor MMICT&BM MMU

Accelerate Your Enterprise Private Cloud Initiative

IMS Evolution. IMS database

NDIS Quality and Safeguards Commission. Incident Management System Guidance

Dated 3 rd of November 2017 MEMORANDUM OF UNDERSTANDING SIERRA LEONE NATIONAL ehealth COORDINATION HUB

TECHNICAL SPECIFICATION

Monitoring the software quality in FairRoot. Gesellschaft für Schwerionenforschung, Plankstrasse 1, Darmstadt, Germany

Monte Carlo Production on the Grid by the H1 Collaboration

PREPARE FOR TAKE OFF. Accelerate your organisation s journey to the Cloud.

Cross Community Working Group (CWG) To Develop An IANA Stewardship Proposal. On Naming Related Functions. Discussion Document for ICANN52 Singapore

KEYWORD. Manufacturing, simulation, architectures, HLA, standards ABSTRACT

ICIS PROJECT #2 CONNECTING SPECIFICATIONS AND BIM SUB-PROJECT #2

Design and Evolution of an Agent-Based CASE System for OOAD

Transcription:

Introduction to Geant4 Release 10.4 Geant4 Collaboration Rev1.0: Dec 8th, 2017

CONTENTS: 1 Geant4 Scope of Application 3 2 History of Geant4 5 3 Overview of Geant4 Functionality 7 4 Geant4 User Support 9 5 Software Knowledge Required to Use the Geant4 Toolkit 11 6 Computing Environment Required by the Geant4 Toolkit 13 7 Status of this Document 15 i

ii

Introduction to Geant4, Release 10.4 Scope of this Document This guide is a basic introduction to Geant4 suitable for a novice user. CONTENTS: 1

Introduction to Geant4, Release 10.4 2 CONTENTS:

CHAPTER ONE GEANT4 SCOPE OF APPLICATION Geant4 is a free software package composed of tools which can be used to accurately simulate the passage of particles through matter. All aspects of the simulation process have been included in the toolkit: the geometry of the system, the materials involved, the fundamental particles of interest, the generation of primary events, the tracking of particles through materials and electromagnetic fields, the physics processes governing particle interactions, the response of sensitive detector components, the generation of event data, the storage of events and tracks, the visualization of the detector and particle trajectories, and the capture and analysis of simulation data at different levels of detail and refinement. Users may construct stand-alone applications or applications built upon another object-oriented framework. In either case the toolkit will support them from the initial problem definition to the production of results and graphics for publication. To this end, the toolkit includes: user interfaces, built-in steering routines, and command interpreters which operate at every level of the simulation. At the heart of Geant4 is an abundant set of physics models to handle the interactions of particles with matter across a very wide energy range. Data and expertise have been drawn from many sources around the world and in this respect, Geant4 acts as a repository which incorporates a large part of all that is known about particle interactions. Geant4 is written in C++ and exploits advanced software-engineering techniques and object-oriented technology to achieve transparency. For example, the way in which cross sections are input or computed is separated from the way in which they are used or accessed. The user can overload both of these features. Similarly, the computation of the final state can be divided into alternative or complementary models, according to the energy range, the particle type, and the material. To build a specific application the user-physicist chooses from among these options and implements code in user action classes supplied by the toolkit. A serious problem with previous simulation codes was the difficulty of adding new or variant physics models; development was difficult due to the increased size, complexity and interdependency of the procedure-based code. In contrast, object-oriented methods help manage complexity and limit dependencies by defining a uniform interface and common organizational principles for all physics models. Within this framework the functionality of models can be more easily recognized and understood, and the creation and addition of new models is a well-defined procedure that entails little or no modification to the existing code. 3

Introduction to Geant4, Release 10.4 4 Chapter 1. Geant4 Scope of Application

CHAPTER TWO HISTORY OF GEANT4 These ideas first appeared in two studies done independently at CERN and KEK in 1993. Both groups sought to investigate how modern computing techniques could be applied to improve the existing FORTRAN based Geant3 simulation program. Activities were merged in the fall of 1994 and a formal proposal, RD44, to construct an entirely new program based on object-oriented technology was submitted to CERN s Detector Research and Development Committee. The initiative grew to become a large international collaboration of physicist programmers and software engineers from a number of institutes and universities participating in a range of high-energy physics experiments in Europe, Japan, Canada and the United States. The objective was to write a detector simulation program which had the functionality and flexibility necessary to meet the requirements of the next generation of subatomic physics experiments. The initial scope quickly widened when it became apparent that such a tool would also benefit the nuclear, accelerator, space and medical physics community, with more individuals joining from these fields of science. The RD44 project represented a pioneering effort in redesigning a major CERN software package for a modern objectoriented (OO) environment based on C++. The R&D phase was completed in December 1998 with the delivery of the first production release. The collaboration was subsequently renamed Geant4 and reinstated on the basis of a formal Memorandum of Understanding (MoU) signed by many of the same national institutes, laboratories and large HEP experiments who participated in RD44. The agreement addresses the program management, maintenance and user support during the production phase and the continued development and refinement of the toolkit. It is subject to tacit renewal every two years and sets out a collaboration structure defined by a Collaboration Board (CB), a Technical Steering Board (TSB) and several working groups. In February 2006 a new MoU came into effect and CB and TSB were renamed to Oversight Board (OB) and Steering Board (SB) respectively. The collaboration now profits from the accumulated experience of many contributors to the field of Monte Carlo simulation of physics detectors and physical processes. While geographically distributed software development and large-scale object-oriented systems are no longer a novelty, Geant4, in terms of the size and scope of the code and the number of contributors, may well represent the largest and most ambitious project of its kind outside the corporate world. A clean overall problem decomposition has led to a clear hierarchical structure of domains. Every section of the Geant4 software, which corresponds to a releasable component (library), is individually managed by a working group of experts. In addition, there is a working group for each of the activities: testing and quality assurance, software management and documentation management. A release coordinator heads each group. This consequent distribution of responsibility among a relative large number of people permits a support structure whereby outside users can address questions directly to the appropriate expert. 5

Introduction to Geant4, Release 10.4 6 Chapter 2. History of Geant4

CHAPTER THREE OVERVIEW OF GEANT4 FUNCTIONALITY The Geant4 class category diagram is shown in Fig. 3.1. Fig. 3.1: Geant4 class categories 7

Introduction to Geant4, Release 10.4 Categories at the bottom of the diagram are used by virtually all higher categories and provide the foundation of the toolkit. The global category covers the system of units, constants, numerics and random number handling. The two categories: materials particles implement facilities necessary to describe the physical properties of particles and materials for the simulation of particle-matter interactions. The geometry module offers the ability to describe a geometrical structure and propagate particles efficiently through it. Above these reside categories required to describe the tracking of particles and the physical processes they undergo. The track category contains classes for tracks and steps, used by the processes category, which contains implementations of models of physical interactions: electromagnetic interactions of leptons, photons, hadrons and ions, and hadronic interactions. All processes are invoked by the tracking category, which manages their contribution to the evolution of a track s state and provides information in sensitive volumes for hits and digitization. Above these the event category manages events in terms of their tracks and the run category manages collections of events that share a common beam and detector implementation. A readout category allows the handling of pile-up. Finally capabilities that use all of these categories and connect to facilities outside the toolkit through abstract interfaces, provide visualization, persistency and user interface capabilities. 8 Chapter 3. Overview of Geant4 Functionality

CHAPTER FOUR GEANT4 USER SUPPORT The collaboration offers support for Geant4, providing assistance with problems relating to the code, consultation on using the toolkit, and response to enhancement requests. A user can also expect assistance in investigating aberrant results. Users of the software who encounter a problem in running the code can use an Internet-based problem reporting system. The system is open to all users. It is set up automatically to assign problem reports to the responsible person according to the category affected. The contact person may then respond directly or forward it to a colleague. This system is a customized version of the open source reporting tool Bugzilla. Besides routing the problem to specialists, it tracks and documents the responses until the problem is resolved. New requirements, such as requests for new functionality, are presented to and decided by the Steering Board (SB). The SB sets the priorities and agrees on time-scales for the fulfillment of new requirements. Such support is guaranteed to collaboration members, while requests from non-members are handled on a best effort basis. For each member organisation a contact person (SB member) has been designated who acts as a first reference for Geant4 users in that locality, which may include affiliated institutions, user groups, and others in the same geographic area. The contact person will respond to enquiries, help resolve simple problems, and forward more specialized queries to the relevant expert(s). Beyond that, a list of frequently asked questions (FAQs), and an internet-based user forum complete the available Geant4 user support. 9

Introduction to Geant4, Release 10.4 10 Chapter 4. Geant4 User Support

CHAPTER FIVE SOFTWARE KNOWLEDGE REQUIRED TO USE THE GEANT4 TOOLKIT In general, there are three types of users: the end user, the application programmer, and for large simulation tasks: the framework provider. The end user runs the simulation program by controlling run time parameters. The interface with the program may be a graphical user interface, an interactive command line interface, or the macro-based system for batch. The end user needs a basic knowledge of how to control the program flow but does not necessarily have to know object-oriented programming or C++. The application programmer is central to any simulation task. A firm knowledge of C++ is required to implement code in user action classes to specify, at a minimum, the detector description, the relevant particles and physics processes, and the initial event kinematics. A manual for the application programmer is found in the User s Guide: For Application Developers. Using standard components of Geant4, a framework provider would add interfaces to external tools, such as for example, to Computer Aided Design (CAD) programs, Object-Oriented Data Base Management Systems (ODBMS) and graphics systems. This requires the development of new classes overloading standard Geant4 functionality and hence a solid understanding of object-oriented Programming. A manual for the framework provider is found in the User s Guide: For Toolkit Developers. References All user documentation can be found on the Geant4 homepage (http://cern.ch/geant4). References for Object-Oriented Technology: Grady Booch, Object-Oriented Analysis and Design with Applications The Benjamin/Cummings Publishing Co. Inc, 1994, ISBN 0-8053-5340-2 R.C.Martin, Designing Object-Oriented C++ Applications Using The Booch Method, Prentice Hall 1995, ISBN 0-13-203837-4; E. Gamma, et al., Design Patterns - Elements of Reusable Object-Oriented Software, Addison Wesley 1995, ISBN 0-201-63361-2; References for C++: B.Stroustrup, C++ Programming Language 3rd Edition, Addison Wesley, ISBN: 0-201-88954-4 I.Pohl, Object-Oriented Programming Using C++, 2nd Edition, Addison Wesley, ISBN: 0-201-89550-1. 11

Introduction to Geant4, Release 10.4 12 Chapter 5. Software Knowledge Required to Use the Geant4 Toolkit

CHAPTER SIX COMPUTING ENVIRONMENT REQUIRED BY THE GEANT4 TOOLKIT The Geant4 toolkit is available for a variety of operating systems: flavors of UNIX, Linux, Mac OS X, and Windows systems. In order to link and build the program only two underlying software packages are mandatory: CLHEP (Class Library of High Energy Physics) and the STL (Standard Template Library for fundamental classes like C++ containers and strings). The Geant4 source code is available from the Geant4 web pages while CLHEP is available from the CLHEP Home Page. For details on setting up the computing environment see the Installation Guide. 13

Introduction to Geant4, Release 10.4 14 Chapter 6. Computing Environment Required by the Geant4 Toolkit

CHAPTER SEVEN STATUS OF THIS DOCUMENT An introduction to the Geant4 Toolkit. Rev 1.0: First sphinx version implemented for Geant4 Release 10.4, 8th Dec 2017 15