41
THE SIMULATION- AND ANALYSIS-FRAMEWORK FAIRROOT CHEP 2012, New York

The simulation- and analysis-Framework Fairroot

  • Upload
    uta

  • View
    84

  • Download
    0

Embed Size (px)

DESCRIPTION

The simulation- and analysis-Framework Fairroot. CHEP 2012, New York. Outline. H istory Features New and Recent Projects Time Based Simulation Example Summary and Outlook. FairRoot : timeline. Panda decided to join-> FairRoot: same Base package for different experiments. - PowerPoint PPT Presentation

Citation preview

Page 1: The simulation- and analysis-Framework  Fairroot

THE SIMULATION- AND ANALYSIS-FRAMEWORK FAIRROOTCHEP 2012, New York

Page 2: The simulation- and analysis-Framework  Fairroot

Outline History Features New and Recent Projects Time Based Simulation Example Summary and Outlook

22.05.12

Florian Uhlig CHEP 2012, New York

2

Page 3: The simulation- and analysis-Framework  Fairroot

FairRoot: timeline

22.05.12

Florian Uhlig CHEP 2012, New York

3

Start testing the VMC concept for CBM

First Release of CbmRoot

MPD (NICA) start also using FairRoot

ASYEOS joined(ASYEOSRoot)

GEM-TPC separated from PANDA branch (FOPIRoot)

Panda decided to join->FairRoot: same Base package for different experiments

R3B joined EIC (Electron Ion Collider BNL)EICRoot

2011201020062004

Page 4: The simulation- and analysis-Framework  Fairroot

Developer TeamCore Team: Mohammad Al-Turany GSI-IT 2003 Denis Bertini GSI-IT 2003 Florian Uhlig CBM/IT 2006 Radek Karabowicz PANDA/IT 2008 Dmytro Kresan R3B/IT 2011 Tobias Stockmanns PANDAPeople participatedmajor features: Ilse König HADES Volker Friese CBM

long list of people who

have contributed

pieces of code to FairRoot since the

project started end of 2003

22.05.12

Florian Uhlig CHEP 2012, New York

4

Page 5: The simulation- and analysis-Framework  Fairroot

FairRoot Framework for simulation, reconstruction and data

analysis Very flexible

No executable Use plug-in mechanism from Root to load libraries only

when needed Use Root macros to define the experimental setup or the

tasks for reconstruction/analysis Use Root macros to set the configuration (Geant3, Geant4,

…) No fixed simulation model

Use different simulation models (Geant3, Geant4, …) with the same user code (VMC)

22.05.12

Florian Uhlig CHEP 2012, New York

5

Page 6: The simulation- and analysis-Framework  Fairroot

FairRoot cont. Very flexible

No fixed navigation engine / geometry management Use Root TGeoManager for geometry management

Geometry can be defined using different input formats ASCII files in format inherited from HADES Root files Defined directly in the source code

Use TEve as base for general event display Geometry is described once. Then it can be converted

(VGM) to choose between different MC’s and different navigations

G4 native geometry and navigation G4 native geometry and Root …

22.05.12

Florian Uhlig CHEP 2012, New York

6

Page 7: The simulation- and analysis-Framework  Fairroot

FairRoot cont. Very flexible

No fixed output structure Use a dynamic event structure based on Root TFolder and TTree

which is created automatically Depend on registered data classes

Data output possible after each step Simulation and reconstruction can be done in one go or in several

steps Use runtime data base

Developed for the HADES experiment Decouple parameter handling in FairRoot from parameter storage runtime data base IO to/from

ASCII files Root files Database

22.05.12

Florian Uhlig CHEP 2012, New York

7

Page 8: The simulation- and analysis-Framework  Fairroot

Parameter IO

22.05.12

Florian Uhlig CHEP 2012, New York

8

Generic parameter container parameter object

different versions

nametype: Int_t, Float_t, Double_t, Char_t, Text_t, UChar_t, class typevalue(s)

stored as byte array (RAW or BLOB)number of values (single value or array)class versionstreamer info, root version for ROOT classesown version management

any class derived from TObject decoded in the analysis interface by ROOT streamer

Page 9: The simulation- and analysis-Framework  Fairroot

FairRoot DB

22.05.12

Florian Uhlig CHEP 2012, New York

9

FairRoot

Run ManagerRunTime Database

ASCII FileConfigurationparameters.

IO Manager

Root FileMC-pointsDigits, etc

Root FileConfigurationparameters.

Oracle

triggers onchangingRunId

Init registeredparameter containers

Page 10: The simulation- and analysis-Framework  Fairroot

FairRoot DB extended

22.05.12

Florian Uhlig CHEP 2012, New York

10

FairRoot

Run ManagerRunTime Database

ASCII FileConfigurationparameters.

IO Manager

Root FileMC-pointsDigits, etc

Root FileConfigurationparameters.

TSQLServerOracle

Postgresql

MySQL

DB Interface

Page 11: The simulation- and analysis-Framework  Fairroot

Version management

22.05.12

Florian Uhlig CHEP 2012, New York

11

Detector

Time

Version

Validity time range (UTC)

STT CALMVD CAL

MVD TEMP

The Query process1. Context (Timestamp,Detector,Version) is the primary key2. Context converted to unique SeqNo3. SeqNo used as keys to access all rows in main table4. System gives user access of all such rows

Page 12: The simulation- and analysis-Framework  Fairroot

Proof in FairRoot PROOF - Parallel ROOt Facility. It allows parallel processing of large amount of data. The output

results can be directly visualized (e.g. the output histogram can be drawn at the end of the proof session).

The data which you process with PROOF can reside on your computer, PROOF cluster disks or grid.

The usage of PROOF is transparent: you use the same code you are running locally on your computer.

No special installation of PROOF software is necessary to execute your code: PROOF is included in ROOT distribution.

Proof runs on computing clusters as well as on your local many core computer

22.05.12

Florian Uhlig CHEP 2012, New York

12

Page 13: The simulation- and analysis-Framework  Fairroot

Trivial parallelism

22.05.12

Florian Uhlig CHEP 2012, New York

13

Sequentialprocessing

data

Event 1Event 2Event 3Event 4Event 5Event 6Event 7Event 8Event 9Event 10Event 11Event 12

results

Unorderedprocessing

data

Event 3Event 2Event 1Event 4Event 5Event 8Event 9Event 7Event 6Event 12Event 11Event 10

results results

data 1

Event 1Event 2Event 3Event 4

results 1

data 2

Event 5Event 6Event 7Event 8

results 2

data 3

Event 9Event 10Event 11Event 12

results 3

Parallelprocessing

==

= =Σ

+ +

In FairRoot change one line in the macro to use it:

FairRunAna *fRun = new FairRunAna(); To

FairRunAna *fRun = new FairRunAna(“proof”);

Page 14: The simulation- and analysis-Framework  Fairroot

Proof on Demand

22.05.12

Florian Uhlig CHEP 2012, New York

14

PoD: Anar Manafov, GSI ([22] 21/05; [21] Postersession 1)

Page 15: The simulation- and analysis-Framework  Fairroot

GPU support in FairRoot• CUDA is fully integrated into the

FairRoot build system• CMake creates shared libraries for

cuda part• FairCuda is a class which wraps CUDA

implemented functions so that they can be used directly from ROOT CINT or compiled code

See talk of Mohammad Al-Turany [353] 24/05, 5.25PM, Room 905/907 22.05.1

2Florian Uhlig CHEP

2012, New York

15

Page 16: The simulation- and analysis-Framework  Fairroot

Radiation length info FairRadLenManager

22.05.12

Florian Uhlig CHEP 2012, New York

16

Example: Contributions of different Functional parts of the PANDA MVD to the overall material budget

Page 17: The simulation- and analysis-Framework  Fairroot

