Title: Simulation
1Simulation Analysis Software Development in
IT/GSI
- Mohammad Al-Turany (IT-GSI)
- Denis Bertini (IT-GSI)
2Overview
- CbmRoot new developments
- Fluka integrated
- Grid
- CbmRoot as alternative Framework for PANDA
- QtRoot application
- Summary
3CbmRoot Features
- The same framework can be used for Simulation and
Analysis - Fully ROOT based
- VMC for simulation
- IO scheme (TChain, friend TTrees, TFolders ) for
persistency - TTask to organize the analysis data flow
- Completely configurable via ROOT macros
- Easy to maintain (only ROOT standard services are
used) - Geometry / navigation system models
- G3/G4 Native geometrical models
- Geometry Modeller (TGeoManager) ( G3/FLUKA G4?)
4Virtual Monte Carlo (VMC)
5CbmRoot Simulation
ROOT
Geant3
Geometry Manager
Virtual MC
Geant4
FLUKA
Magnet
Target
IO Manager
Run Manager
GeoInterface
PIPE
RunTime DataBase
Cave
Module
Primary Generator
Magnetic Field
STS
Root files Configuration, Parameters, Geometry
Detector
TRD
EVGEN
Tasks
TOF
Particle Generator
RICH
Pluto
Field Map
ASCII
ECAL
Urqmd
6CbmRoot Analysis
Root files MCPoints, Hits, Digits, Tracks
ROOT
Geometry Manager
IO Manager
Run Manager
GeoInterface
RunTime DataBase
Module
Primary Generator
Magnetic Field
Root files Configuration, Parameters, Geometry
Detector
EVGEN
Tasks
Delta
Tracking
digitizers
7CbmRoot MC engines
- TGeant3
- Stable (used as a Reference)
- Navigation system ( TGeoManager )
- TGeant4
- Update to Geant4.8.0
- Full CBM simulation possible ( including
Cerenkov) - New Developments
- Integration of G4 native primary generators
- Direct use of G4 native geometry ( no conversion
) - TFluka
- Integrated in CbmRoot
- On-going Developments/tests with ALICE/CERN and
INFN (Pavia)
8What is Fluka?
- FLUKA Particle Transport Monte Carlo Code
- Has evolved since long into a mature system.
- Evolution based on thorough physics validation.
- Almost unique capabilities for simulating
hadronic interactions including low-energy
neutron transport - Its state of the art physics capabilities
comprise - Hadron-hadron, hadron-nucleus, and gamma-nucleus
interactions 0-104 TeV - Nucleus-nucleus interactions 0-104 TeV/n (RQMD,
DPMJETIII) - Electromagnetic and µ interactions 1 keV-104 TeV
- Neutrino interactions and nucleon decays
- FLUKA has proven capabilities in
- Accelerator design and shielding (standard tool
at CERN for beam-machine and Radioprotection
studies - Dosimetry and hadro-therapy
- Space radiation and cosmic ray showers in the
atmosphere (Support by NASA, de facto standard
tool for all aircraft dosimetry studies in
Europe)
9Interface to FLUKAGeometry and Navigation
idnrwr g1wr g1rtwr conhwr inihwr jomiwr lkdbwr lkf
xwr lkmgwr lkwr nrmlwr rgrpwr isvhwr magfld
TVirtualMC
TFluka
User Application
TGeo
(1) Geometry Definition
FLUKA
(2) Navigation
Interface implemented by A. Gheata
10Interface to FLUKA Physics Configuration
TVirtualMC
TFluka
User Application
Text Input
Generated from C Macros
FLUKA
11TGeo -gt Fluka input file
- MATERIALS
.......1........2......
..3........4........5........6........7...MA
TERIAL 1.0 1.008 9.990e-01 3.0
HYDROGENMATERIAL 6.0
12.011 9.990e-01 4.0
CARBON MATERIAL 9.0 18.998
9.990e-01 5.0
FLUORINEMATERIAL 13.0 26.982
9.990e-01 6.0
ALUMINUMMATERIAL 14.0 28.085
9.990e-01 7.0 SILICON
MATERIAL 26.0 55.845 9.990e-01
8.0 IRON MATERIAL
79.0 196.967 9.990e-01 9.0
GOLD MATERIAL
3.750e-03 10.0 AIR
COMPOUND -0.235407 4.0 -0.019758
3.0 -0.744835 5.0AIR
ROOT Macro to Define Materials and Geometry
//--- define some materials TGeoMaterial
matVacuum new TGeoMaterial("Vacuum", 0,0,0)
TGeoMaterial matAl new TGeoMaterial("Al",
26.98,13,2.7) //--- define some media
TGeoMedium Vacuum new TGeoMedium("Vacuum",1,
matVacuum) TGeoMedium Al new
TGeoMedium("Root Material",2, matAl) //
Define the geometry using TGeo Class TGeoVolume
cave geom-gtMakeBox("cave", Vacuum, 25., 25.,
5.) cave-gtSetVisibility(kFALSE)
TGeoVolume pipe geom-gtMakeBox("pipe", Al, 5.,
20., 5.) pipe-gtSetLineColor(kBlue)
Top-gtAddNode(pipe, 1, cave) TGeoVolume
pipe_vac geom-gtMakeBox("pipe_vac", Al, 17.5,
5., 5.) pipe_vac-gtSetLineColor(kBlue)
Top-gtAddNode(pipe_vac, 1, pipe)
TGEO MATERIAL ASSIGNMENTS
.......1........2....
....3........4........5........6........7...
Assigning material air to Volume
caveASSIGNMAT 10.0 1.0 0.0
0.0 0.0 0.0 Assigning material
carbon to Volume pipe1ASSIGNMAT 11.0
2.0 0.0 0.0 1.0
0.0 Assigning material vacuum to Volume
pipevac1ASSIGNMAT 2.0 3.0
0.0 0.0 1.0 0.0
12Physic config. input file
ROOT Macro for Fluka Physics process control
Fluka input file
- void Config() // Set Random Number seed
gRandom-gtSetSeed(12345)TFluka gMC new
TFluka("C Interface to Fluka", 0) // Physics
process control gMC-gtSetProcess("DCAY",1)
gMC-gtSetProcess("PAIR",1) gMC-gtSetProcess("COMP
",1) gMC-gtSetProcess("PHOT",1)
gMC-gtSetProcess("PFIS",0) gMC-gtSetProcess("DRAY
",1) gMC-gtSetProcess("ANNI",1)
gMC-gtSetProcess("BREM",1) gMC-gtSetProcess("MUNU
",1) gMC-gtSetProcess("CKOV",1)
gMC-gtSetProcess("HADR",1) gMC-gtSetProcess("LOSS
",2) gMC-gtSetProcess("MULS",1)
gMC-gtSetProcess("RAYL",1)
Float_t cut 1.e-3 // 1MeV cut
by default Float_t tofmax 1.e10
gMC-gtSetCut("CUTGAM", cut)
gMC-gtSetCut("CUTELE", cut) gMC-gtSetCut("CUTNEU"
, cut) gMC-gtSetCut("CUTHAD", cut)
gMC-gtSetCut("CUTMUO", cut) gMC-gtSetCut("BCUTE",
cut) gMC-gtSetCut("BCUTM", cut)
gMC-gtSetCut("DCUTE", cut) gMC-gtSetCut("DCUTM",
cut) gMC-gtSetCut("PPCUTM", cut)
gMC-gtSetCut("TOFMAX", tofmax)
Global process and cut settings --- DCAY
--- Decays. Flag 1 Decays are on by
default --- PAIR --- Pair production by
gammas, muons and hadrons. Flag 1, PPCUTM
0.001, PPCUTE 0.001EMFCUT
0.0 0.0 0 3.0 15.0
1.0PHOT-THR BREM --- Bremsstrahlung
by muons/hadrons. Flag -1, BCUTM
0.001 PAIRBREM 3.0 0 0.001
3.0 15.0 --- COMP --- Compton
scattering Flag 1 EMFCUT 0.0
0.0 0.0 3.0 15.0
1.0PHOT-THR --- PHOT --- Photoelectric
effect. Flag 1EMFCUT 0
0 0 3.0 15.0
1.0PHOT-THR --- PFIS --- Photonuclear
interaction Flag 0PHOTONUC -1.0
0.0 0.0 3.0 15.0
1.0 --- ANNI --- Positron annihilation. Flag
1 EMFCUT 0.0 0.0 0.0
3.0 15.0 1.0ANNH-THR ---
MUNU --- Muon nuclear interaction. Flag
1MUPHOTON 1.0 0.250 0.750
3.0 15.0 1.0 --- HADR --- Hadronic
interactions. Flag 1Hadronic
interaction is ON by default in FLUKA ---
MULS --- Muliple Scattering. Flag
1Multiple scattering is ON by default in
FLUKA --- RAYL --- Rayleigh Scattering. Flag
1
13G3/FLUKA Differences in Stepping Behavior
Sensitive Volume
2
1
Geant 3 1 entering 1 exiting 2 entering 2
exiting
FLUKA 1 entering 1 disappeared 2 entering 2
exiting 1 entering 1exiting
Comparison at Digits levels
2 hits 3 hits
14Electron transport in thin layers Al-Au-Al
- 1000 electrons at 1 MeV, EM cascades
- Same final random number after simulations with
FLUKA native and TFluka - The same for all 3 tested examples
15CbmRoot on the Grid
- A tar file containing all needed packages
- (Root, G3, G4, etc ...) is available,
- with a script to configure and compile all
packages on site. - With help of Dan PROTOPOPESCU and Kilian
Schwarz, CbmRoot was tested on different sites,
using the PANDA grid resources based on Alien.
16(No Transcript)
17(No Transcript)
18(No Transcript)
19(No Transcript)
20Status of the Simulation and Reconstruction Code
in CBMRoot for the Straw Tubes
Tracker (PANDA) A. Fontana, G. Boca, P. Genova,
L. Lavezzi, P. Montagna and A. Rotondi INFN Pavia
Group
- Motivations
- General structure of the Stt classes
- Geometry
- Hits
- Digitization
- Reconstruction
- User interface
- Macros
- Event display
- Performances
- Future directions
21Motivations
- To investigate the CBMRoot framework, developed
at GSI by D. Bertini - and M. Al-Turany for the CBM Collaboration, for
the full simulation and - reconstruction of one of the Panda subdetectors
as an alternative - approach to the presently used framework.
- To develop and test the Stt reconstruction
algorithms to have results - on the Stt performances in short time.
Optimization studies to define - the STT parameters ( of layers, skew angle,
thickness of layers) - In this presentation we will show the status of
this work and give - a report about our experience with CBMRoot.
-
- Important points
- - Easy installation and portability
- - ROOT environment (useful for non-BaBaR groups)
- - Supported at GSI
- Virtual MonteCarlo (Geant3Geant4Fluka)
22Geometry front view
- 11 double layers
- tube Ø 6 mm ( 1-5), 8 mm ( 6-11)
- skew angle 2-3 odd 2layers not skewed
- tube length 150 cm
- mylar wall 100 mm
- Ar/CO2 90/10
23Geometry top view
24Hits and MC tracks with G3/G4
GEANT 4
- 1000 events m-
- p random 1 1.5 GeV/c
- f random 0 360
- q random 13 - 142
25Single Straw Tube response simulation
(by Alberto Rotondi)
TStraw.h
Standalone and framework independent simulation,
fully integrated in CBMRoot.
class TStraw public TNamed ... Double_t
StrawCharge() // total discharge
electron calculation
// energy loss in GeV Int_t
StrawSignal(Int_t nsteps) // oscilloscope
signal generation (ns)
// PulsePulseT in ns
// return number of
primary electrons Int_t StrawTime()
// output time of the straw (ns)
//
PulseTimeInt_t in ns Double_t
TimnsToDiscm(Double_t time, Double_t pSTP) //
from time (ns) to radius in cm ...
- Statistical analysis of the ionization process
- (input from Garfield)
- Magnetic field effects
- Treatment of the signal
- Response simulation in time and in charge
- Possible PID by dE/dx
Mylar tube Thickness 100 mm Radius 4- 6 mm Gas
Ar/CO2 90/10
26Single Straw Tube response simulation
Input to TStraw from Garfield simulations,
including PANDA 2T magnetic field effects.
Diffusion Coefficients in B (L and T)
New results!
x-t relation
27Preliminary results on reconstruction
Example of estimation of reconstruction
efficiency for the helix pre-fit algorithm 2
out of 100 events are not reconstructed. The
tracks of different events are superimposed.
28The simulation chain
How all these classes and macros are used?
macro
input/output
Persistency is obtained in a straightforward way
by inheriting one class from the CBMRoot base
class!
runsim.C
SIMULATION
simfile.root
rundigi.C
DIGITIZATION
digifile.root
analyze.C
draw.C
runreco.C
The ROOT files contain all the information on
geometry at every step in the chain, in addition
to information on hits, digits and tracks.
RECONSTRUCTION
recofile.root
29ROOT and Qt (1)
- Qt BNL
- by Valeri Fine fine_at_bnl.gov
- Announced in ACAT 2002
- In ROOT CVS since July 2004
- SLOC 12 500
- Standard ROOT plug-in shared library, allows to
be turned ON at run time if .rootrc setings are - Gui.Backend qt
- Gui.Factory qt
- Uses Qt v.3
- Planned support of Qt v.4
- Qt GSI
- by M. Al-Turany m.al-turany_at_gsi.de
- D. Bertini d.bertini_at_gsi.de
- Works since 2001 on Linux
- In ROOT CVS in April 2006
- SLOC 2100
- How it works is explained in details at
- http//root.cern.ch/root/Version511.news.html
- Uses Qt v.3
- Planned native Qt v.4 support
30ROOT and Qt (3)
- Qt GSI
- Lightweight interface that uses the Qt event loop
to drive Qt widgets and the ROOT event loop to
handle all ROOT events GUI, timers, signals,
etc. - Qt widgets are rendered via Qt, ROOT widgets are
rendered either via TGX11 or TGWin32GDK - ROOT Canvases can be embedded in Qt widgets
For more information on Qt GSI, see ROOT v
5.11/02 release notes at http//root.cern.ch/root/
Version511.news.html
31(No Transcript)
32(No Transcript)
33Summary
- CbmRoot on going-developments
- Geant3/Geant4 and Fluka available.
- CBM exp. on going
- PANDA exp alternative framework
- STT detector (PAVIA)
- Vertex detector (Julich)
- ECAL (Giessen)
- Tracking (Pavia,Julich)
- Grid based on ALIEN ( data challenge )
- Event Display
- Windows XP Support
- Documentation on the web
- http//cbmroot.gsi.de