EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
digitization.C
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file digitization.C
1
2
void
digitization
()
3
{
4
// Load basic libraries;
5
gROOT->Macro(
"$VMCWORKDIR/gconfig/rootlogon.C"
);
6
7
// Create generic analysis run manager; configure it for digitization;
8
EicRunAna
*fRun =
new
EicRunAna
();
9
fRun->
SetInputFile
(
"simulation.root"
);
10
fRun->
SetOutputFile
(
"digitization.root"
);
11
12
// Assume 20um pixel MAPS sensors -> 20um/sqrt(12) ~ 5.8um gaussian "equivalent";
13
EicTrackingDigiHitProducer
* vstHitProducer =
new
EicTrackingDigiHitProducer
(
"VST"
,
EicDigiHitProducer::Smear
);
14
vstHitProducer->
DefineKfNodeTemplateXY
(5.8 *
eic::um
, 5.8 *
eic::um
);
15
fRun->
AddTask
(vstHitProducer);
16
EicTrackingDigiHitProducer
* fstHitProducer =
new
EicTrackingDigiHitProducer
(
"FST"
,
EicDigiHitProducer::Smear
);
17
fstHitProducer->
DefineKfNodeTemplateXY
(5.8 *
eic::um
, 5.8 *
eic::um
);
18
fRun->
AddTask
(fstHitProducer);
19
20
// Front GEM disks;
21
EicTrackingDigiHitProducer
* fgtHitProducer =
new
EicTrackingDigiHitProducer
(
"FGT"
,
EicDigiHitProducer::Smear
);
22
fgtHitProducer->
DefineKfNodeTemplateXY
(50 *
eic::um
, 50 *
eic::um
);
23
fRun->
AddTask
(fgtHitProducer);
24
// Rear GEM disks;
25
EicTrackingDigiHitProducer
* ffgHitProducer =
new
EicTrackingDigiHitProducer
(
"FFG"
,
EicDigiHitProducer::Smear
);
26
ffgHitProducer->
DefineKfNodeTemplateXY
(100 *
eic::um
, 100 *
eic::um
);
27
fRun->
AddTask
(ffgHitProducer);
28
29
// RICH profiler;
30
EicTrackingDigiHitProducer
* richHitProducer =
new
EicTrackingDigiHitProducer
(
"RICH"
,
EicDigiHitProducer::Smear
);
31
// Assign very big values, so that tracking resolution is not affected;
32
richHitProducer->
DefineKfNodeTemplateXY
(1 *
eic::cm
, 1 *
eic::cm
);
33
fRun->
AddTask
(richHitProducer);
34
35
// "Ideal" TPC digitizer;
36
EicTpcDigiHitProducer
* tpcHitProducer =
new
EicTpcDigiHitProducer
();
37
// So assume ~250um single-point resolution at the CM (and ~200um at the readout plane);
38
tpcHitProducer->
importTpcDigiParameters
(
"tpc-digi-250um.root"
);
39
tpcHitProducer->
Print
();
40
fRun->
AddTask
(tpcHitProducer);
41
42
// Initialize and run digitization; exit at the end;
43
fRun->
Run
();
44
}
// digitization()
45
EicRoot
blob
master
examples
tracking
config.88
digitization.C
Built by
Jin Huang
. updated:
Mon Jan 22 2024 12:43:35
using
1.8.2 with
EIC GitHub integration