Dose studiesFairRadMapManager

22.05.12

Florian Uhlig CHEP 2012, New York

17

What energy dose will be accumulated during a certain time of operation?

Create all physical volumes with correct material assignment

Run the simulation engine FairRadMapManager will sum up every deposited

energy in each volume in the geometry

Page 18: The simulation- and analysis-Framework  Fairroot

Dose studiesFairRadGridManager

22.05.12

Florian Uhlig CHEP 2012, New York

18

Determine the particle fluency through a certain boundary (surface) and deduce a map. Knowing the volume and density of the object of interest and the specific energy loss doses can be estimated

Page 19: The simulation- and analysis-Framework  Fairroot

FairRoot for real data FairRoot was designed from the beginning to

combine simulation and analysis in one tool. Using the same internal structure the user

can compare easily at any time/level the real data with the simulation

22.05.12

Florian Uhlig CHEP 2012, New York

19

Reconstructed Beam EVENT

The large GEM-TPC PrototypeL. Fabbietti for the GEM-TPC Collaboration

Page 20: The simulation- and analysis-Framework  Fairroot

NeuLAND: The High Resolution Neutron Time-of-Flight Spectrometer for R3B

22.05.12

Florian Uhlig CHEP 2012, New York

20

Comparison of LAND response to neutrons from 170 to 1050 MeV from experiment (black lines) and from R3BRoot simulations (red lines).

Page 21: The simulation- and analysis-Framework  Fairroot

Triggered Experiment

• Use SHIP (Separator for Heavy Ion reaction products) as example

• If particle enters detector region the data tacking is triggered

• When DAQ reads out the detectors everything belongs to this event

22.05.12

Florian Uhlig CHEP 2012, New York

21

Page 22: The simulation- and analysis-Framework  Fairroot

Triggered Experiment

22.05.12

Florian Uhlig CHEP 2012, New York

22

Page 23: The simulation- and analysis-Framework  Fairroot

Triggered Experiment

22.05.12

Florian Uhlig CHEP 2012, New York

23

Page 24: The simulation- and analysis-Framework  Fairroot

The Challenge

• Central events have up to 1000 charged particles inside acceptance

• Looking for rare probes require events rates up to 107 per second

• Complicated trigger signature

• Searching for secondary vertex requires reconstruction of a large part of the event

22.05.12

Florian Uhlig CHEP 2012, New York

24

Page 25: The simulation- and analysis-Framework  Fairroot

The Challenge

• Central events have up to 1000 charged particles inside acceptance

• Looking for rare probes require events rates up to 107 per second

• Complicated trigger signature

• Searching for secondary vertex requires reconstruction of a large part of the event

• Conventional hardware trigger not feasible: no dead time allowed

• Self-triggered autonomous front-ends pushing time-stamped data forwards to DAQ

D0

K-

π+

22.05.12

Florian Uhlig CHEP 2012, New York

25

Page 26: The simulation- and analysis-Framework  Fairroot

The Challenge

Necessary to test this in simulation22.05.12

Florian Uhlig CHEP 2012, New York

26

Page 27: The simulation- and analysis-Framework  Fairroot

Task for FairRoot

22.05.12

Florian Uhlig CHEP 2012, New York

27

Page 28: The simulation- and analysis-Framework  Fairroot

Time based simulation Provide functionality for the tasks “event

mixing” in the digitization stage and “time sorting” in the reconstruction stage

Generator 1

EventGenerator

N

…Transpor

tSimulati

on

Digitizer Buffer

SorterClusterFinder

HitFinder

TrackFinder

22.05.12

Florian Uhlig CHEP 2012, New York

28

Page 29: The simulation- and analysis-Framework  Fairroot

Event Time

The absolute event time is calculated by the frameworkExperiments define functions for event time calculationTime of detector digi is this absolute time + the time inside the MC event

22.05.12

Florian Uhlig CHEP 2012, New York

29

