Skip to content

Commit d9df3b4

Browse files
committed
Example Pythia8 for HY
1 parent 66bad3a commit d9df3b4

3 files changed

Lines changed: 121 additions & 0 deletions

File tree

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
{
2+
"mode": "parallel",
3+
"generators": [
4+
{
5+
"name": "external",
6+
"config": {
7+
"fileName": "",
8+
"funcName": "",
9+
"iniFile": "${O2DPG_MC_CONFIG_ROOT}/MC/config/ALICE3/ini/pythia8_pp_136tev.ini"
10+
}
11+
},
12+
{
13+
"name": "external",
14+
"config": {
15+
"fileName": "",
16+
"funcName": "",
17+
"iniFile": "${O2DPG_MC_CONFIG_ROOT}/MC/config/ALICE3/ini/pythia8_pp_136tev.ini"
18+
}
19+
},
20+
{
21+
"name": "external",
22+
"config": {
23+
"fileName": "",
24+
"funcName": "",
25+
"iniFile": "${O2DPG_MC_CONFIG_ROOT}/MC/config/ALICE3/ini/pythia8_pp_136tev.ini"
26+
}
27+
},
28+
{
29+
"name": "external",
30+
"config": {
31+
"fileName": "",
32+
"funcName": "",
33+
"iniFile": "${O2DPG_MC_CONFIG_ROOT}/MC/config/ALICE3/ini/pythia8_pp_136tev.ini"
34+
}
35+
},
36+
{
37+
"name": "external",
38+
"config": {
39+
"fileName": "",
40+
"funcName": "",
41+
"iniFile": "${O2DPG_MC_CONFIG_ROOT}/MC/config/ALICE3/ini/pythia8_pp_136tev.ini"
42+
}
43+
},
44+
{
45+
"name": "external",
46+
"config": {
47+
"fileName": "",
48+
"funcName": "",
49+
"iniFile": "${O2DPG_MC_CONFIG_ROOT}/MC/config/ALICE3/ini/pythia8_pp_136tev.ini"
50+
}
51+
},
52+
{
53+
"name": "external",
54+
"config": {
55+
"fileName": "",
56+
"funcName": "",
57+
"iniFile": "${O2DPG_MC_CONFIG_ROOT}/MC/config/ALICE3/ini/pythia8_pp_136tev.ini"
58+
}
59+
},
60+
{
61+
"name": "external",
62+
"config": {
63+
"fileName": "",
64+
"funcName": "",
65+
"iniFile": "${O2DPG_MC_CONFIG_ROOT}/MC/config/ALICE3/ini/pythia8_pp_136tev.ini"
66+
}
67+
}
68+
],
69+
"fractions": [
70+
1,
71+
1,
72+
1,
73+
1,
74+
1,
75+
1,
76+
1,
77+
1
78+
]
79+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
[GeneratorHybrid]
2+
configFile = ${O2DPG_MC_CONFIG_ROOT}/MC/config/examples/hybrid/examplehyp8.json
3+
switchExtToHybrid = true
4+
num_workers = 8
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
int Hybrid()
2+
{
3+
std::string path{"o2sim_Kine.root"};
4+
// Check that file exists, can be opened and has the correct tree
5+
TFile file(path.c_str(), "READ");
6+
if (file.IsZombie())
7+
{
8+
std::cerr << "Cannot open ROOT file " << path << "\n";
9+
return 1;
10+
}
11+
auto tree = (TTree *)file.Get("o2sim");
12+
if (!tree)
13+
{
14+
std::cerr << "Cannot find tree o2sim in file " << path << "\n";
15+
return 1;
16+
}
17+
std::vector<o2::MCTrack> *tracks{};
18+
tree->SetBranchAddress("MCTrack", &tracks);
19+
20+
// Check if all events are filled
21+
auto nEvents = tree->GetEntries();
22+
for (Long64_t i = 0; i < nEvents; ++i)
23+
{
24+
tree->GetEntry(i);
25+
if (tracks->empty())
26+
{
27+
std::cerr << "Empty entry found at event " << i << "\n";
28+
return 1;
29+
}
30+
}
31+
// Check if there are 100 events, as simulated in the o2dpg-test
32+
if (nEvents != 100)
33+
{
34+
std::cerr << "Expected 100 events, got " << nEvents << "\n";
35+
return 1;
36+
}
37+
return 0;
38+
}

0 commit comments

Comments
 (0)