EIC Software
 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 
3 {
4  // Create generic analysis run manager; configure it for digitization;
5  auto fRun = new EicRunAna();
6  fRun->SetInputFile ("simulation.root");
7  fRun->SetOutputFile("digitization.root");
8 
9  // Use gaussian resolution matching 20x20um^2 pixel size;
10  auto vstHitProducer = new EicTrackingDigiHitProducer("VST", EicDigiHitProducer::Smear);
11  vstHitProducer->DefineKfNodeTemplateXY(0.00058, 0.00058);
12  fRun->AddTask(vstHitProducer);
13 
14  auto fstHitProducer = new EicTrackingDigiHitProducer("FST", EicDigiHitProducer::Smear);
15  fstHitProducer->DefineKfNodeTemplateXY(0.00058, 0.00058);
16  fRun->AddTask(fstHitProducer);
17 
18  auto bstHitProducer = new EicTrackingDigiHitProducer("BST", EicDigiHitProducer::Smear);
19  bstHitProducer->DefineKfNodeTemplateXY(0.00058, 0.00058);
20  fRun->AddTask(bstHitProducer);
21 
22  // Assume 50um resolution in both X&Y-projections for the GEMs;
23  auto fgtHitProducer = new EicTrackingDigiHitProducer("FGT", EicDigiHitProducer::Smear);
24  fgtHitProducer->DefineKfNodeTemplateXY(0.0050, 0.0050);
25  fRun->AddTask(fgtHitProducer);
26 
27  auto bgtHitProducer = new EicTrackingDigiHitProducer("BGT", EicDigiHitProducer::Smear);
28  bgtHitProducer->DefineKfNodeTemplateXY(0.0050, 0.0050);
29  fRun->AddTask(bgtHitProducer);
30 
31  // "Ideal" TPC digitizer (and medium-resolution device assumed);
32  auto tpcHitProducer = new EicTpcDigiHitProducer();
33  tpcHitProducer->importTpcDigiParameters("tpc-digi-250um.root");
34  fRun->AddTask(tpcHitProducer);
35 
36  // Initialize and run digitization; exit at the end;
37  fRun->Run();
38 } // digitization()