BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
D0ToKSLKK Class Reference

#include <D0ToKSLKK.h>

Public Member Functions

 D0ToKSLKK ()
virtual ~D0ToKSLKK ()
void init (int Daug0Id, int Uspin)
complex< double > Amp (vector< double > k0l, vector< double > kp, vector< double > km, int Daug0Id, int Uspin)

Detailed Description

Definition at line 9 of file D0ToKSLKK.h.

Constructor & Destructor Documentation

◆ D0ToKSLKK()

D0ToKSLKK::D0ToKSLKK ( )
inline

Definition at line 12 of file D0ToKSLKK.h.

12{}

◆ ~D0ToKSLKK()

D0ToKSLKK::~D0ToKSLKK ( )
virtual

Definition at line 32 of file D0ToKSLKK.cxx.

32{}

Member Function Documentation

◆ Amp()

complex< double > D0ToKSLKK::Amp ( vector< double > k0l,
vector< double > kp,
vector< double > km,
int Daug0Id,
int Uspin )

Definition at line 116 of file D0ToKSLKK.cxx.

117 {
118
119 double P1[4], P2[4], P3[4];
120 P1[0] = k0l[3];
121 P1[1] = k0l[0];
122 P1[2] = k0l[1];
123 P1[3] = k0l[2];
124 P2[0] = km[3];
125 P2[1] = km[0];
126 P2[2] = km[1];
127 P2[3] = km[2];
128 P3[0] = kp[3];
129 P3[1] = kp[0];
130 P3[2] = kp[1];
131 P3[3] = kp[2];
132
133 if ( Daug0Id == 310 ) SorL = true;
134 else SorL = false;
135 // double value;
136 int spin[5] = { 0, 1, 0, 0, 0 };
137 double PDFD0[2];
138 if ( SorL )
139 {
140 int g0[5] = { 5, 1, 3, 1, 1 };
141 double r0[5] = { 3, 3, 3, 3, 3 };
142 double r1[5] = { 5, 5, 5, 5, 5 };
143 int nstates = 5;
144 // calEva(P1, P2, P3, mass, width, rho, phi, g0, spin, modetype, r0, r1, value, 0,
145 // nstates,charge,SorL);
146 calPDF( P1, P2, P3, mass, width, rho, phi, g0, spin, modetype, r0, r1, 0, nstates, PDFD0 );
147 }
148 else if ( ( !SorL ) && Uspin == 1 )
149 {
150 int g0[5] = { 5, 1, 3, 1, 1 };
151 double r0[5] = { 6.82071036651904, 2.89695915812383, 3, 3, -6.61721570909587 };
152 double r1[5] = { 1.80820371593891, -2.15090641236998, 5, 5, -0.972853397735864 };
153 int nstates = 5;
154 // calEva(P1, P2, P3, mass, width, rho, phi, g0, spin, modetype, r0, r1, value, 0,
155 // nstates,charge,SorL);
156 calPDF( P1, P2, P3, mass, width, rho, phi, g0, spin, modetype, r0, r1, 0, nstates, PDFD0 );
157 }
158 else
159 {
160 int g0[5] = { 5, 1, 3, 1, 1 };
161 double r0[5] = { 3, 3, 3, 3, 3 };
162 double r1[5] = { 5, 5, 5, 5, 5 };
163 int nstates = 5;
164 // calEva(P1, P2, P3, mass, width, rho, phi, g0, spin, modetype, r0, r1, value, 0,
165 // nstates,charge,SorL);
166 calPDF( P1, P2, P3, mass, width, rho, phi, g0, spin, modetype, r0, r1, 0, nstates, PDFD0 );
167 }
168
169 return complex<double>( PDFD0[0], PDFD0[1] );
170}

Referenced by QCMCFilter::findD0Decay().

◆ init()

void D0ToKSLKK::init ( int Daug0Id,
int Uspin )

Definition at line 34 of file D0ToKSLKK.cxx.

34 {
35
36 // std::cout << "D0ToKSLKK ==> Initialization !" << std::endl;
37
38 phi[0] = 0;
39 rho[0] = 1;
40 phi[1] = 3.42566005625144;
41 rho[1] = 0.481320242396153;
42 phi[2] = 3.38836604528211;
43 rho[2] = 0.692817392287617;
44 phi[3] = 2.09747486815378;
45 rho[3] = 0.642052025575875;
46 phi[4] = -1.19528927010597;
47 rho[4] = 0.363639226481389;
48
49 modetype[0] = 23;
50 modetype[1] = 23;
51 modetype[2] = 13;
52 modetype[3] = 13;
53 modetype[4] = 23;
54
55 if ( Uspin == 1 && Daug0Id == 130 )
56 {
57 // std::cout << "D0ToKLKK ==> Initialization !" << std::endl;
58 modetype[0] = 232;
59 modetype[1] = 232;
60 modetype[2] = 13;
61 modetype[3] = 13;
62 modetype[4] = 232;
63 }
64
65 /*for (int i=0; i<5; i++) {
66 cout << i << " rho= " << rho[i] << " phi= " << phi[i] << endl;
67 }*/
68
69 width[0] = 0.272;
70 width[1] = 0.004249;
71 width[2] = 0.272;
72 width[3] = 0.258;
73 width[4] = 0.258;
74
75 mass[0] = 0.919;
76 mass[1] = 1.019461;
77 mass[2] = 0.919;
78 mass[3] = 1.439;
79 mass[4] = 1.439;
80
81 mDM = 1.86484;
82 mK0 = 0.497614;
83 mKa = 0.49368;
84 mPi = 0.13957;
85 mEta = 0.547862;
86 mKa2 = 0.24371994; // 0.49368^2;
87 mPi2 = 0.01947978; // 0.13957^2;
88 mEta2 = 0.30015277; // 0.547862^2;
89 mass_EtaP = 0.95778;
90 mass_Kaon = 0.49368;
91 mass_KS = 0.4976;
92
93 math_pi = 3.1415926;
94 mass_Pion2 = 0.0194797849;
95 mass_2Pion = 0.27914;
96 math_2pi = 6.2831852;
97 rD2 = 25.0; // 5*5
98 rRes2 = 9.0; // 3*3
99 g2 = 0.23; // K*0(1430)
100
101 GS1 = 0.636619783;
102 GS2 = 0.01860182466;
103 GS3 = 0.1591549458; // 1/(2*math_2pi)
104 GS4 = 0.00620060822; // mass_Pion2/math_pi
105
106 rho_omega = 0.00294;
107 phi_omega = -0.02;
108
109 int GG[4][4] = { { 1, 0, 0, 0 }, { 0, -1, 0, 0 }, { 0, 0, -1, 0 }, { 0, 0, 0, -1 } };
110 for ( int i = 0; i < 4; i++ )
111 {
112 for ( int j = 0; j < 4; j++ ) { G[i][j] = GG[i][j]; }
113 }
114}

Referenced by QCMCFilter::findD0Decay().


The documentation for this class was generated from the following files: