21#include "EvtGenBase/EvtPatches.hh"
25#include "EvtGenBase/EvtComplex.hh"
26#include "EvtGenBase/EvtPhotonParticle.hh"
27#include "EvtGenBase/EvtVector4C.hh"
28#include "EvtGenBase/EvtReport.hh"
75 theta = acos(pz/sqrt(px*px+py*py+pz*pz));
93 report(
ERROR,
"EvtGen") <<
"EvtPhotonParticle.cc: Asked "
94 <<
"for state:"<<i<<endl;
104 report(
ERROR,
"EvtGen") <<
"EvtPhotonParticle.cc: Can not get "
105 <<
"state in photons restframe."<<endl;;
128 R.Set(0,0,(eplus.conj())*
e1);
129 R.Set(0,1,(eplus.conj())*
e2);
131 R.Set(1,0,(eminus.conj())*
e1);
132 R.Set(1,1,(eminus.conj())*
e2);
148 eplus.applyRotateEuler(
alpha,beta,gamma);
149 eminus.applyRotateEuler(
alpha,beta,gamma);
160 R.Set(0,0,(eplus.conj())*
e1);
161 R.Set(0,1,(eplus.conj())*
e2);
163 R.Set(1,0,(eminus.conj())*
e1);
164 R.Set(1,1,(eminus.conj())*
e2);
ostream & report(Severity severity, const char *facility)
const EvtVector4R & getP4() const
void setp(double e, double px, double py, double pz)
void setpart_num(EvtId particle_number)
virtual ~EvtPhotonParticle()
EvtSpinDensity rotateToHelicityBasis() const
void init(EvtId part_n, double e, double px, double py, double pz)
EvtVector4C epsPhoton(int i)
EvtVector4C epsParentPhoton(int i)
void applyRotateEuler(double alpha, double beta, double gamma)
void set(int, const EvtComplex &)
complex_t R(double Q2, double M2, double G, double Mp2, double Mm2)