72 {
73
74 EvtParticle *phi;
75 EvtParticle *gamma;
76
77
79
80
81
82
83
87
89 double beta=2.*electMass/wcm;
90 beta=sqrt(1. - beta*beta);
91
92
93 double pg=(wcm*wcm-phi->
mass()*phi->
mass())/(2*wcm);
94
95
96
97
98
99
100
101
102
103
104
105 double ymax=log((1.+beta*csfrmn)/(1.-beta*csfrmn));
106 double ymin=log((1.-beta*csbkmn)/(1.+beta*csbkmn));
107
108
111 cs=(cs - 1.)/(cs + 1.)/beta;
112 double sn=sqrt(1-cs*cs);
113
115
116
117 EvtVector4R p4phi(sqrt(phi->
mass()*phi->
mass()+pg*pg),pg*sn*
cos(fi),
118 pg*sn*
sin(fi),pg*cs);
119
120 EvtVector4R p4gamma(pg,-p4phi.get(1),-p4phi.get(2),-p4phi.get(3));
121
122
125
126
127
128
129
130
134
137
138 EvtComplex r1p=phi0*gamma0;
139 EvtComplex r2p=
phi1*gamma0;
140 EvtComplex r3p=
phi2*gamma0;
141
142
143 EvtComplex r1m=phi0*gamma1;
144 EvtComplex r2m=
phi1*gamma1;
145 EvtComplex r3m=
phi2*gamma1;
146
147 EvtComplex rho33=r3p*
conj(r3p)+r3m*
conj(r3m);
148 EvtComplex rho22=r2p*
conj(r2p)+r2m*
conj(r2m);
149 EvtComplex rho11=r1p*
conj(r1p)+r1m*
conj(r1m);
150
151 EvtComplex rho13=r3p*
conj(r1p)+r3m*
conj(r1m);
152 EvtComplex rho12=r2p*
conj(r1p)+r2m*
conj(r1m);
153 EvtComplex rho23=r3p*
conj(r2p)+r3m*
conj(r2m);
154
155 EvtComplex rho31=
conj(rho13);
156 EvtComplex rho32=
conj(rho23);
157 EvtComplex rho21=
conj(rho12);
158
159
160 EvtSpinDensity rho;
162
172
173
176
177
178 return ;
179}
double sin(const BesAngle a)
double cos(const BesAngle a)
Evt3Rank3C conj(const Evt3Rank3C &t2)
EvtComplex exp(const EvtComplex &c)
static const double twoPi
void setDaughterSpinDensity(int daughter)
static double getMeanMass(EvtId i)
static EvtId getId(const std::string &name)
void setSpinDensityForward(const EvtSpinDensity &rho)
virtual EvtVector4C epsParent(int i) const
virtual void init(EvtId part_n, const EvtVector4R &p4)=0
virtual EvtVector4C epsParentPhoton(int i)
EvtParticle * getDaug(int i)
double initializePhaseSpace(int numdaughter, EvtId *daughters, double poleSize=-1., int whichTwo1=0, int whichTwo2=1)
void Set(int i, int j, const EvtComplex &rhoij)