Go to the source code of this file.
|
| double | EvtDecayAngle (const EvtVector4R &, const EvtVector4R &, const EvtVector4R &) |
| double | EvtDecayAngleChi (const EvtVector4R &, const EvtVector4R &, const EvtVector4R &, const EvtVector4R &, const EvtVector4R &) |
| double | EvtDecayPlaneNormalAngle (const EvtVector4R &p, const EvtVector4R &q, const EvtVector4R &d1, const EvtVector4R &d2) |
| double | EvtDecayAnglePhi (const EvtVector4R &g, const EvtVector4R &p, const EvtVector4R &q, const EvtVector4R &d) |
| EvtComplex | wignerD (int j, int m1, int m2, double phi, double theta, double gamma) |
◆ EvtDecayAngle()
Definition at line 31 of file EvtKine.cc.
31 {
32
33 double pd = p * d;
36 double mp2 = p.
mass2();
37 double mq2 =
q.mass2();
38 double md2 = d.mass2();
39
40 double cost =
41 ( pd * mq2 - pq * qd ) / sqrt( ( pq * pq - mq2 * mp2 ) * ( qd * qd - mq2 * md2 ) );
42
43 return cost;
44}
****INTEGER imax DOUBLE PRECISION m_pi *DOUBLE PRECISION m_amfin DOUBLE PRECISION m_Chfin DOUBLE PRECISION m_Xenph DOUBLE PRECISION m_sinw2 DOUBLE PRECISION m_GFermi DOUBLE PRECISION m_MfinMin DOUBLE PRECISION m_ta2 INTEGER m_out INTEGER m_KeyFSR INTEGER m_KeyQCD *COMMON c_Semalib $ !copy of input $ !CMS energy $ !beam mass $ !final mass $ !beam charge $ !final charge $ !smallest final mass $ !Z mass $ !Z width $ !EW mixing angle $ !Gmu Fermi $ alphaQED at q
Referenced by EvtMHelAmp::amplitude(), and EvtResonance::resAmpl().
◆ EvtDecayAngleChi()
Definition at line 46 of file EvtKine.cc.
48 {
49
51
52
53
54 p4_d1p =
boostTo( p4_d1, p4_p );
55 p4_d2p =
boostTo( p4_d2, p4_p );
56 p4_h1p =
boostTo( p4_h1, p4_p );
57 p4_h2p =
boostTo( p4_h2, p4_p );
58
61
62 D = p4_d1p + p4_d2p;
63
64 d1_perp = p4_d1p - ( D.
dot( p4_d1p ) / D.
dot( D ) ) * D;
65 h1_perp = p4_h1p - ( D.
dot( p4_h1p ) / D.
dot( D ) ) * D;
66
67
68
69 d1_prime = D.
cross( d1_perp );
70
71 d1_perp = d1_perp / d1_perp.
d3mag();
72 d1_prime = d1_prime / d1_prime.
d3mag();
73
74 double x, y;
75
76 x = d1_perp.
dot( h1_perp );
77 y = d1_prime.
dot( h1_perp );
78
79 double chi = atan2( y, x );
80
82
83 return chi;
84}
EvtDiracSpinor boostTo(const EvtDiracSpinor &sp, const EvtVector4R p4)
static const double twoPi
double dot(const EvtVector4R &v2) const
EvtVector4R cross(const EvtVector4R &v2)
◆ EvtDecayAnglePhi()
Definition at line 100 of file EvtKine.cc.
101 {
102 double eq = ( p *
q ) / p.
mass();
103 double ed = ( p * d ) / p.
mass();
104 double mq =
q.mass();
106 double qd = p.
dotr3(
q, d );
107 double zq = p.
dotr3( z,
q );
108 double zd = p.
dotr3( z, d );
109 double alpha = ( eq - mq ) / ( q2 * mq ) * qd - ed / mq;
110
112 double x = ( zq * ( qd +
alpha * q2 ) - q2 * ( zd +
alpha * zq ) ) / sqrt( q2 );
113
114 double phi = atan2( y, x );
115
117}
double dotr3(const EvtVector4R &p1, const EvtVector4R &p2) const
double scalartripler3(const EvtVector4R &p1, const EvtVector4R &p2, const EvtVector4R &p3) const
double mag2r3(const EvtVector4R &p1) const
Referenced by EvtMHelAmp::amplitude().
◆ EvtDecayPlaneNormalAngle()
Definition at line 86 of file EvtKine.cc.
87 {
88
90
93
95
96 return q.mass() * ( p * l ) / sqrt( -( pq * pq - p.
mass2() *
q.mass2() ) * l.mass2() );
97}
Evt3Rank3C directProd(const EvtVector3C &c1, const EvtVector3C &c2, const EvtVector3C &c3)
EvtTensor4C dual(const EvtTensor4C &t2)
EvtVector4C cont2(const EvtVector4C &v4) const
const EvtComplex & get(int) const
◆ wignerD()
| EvtComplex wignerD |
( |
int | j, |
|
|
int | m1, |
|
|
int | m2, |
|
|
double | phi, |
|
|
double | theta, |
|
|
double | gamma ) |
Definition at line 119 of file EvtKine.cc.
119 {
122
123
126
127}
EvtComplex exp(const EvtComplex &c)
static double d(int j, int m1, int m2, double theta)
Referenced by EvtMHelAmp::amplitude().