Pluto
v6.3.0
Loading...
Searching...
No Matches
test_phi2170.C
Go to the documentation of this file.
1
void
test_phi2170
(
2
Int_t decay_mode = 0,
// decay channel (see below)
3
Int_t
nev
= 1000,
// number of events
4
Double_t Tbeam = 29.0
// proton beam kinetic energy [GeV]
5
){
7
//
8
// Example reaction channels currently used for the CBM
9
// φ(2170) feasibility studies.
10
//
11
// decay_mode:
12
// 0 -> φ π+ π−
13
// 1 -> K+ K− π+ π−
14
// 2 -> φ f0(980)
15
//
16
// Additional decay channels can be added as needed.
17
//
19
20
// ============================================================
21
// Beam kinetic-energy as input
22
// ============================================================
23
// Use the TString/parser constructor so the first argument is
24
// interpreted as proton beam kinetic energy [GeV].
25
// The Double_t PReaction overload interprets the first argument
26
// as beam momentum [GeV/c].
27
TString Tbeam_str;
28
Tbeam_str.Form(
"%.6f"
, Tbeam);
29
30
TString reaction;
31
TString outfile;
32
TString mode_name;
33
34
switch
(decay_mode) {
35
36
case
0:
37
reaction =
"p p phi2170 [phi [K+ K-] pi+ pi-]"
;
38
outfile =
"phi2170_phipipi"
;
39
mode_name =
"phi pi+ pi-"
;
40
break
;
41
42
case
1:
43
reaction =
"p p phi2170 [K+ K- pi+ pi-]"
;
44
outfile =
"phi2170_KKpipi"
;
45
mode_name =
"K+ K- pi+ pi-"
;
46
break
;
47
48
case
2:
49
reaction =
"p p phi2170 [phi [K+ K-] f0_980 [pi+ pi-]]"
;
50
outfile =
"phi2170_phif0"
;
51
mode_name =
"phi f0(980)"
;
52
break
;
53
54
default
:
55
Error(
"test_phi2170"
,
56
"Unknown decay mode %d (allowed: 0, 1, 2)"
,
57
decay_mode);
58
return
;
59
}
60
61
// Add number-of-events tag
62
TString nev_tag;
63
if
(
nev
>= 1000 &&
nev
% 1000 == 0) {
64
nev_tag.Form(
"_%dk"
,
nev
/ 1000);
65
}
66
else
{
67
nev_tag.Form(
"_%d"
,
nev
);
68
}
69
outfile += nev_tag;
70
71
// Add beam-energy tag
72
TString energy_tag;
73
energy_tag.Form(
"_Tbeam%.1fGeV"
, Tbeam);
74
energy_tag.ReplaceAll(
"."
,
"p"
);
75
outfile += energy_tag;
76
77
PReaction
r
(Tbeam_str.Data(),
78
"p"
,
79
"p"
,
80
reaction.Data(),
81
outfile.Data());
82
83
listParticle
(
"f0_980"
);
84
listParticle
(
"phi2170"
);
85
86
cout << endl;
87
cout <<
"=========================================="
<< endl;
88
cout <<
"phi(2170) example generation"
<< endl;
89
cout <<
"=========================================="
<< endl;
90
cout <<
"Beam kinetic energy : "
<< Tbeam <<
" GeV"
<< endl;
91
cout <<
"Events : "
<<
nev
<< endl;
92
cout <<
"Decay mode : "
<< decay_mode <<
" ("
<< mode_name <<
")"
<< endl;
93
cout <<
"Reaction : "
<< reaction << endl;
94
cout <<
"Output : "
<< outfile <<
".root"
<< endl;
95
cout <<
"=========================================="
<< endl;
96
cout << endl;
97
cout <<
"Inspect with : root -l -q 'inspect_phi2170.C(\""
<< outfile <<
".root\")'"
<< endl;
98
cout << endl;
99
cout <<
"=========================================="
<< endl;
100
cout << endl;
101
102
r
.Print();
103
104
r
.Loop(
nev
);
105
}
listParticle
void listParticle(int id=-1)
PReaction
Definition
PReaction.h:37
r
PReaction r(c,"eta_dalitz", 3, 0, 0, 0, 1)
nev
int nev
Definition
make_demo_pfilter.C:54
test_phi2170
void test_phi2170(Int_t decay_mode=0, Int_t nev=1000, Double_t Tbeam=29.0)
Definition
test_phi2170.C:1
pluto6
plugins
exotics
macros
test_phi2170.C
Generated by
1.14.0