Simulations for CBM CBM-India Meeting, Jammu, 12 February 2008

Preview:

DESCRIPTION

Simulations for CBM CBM-India Meeting, Jammu, 12 February 2008. V. Friese v.friese@gsi.de. Planned experiment. Running experiment. Input (Signal, Background). Required performance (S/B, SNR, eff.). Detector description. Input (Signal, Background). Simulation. Simulation. - PowerPoint PPT Presentation

Citation preview

Simulations for CBM

CBM-India Meeting, Jammu, 12 February 2008

V. Friese

v.friese@gsi.de

V. Friese CBM-India, 12 February 2008 2

Simulations: Why?

Simulation

Detectordescription

Input(Signal,

Background)

Simulated signal

Performance(acceptance, efficiency)

Running experiment

Simulation

Input(Signal,

Background)

Required performance

(S/B, SNR, eff.)

Simulated signal

Detector design

Planned experiment

V. Friese CBM-India, 12 February 2008 3

Simulations for detector design

• Consequences:

– Many different detector designs / setups need being investigated

– The simulation framework must be flexible enough to enable an easy switch between geometries / digitisations

– Challenge in particular for reconstruction (data structures, ...)

V. Friese CBM-India, 12 February 2008 4

Simulation stepsC

BM

RO

OT

Mon

te-C

arl

oEvent generator

UrQMD, HSD, user defined, ...GEN Particles (type,

momentum, vertex)

MCTransport (MC)GEANT3, GEANT4, FLUKA, ...

MCPoint, MCTrack

RAWDetector response simulation

Digi

EDSReconstruction Hits, Tracks, Vertices

Analysis Histogram

Experiment DAQ

Step Data level Data structures

V. Friese CBM-India, 12 February 2008 5

CBMROOT

• CBMROOT is the CBM software framework for simulation, reconstruction and analysis

• It is based on (FAIR)ROOT and VMC

• Execution via ROOT macros

• Code is written in C++

• Documentation system is DOXYGEN

• The (current) build system is cmake, the distribution system is subversion

• Supported platforms are (almost) all Linux flavours

• External packages used:– GEANT3

– GEANT4

– ROOT

– CLHEP

– VMC

– PYTHIA

V. Friese CBM-India, 12 February 2008 6

CBMROOT and FAIRROOT

MVD STS RICH Tracking .... base geobase parbase

detector specific (geometry, digitisation, ...) core (run manager, I/O, ...)

MVD STS RICH Tracking ....

base geobase parbase

CBMROOT

FAIRROOT

CBMROOT

PANDAROOT

V. Friese CBM-India, 12 February 2008 7

Event generators

• Produces a list of particles, each with type, start vertex and momentum at start vertex, as input for the transport

• Available generator interfaces:– Standalone (outside of the framework, with intermediate file)

• UrqmdGenerator (UrQMD output ftn14, ASCII)

• PlutoGemerator (PLUTO output, ROOT)

• ShieldGenerator (SHIELD output, ASCII)

• AsciiGenerator (self-written ASCII, defined format)

– Integrated (inside the framework, on the fly, without intermediate file)• ParticleGenerator (single particles)

• BoxGenerator (particles with flat distribution in p, pt, y, φ)

• An arbitrary number of generators can be used at the same time

V. Friese CBM-India, 12 February 2008 8

MC transport

• FAIRROOT employs the concept of Virtual Monte Carlo (VMC): The user can choose between different transport engines

• Available engines:– GEANT3

– GEANT4

– (FLUKA in preparation)

• The simulation run is controlled by the manager class CbmRunSim

• The output is a ROOT tree. Branches are CbmMCTrack (input + secondary tracks) and objects derived from CbmMCPoint– CbmMvdPoint

– CbmStsPoint

– ....

V. Friese CBM-India, 12 February 2008 9

MC Transport step by step

1. Choose engine and create run CbmRunSim* fRun = new CbmRunSim(); fRun->SetName("TGeant3"); // Transport engine fRun->SetOutputFile(outFile); // Output file CbmRuntimeDb* rtdb = fRun->GetRuntimeDb(); fRun->SetMaterials/"media.geo");

2. Define detector geometry CbmDetector* sts = new CbmSts("STS", kTRUE); sts->SetGeometryFileName(stsGeom); fRun->AddModule(sts);

