53 {
54
58
59 if ( ap != EvtComplex( 0.0, 0.0 ) || af != EvtComplex( 0.0, 0.0 ) )
60 {
61 report(
ERROR,
"EvtGen" ) <<
"dfslkh8945wqh:In EvtTensorToVectorScalar.c\n";
62 report(
ERROR,
"EvtGen" ) <<
"P or F wave not yet implemented!! (ryd) \n";
63 }
64
66
69 EvtVector4R momv =
v->getP4();
70 double massv =
v->mass();
71
72 EvtComplex temp;
73 temp = ad;
74 double m_parent = p->
mass();
75
76 EvtVector4R p_parent;
77
78 p_parent.
set( m_parent, 0.0, 0.0, 0.0 );
79
80 EvtVector4C pep0, pep1, pep2, pep3, pep4;
81 EvtTensor4C pdual;
82
83 EvtVector4C epsdual0, epsdual1, epsdual2;
84
85 double norm = massv / ( m_parent * momv.
get( 0 ) * momv.
d3mag() * momv.
d3mag() );
87
88 epsdual0 = pdual.
cont1(
v->epsParent( 0 ).conj() );
89 epsdual1 = pdual.
cont1(
v->epsParent( 1 ).conj() );
90 epsdual2 = pdual.
cont1(
v->epsParent( 2 ).conj() );
91
97
98 vertex( 0, 0, pep0 * epsdual0 );
99 vertex( 1, 0, pep1 * epsdual0 );
100 vertex( 2, 0, pep2 * epsdual0 );
101 vertex( 3, 0, pep3 * epsdual0 );
102 vertex( 4, 0, pep4 * epsdual0 );
103
104 vertex( 0, 1, pep0 * epsdual1 );
105 vertex( 1, 1, pep1 * epsdual1 );
106 vertex( 2, 1, pep2 * epsdual1 );
107 vertex( 3, 1, pep3 * epsdual1 );
108 vertex( 4, 1, pep4 * epsdual1 );
109
110 vertex( 0, 2, pep0 * epsdual2 );
111 vertex( 1, 2, pep1 * epsdual2 );
112 vertex( 2, 2, pep2 * epsdual2 );
113 vertex( 3, 2, pep3 * epsdual2 );
114 vertex( 4, 2, pep4 * epsdual2 );
115
116 return;
117}
Evt3Rank3C directProd(const EvtVector3C &c1, const EvtVector3C &c2, const EvtVector3C &c3)
ostream & report(Severity severity, const char *facility)
EvtTensor4C dual(const EvtTensor4C &t2)
double sin(const BesAngle a)
double cos(const BesAngle a)
**********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
void vertex(const EvtComplex &)
EvtParticle * getDaug(int i)
virtual EvtTensor4C epsTensor(int i) const
double initializePhaseSpace(int numdaughter, EvtId *daughters, double poleSize=-1., int whichTwo1=0, int whichTwo2=1)
EvtVector4C cont1(const EvtVector4C &v4) const
void set(int i, double d)