Page 30: The simulation- and analysis-Framework  Fairroot

FairWriteoutBuffer Base class to store detector data (digis) between

events Buffer stores data together with absolute time until

this data is active and can be influenced by later events This time is detector dependent and is defined

individually If the same detector element is hit at a later time the

data can be/is modified Modifications are detector and electronics dependent

Result is a randomized data stream which is stored in a TClonesArray which would be the input to the DAQ

22.05.12

Florian Uhlig CHEP 2012, New York

30

Page 31: The simulation- and analysis-Framework  Fairroot

Randomized Digi DataSame color

= same event

Array index22.05.12

Florian Uhlig CHEP 2012, New York

31

Page 32: The simulation- and analysis-Framework  Fairroot

Sorter – Technical Implementation

0-Element Pointer

Number of storage cells given by the spread of the time stamps within the data stream

Width of one storage cell given by time resolution of detector Storage Pointer

position calculated numerically from time stamp

If a storage position is calculated which would override old data, the old data is saved to disk and the storage cell is freed

22.05.12

Florian Uhlig CHEP 2012, New York

32

Page 33: The simulation- and analysis-Framework  Fairroot

Sorted Digi Data

Array index22.05.12

Florian Uhlig CHEP 2012, New York

33

Page 34: The simulation- and analysis-Framework  Fairroot

Sorted Digi Data

Array index22.05.12

Florian Uhlig CHEP 2012, New York

34

Page 35: The simulation- and analysis-Framework  Fairroot

Task for ExperimentsEvent Builder

22.05.12

Florian Uhlig CHEP 2012, New York

35

Page 36: The simulation- and analysis-Framework  Fairroot

Read back the DataEventbuilder

Read data from IO Manager using different functions

Different algorithms already available Read data up to a given absolute time Read data in a given time window Read data until next time gap of certain

size Other algorithms can be (easily)

implemented if needed

22.05.12

Florian Uhlig CHEP 2012, New York

36

Page 37: The simulation- and analysis-Framework  Fairroot

Example: Rutherford Experiment Scattering of 5MeV alpha particles at a 2μm

gold foil Unexpected large scattering angles observed Implementation using FairRoot needs

600 lines of c++ source code created mostly automatically (copied from a template)

60 lines of code for the build system 200 lines of code for the steering macros 70 lines of code for the geometry and media

definition

22.05.12

Florian Uhlig CHEP 2012, New York

37

Page 38: The simulation- and analysis-Framework  Fairroot

Rutherford Experiment

• Change experimental setup

• Change material properties

• Change simulation engine

• Change physical processes

22.05.12

Florian Uhlig CHEP 2012, New York

38

Page 39: The simulation- and analysis-Framework  Fairroot

Summary and Outlook Hope I could show you that FairRoot

is flexible is easy to use is easy to extend

Special tools to do dose studies Tools for time based simulation are implemented

Calculation of event time Mixing of events by automatic buffering and write

out when needed Fast sorting of data Several event builder functions

22.05.12

Florian Uhlig CHEP 2012, New York

39

Page 40: The simulation- and analysis-Framework  Fairroot

Summary and Outlook Many more topics only touched or not showed at

all Proof integration Database connectivity GPU usage inside of FairRoot Build and test system …

Resources Webpage: http://fairroot.gsi.de Forum: http://forum.gsi.de Test Dashboard: http://cdash.gsi.de/CDash

22.05.12

Florian Uhlig CHEP 2012, New York

40

Page 41: The simulation- and analysis-Framework  Fairroot

FairRoot related talks and poster [606] Future Experiments and Impact on

Computing [394] Event reconstruction in the

PandaRoot framework [353] Track finding and fitting on GPUs,

first steps toward a software trigger [40] STEPtoRoot – from CAD to monte

carlo simulations [399] Electron reconstruction and

identification capabilities of the CBM Experiment at FAIR 22.05.1

2Florian Uhlig CHEP

2012, New York

41