3. Define magnetic field CbmFieldMap* magField = new CbmFieldMapSym3(fieldMap); magField->SetPosition(0., 0., fieldZ); magField->SetScale(fieldScale); fRun->SetField(magField);

4. Define inputCbmPrimaryGenerator* primGen = new CbmPrimaryGenerator();CbmUrqmdGenerator* urqmdGen = new CbmUrqmdGenerator(inFile);primGen->AddGenerator(urqmdGen);

fRun->SetGenerator(primGen);

5. ... and runfRun->Run(nEvents);

V. Friese CBM-India, 12 February 2008 10

Detector simulation (digitisation)

• describes the detector response to the simulated MCTracks

• to be defined according to knowledge on the detector

• output: CbmDigi for each active channel

• workaround: HitProducer (e.g. Gaussian smearing of point)

CbmStsPoint

CbmStsDigi

CbmStsHit

CbmStsDigitize

CbmStsFindHits

CbmStsPoint

CbmStsHit

CbmStsHitProducer

V. Friese CBM-India, 12 February 2008 11

The CBM setup: electrons

magnet

RICH

TRD

TOF

STS + MVD

ECAL

V. Friese CBM-India, 12 February 2008 12

The CBM setup: muons

STS + MVD

magnet

TRD

ECAL

V. Friese CBM-India, 12 February 2008 13

Status of detector description

Detector Geometry (MC) Digitisation

MVD Monolithic stations HitProducer

STSSegmented (sectors), support, cables

Projective strip geometry, hit finder

RICH Monolithic (PM plane) HitProducer

MUCH Monolithic stationsProjective pad geometry, avalanche simulation, cluster reconstruction

TRD Segmented (sectors) HitProducer

TOF Segmented HitProducer

ECAL Over-segmented Shower parameterisation

V. Friese CBM-India, 12 February 2008 14

Example: STS

V. Friese CBM-India, 12 February 2008 15

Example: MUCH

V. Friese CBM-India, 12 February 2008 16

Event reconstruction

• is currently done in one step with digitisation (macro)

• manager class is CbmRunAna

• input is MC data (output of transport simulation)

• The user defines tasks which are

– initialised at the beginning of the run

– executed for each event

– finalised after the last event

• output is a ROOT tree with branches for all data structures registered to the run manager by the class

V. Friese CBM-India, 12 February 2008 17

Reconstruction step by step

1. Create runCbmRunAna *run= new CbmRunAna();run->SetInputFile(inFile);run->SetOutputFile(outFile);

2. Register task(s)CbmTask* stsDigitize = new CbmStsDigitize(iVerbose);run->AddTask(stsDigitize);

3. Initialise and start run run->LoadGeometry(); run->Init(); run->Run(0,nEvents);

V. Friese CBM-India, 12 February 2008 18

Available reconstruction algorithms

Task Algorithms Output

Local STS trackingCellular Automaton

Hough TransformCbmStsTrack

Local TRD trackingCellular Automaton

Track followingCbmTrdTrack

Local MUCH tracking Track following CbmMuchTrack

RICH ring findingHough Transform

Elastic NetCbmRichRing

Global tracking Global Tracker CbmGlobalTrack

Main vertex finding Kalman Filter CbmVertex

V. Friese CBM-India, 12 February 2008 19

Some results

Track reconstruction efficiency in MVD+STS, CA algorithm

Mom$ntum [G$V/c]0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5

All S

$t

Eff

ici$

nc

y [

%]

0

10

20

30

40

50

60

70

80

90

100

V. Friese CBM-India, 12 February 2008 20

Some more results

RICH ring reconstruction with Hough transform

V. Friese CBM-India, 12 February 2008 21

Electron identification capabilities

Composition of identified electrons Pion suppression

V. Friese CBM-India, 12 February 2008 22

Performance of di-electron measurements

Low-mass vector mesons Acceptance for ρ meson

V. Friese CBM-India, 12 February 2008 23

Performance of di-electron measurements (2)

Charmonia Acceptance for J/ψ meson

V. Friese CBM-India, 12 February 2008 24

Open charm results

D0, cτ=127 μm

K-

π+

V. Friese CBM-India, 12 February 2008 25

Open charm results (2)

c+ pK-+

D0 ->K- - ++

D+ ->K- ++

Recommended