Pluto
v6.3.0
Loading...
Searching...
No Matches
pp_delta_dalitz.C
Go to the documentation of this file.
1
// p + p -> p + Delta+ -> p + p + gamma* -> p + p + e- + e+
2
// This macro tests:
3
// 1. The mass-dependent width Breit-Wigner distribution of the Delta
4
// 2. The anisotropic (s+p wave) production angle for the pp->pDelta channel
5
// 3. The dilepton mass for Delta Dalitz decay
6
7
{
8
gROOT->Reset();
9
10
// use to get pure QED form factors:
11
((
PDalitzDecay
*)
makeDistributionManager
()->GetDistribution(
"D+_dalitz"
))->SetUseQED(1);
12
13
PParticle
*
p1
=
new
PParticle
(
"p"
,2.2);
14
PParticle
*
p2
=
new
PParticle
(
"p"
);
15
PParticle
*
p3
=
new
PParticle
(
"p"
);
16
PParticle
*
p4
=
new
PParticle
(
"p"
);
17
PParticle
*
delta
=
new
PParticle
(
"D+"
);
18
PParticle
*
g
=
new
PParticle
(
"dilepton"
);
19
PParticle
*
em
=
new
PParticle
(
"e-"
);
20
PParticle
*
ep
=
new
PParticle
(
"e+"
);
21
PParticle
*
q
=
new
PParticle
(*
p1
+ *
p2
);
22
PParticle
*
s1
[] = {
q
,
p3
,
delta
};
23
PParticle
*
s2
[] = {
delta
,
p4
,
g
};
24
PParticle
*
s3
[] = {
g
,
em
,
ep
};
25
PChannel
*
c1
=
new
PChannel
(
s1
);
26
PChannel
*
c2
=
new
PChannel
(
s2
);
27
PChannel
*
c3
=
new
PChannel
(
s3
);
28
PChannel
*
cc
[] = {
c1
,
c2
,
c3
};
29
30
PReaction
*
r
=
new
PReaction
(
cc
,
"pp_delta_dalitz"
, 3, 1);
31
32
//filtered dilepton pairs:
33
r
->Do(
"theta_ep = ([e+]->Theta() * 180.)/TMath::Pi()"
);
34
r
->Do(
"theta_em = ([e-]->Theta() * 180.)/TMath::Pi()"
);
35
r
->Do(
"opang = ([e+]->Angle([e-]) * 180.)/TMath::Pi()"
);
36
r
->Do(
"filter=1; if ((theta_ep<18 || theta_ep>85 || theta_em<18 || theta_em>85) || opang < 9) filter=0"
);
37
r
->Do(
"if (filter); [dilepton]->Push(Branch(Accepted)); [e+]->Push(Branch(Accepted)); [e-]->Push(Branch(Accepted))"
);
38
39
makeDistributionManager
()->GetDistribution(
"D+_dalitz"
)->
Print
();
40
41
r
->Print();
42
r
->loop(100000);
43
}
ep
PParticle * ep
Definition
analyze_eta_dalitz.C:13
em
PParticle * em
Definition
analyze_eta_dalitz.C:13
c1
c1
Definition
analyze_pp_delta_dalitz.C:23
PChannel
Definition
PChannel.h:33
PDalitzDecay
Definition
PDalitzDecay.h:14
PDalitzDecay::Print
virtual void Print(const Option_t *delme=NULL) const
PParticle
Definition
PParticle.h:25
PReaction
Definition
PReaction.h:37
p4
PParticle p4("p")
q
PParticle q
Definition
complete_eta.C:8
p3
PParticle p3("p")
p2
PParticle p2("p")
r
PReaction r(c,"eta_dalitz", 3, 0, 0, 0, 1)
p1
PParticle p1("p", beam_energy)
s2
PParticle * s2[]
Definition
dp_2delta_dalitz.C:28
s3
PParticle * s3[]
Definition
dp_2delta_dalitz.C:28
s1
PParticle * s1[]
Definition
dp_2delta_dalitz.C:28
c2
PChannel * c2
Definition
dp_2delta_dalitz.C:32
cc
PChannel * cc[]
Definition
dp_2delta_dalitz.C:36
delta
PParticle * delta
Definition
dp_2delta_dalitz.C:14
c3
PChannel * c3
Definition
dp_2delta_dalitz.C:33
makeDistributionManager
PDalitzDecay * makeDistributionManager() -> GetDistribution("D+_dalitz")) ->SetUseQED(1)
g
PParticle * g
Definition
pp_delta_dalitz.C:18
pluto6
macros
pp_delta_dalitz.C
Generated by
1.14.0