#include <EvtResonance.hh>
Definition at line 31 of file EvtResonance.hh.
◆ EvtResonance()
EvtResonance::EvtResonance |
( |
const EvtVector4R & |
p4_p, |
|
|
const EvtVector4R & |
p4_d1, |
|
|
const EvtVector4R & |
p4_d2, |
|
|
double |
ampl = 0.0 , |
|
|
double |
theta = 0.0 , |
|
|
double |
gamma = 0.0 , |
|
|
double |
bwm = 0.0 , |
|
|
int |
spin = 0 |
|
) |
| |
Definition at line 51 of file EvtResonance.cc.
53 :
const EvtVector4R & p4_d2()
const EvtVector4R & p4_d1()
const EvtVector4R & p4_p()
◆ ~EvtResonance()
EvtResonance::~EvtResonance |
( |
| ) |
|
|
virtual |
◆ amplitude()
double EvtResonance::amplitude |
( |
| ) |
|
|
inline |
◆ bwm()
double EvtResonance::bwm |
( |
| ) |
|
|
inline |
◆ gamma()
double EvtResonance::gamma |
( |
| ) |
|
|
inline |
◆ operator=()
Definition at line 35 of file EvtResonance.cc.
36{
37 if ( &
n ==
this )
return *
this;
46 return *this;
47}
◆ p4_d1()
◆ p4_d2()
◆ p4_p()
◆ relBrWig()
Definition at line 114 of file EvtResonance.cc.
114 {
115
116
117
118
122
123
124
125
126
127 double msq13 = (_p4_d1 + _p4_d3).mass2();
128 double msq23 = (_p4_d2 + _p4_d3).mass2();
129 double msqParent = _p4_p.
mass2();
130 double msq1 = _p4_d1.
mass2();
131 double msq2 = _p4_d2.mass2();
132 double msq3 = _p4_d3.
mass2();
133
134 double M;
135
136 double p2 = sqrt((_p4_12.
mass2() - (_p4_d1.
mass() + _p4_d2.mass())*(_p4_d1.
mass() + _p4_d2.mass()))*(_p4_12.
mass2() - (_p4_d1.
mass() - _p4_d2.mass())*(_p4_d1.
mass() - _p4_d2.mass())))/(2.0*_p4_12.
mass());
137
138 double p2R = sqrt((_bwm*_bwm - (_p4_d1.
mass() + _p4_d2.mass())*(_p4_d1.
mass() + _p4_d2.mass()))*(_bwm*_bwm - (_p4_d1.
mass() - _p4_d2.mass())*(_p4_d1.
mass() - _p4_d2.mass())))/(2.0*_bwm);
139
141
142if (i == 1) {
143
144
146
147}
149
150 gam = _gamma*(_bwm/_p4_12.
mass())*(
p2/p2R)*(
p2/p2R)*(
p2/p2R)*((1 +
R*
R*p2R*p2R)/(1 + R*R*
p2*
p2));
151 M = (msq13 - msq23 - (msqParent - msq3)*(msq1 - msq2)/(_bwm*_bwm))*sqrt((1 + R*R*p2R*p2R)/(1 + R*R*
p2*
p2));
152
153
154 BW = sqrt(_gamma)*M/((_bwm*_bwm - _p4_12.
mass2()) -
EvtComplex(0.0,1.0)*gam*_bwm);
155
156 return BW;
157
158}
complex_t R(double Q2, double M2, double G, double Mp2, double Mm2)
◆ resAmpl()
Definition at line 59 of file EvtResonance.cc.
59 {
60
62
64
65
66
67
68
69
70
71
72
73
74
75 double cos_phi_0 =
EvtDecayAngle(_p4_p, _p4_d1+_p4_d2, _p4_d1);
76
77
78 switch (_spin) {
79
80 case 0 :
84 break;
85
86 case 1 :
89 (cos_phi_0/((_p4_d1+_p4_d2).
mass()-_bwm-
EvtComplex(0.0,0.5*_gamma))));
90 break;
91
92 case 2:
95 ((1.5*cos_phi_0*cos_phi_0-0.5)/((_p4_d1+_p4_d2).mass()-_bwm-
EvtComplex(0.0, 0.5*_gamma))));
96 break;
97
98 case 3:
101 ((2.5*cos_phi_0*cos_phi_0*cos_phi_0-1.5*cos_phi_0)/((_p4_d1+_p4_d2).mass()-_bwm-
EvtComplex(0.0, 0.5*_gamma))));
102 break;
103
104 default:
105 report(
DEBUG,
"EvtGen") <<
"EvtGen: wrong spin in EvtResonance" << endl;
107 break;
108
109 }
110
111 return ampl;
112}
double sin(const BesAngle a)
double cos(const BesAngle a)
double EvtDecayAngle(const EvtVector4R &p, const EvtVector4R &q, const EvtVector4R &d)
ostream & report(Severity severity, const char *facility)
static const double radToDegrees
static const double twoPi
◆ spin()
int EvtResonance::spin |
( |
| ) |
|
|
inline |
◆ theta()
double EvtResonance::theta |
( |
| ) |
|
|
inline |
The documentation for this class was generated from the following files: