40 v[0]=
x; v[1]=
y; v[2]=z;
44 double alpha,
double beta,
double gamma){
56 double sp,st,sk,cp,ct,ck;
65 temp[0]=( ck*ct*cp-sk*sp)*v[0]+( -sk*ct*cp-ck*sp)*v[1]+st*cp*v[2];
66 temp[1]=( ck*ct*sp+sk*cp)*
v[0]+(-sk*ct*sp+ck*cp)*
v[1]+st*sp*
v[2];
67 temp[2]=-ck*st*
v[0]+sk*st*
v[1]+ct*
v[2];
77 s<<
"("<<
v.v[0]<<
","<<
v.v[1]<<
","<<
v.v[2]<<
")";
89 return EvtVector3R(p1.v[1]*p2.v[2] - p1.v[2]*p2.v[1],
90 p1.v[2]*p2.v[0] - p1.v[0]*p2.v[2],
91 p1.v[0]*p2.v[1] - p1.v[1]*p2.v[0]);
101 temp = v[0]*v[0]+v[1]*v[1]+v[2]*v[2];
112 temp += v[1]*p2.v[1];
113 temp += v[2]*p2.v[2];
double sin(const BesAngle a)
double cos(const BesAngle a)
EvtVector3R rotateEuler(const EvtVector3R &v, double alpha, double beta, double gamma)
EvtVector3R cross(const EvtVector3R &p1, const EvtVector3R &p2)
ostream & operator<<(ostream &s, const EvtVector3R &v)
**********Class see also m_nmax DOUBLE PRECISION m_amel DOUBLE PRECISION m_x2 DOUBLE PRECISION m_alfinv DOUBLE PRECISION m_Xenph INTEGER m_KeyWtm INTEGER m_idyfs DOUBLE PRECISION m_zini DOUBLE PRECISION m_q2 DOUBLE PRECISION m_Wt_KF DOUBLE PRECISION m_WtCut INTEGER m_KFfin *COMMON c_KarLud $ !Input CMS energy[GeV] $ !CMS energy after beam spread beam strahlung[GeV] $ !Beam energy spread[GeV] $ !z boost due to beam spread $ !electron beam mass *ff pair spectrum $ !minimum v
double dot(const EvtVector3R &v2)
void applyRotateEuler(double phi, double theta, double ksi)