BOSS 7.0.3
BESIII Offline Software System
Loading...
Searching...
No Matches
EvtSTS.cc
Go to the documentation of this file.
1//--------------------------------------------------------------------------
2//
3// Environment:
4// This software is part of the EvtGen package developed jointly
5// for the BaBar and CLEO collaborations. If you use all or part
6// of it, please give an appropriate acknowledgement.
7//
8// Copyright Information: See EvtGen/COPYRIGHT
9// Copyright (C) 1998 Caltech, UCSB
10//
11// Module: EvtSTS.cc
12//
13// Description: Routine to decay scalar -> tensor scalar.
14//
15//
16// Modification history:
17//
18// RYD Aug 21, 1998 Module created
19//
20//------------------------------------------------------------------------
21//
23#include <stdlib.h>
29#include "EvtGenBase/EvtPDL.hh"
32#include "EvtGenBase/EvtId.hh"
33#include <string>
34
36
37void EvtSTS::getName(std::string& model_name){
38
39 model_name="STS";
40
41}
42
43
45
46 return new EvtSTS;
47
48}
49
51
52 setProbMax(20.0);
53
54}
55
57
58 // check that there are 0 arguments
59 checkNArg(0);
60 checkNDaug(2);
61
63
66
67}
68
69
71
73
74 EvtParticle* t1=p->getDaug(0);
75
76 EvtVector4R momt = t1->getP4();
77 EvtVector4R moms = p->getDaug(1)->getP4();
78 double masst = t1->mass();
79
80 EvtVector4R p4_parent=momt+moms;
81
82 double m_parent=p4_parent.mass();
83
84 double norm=masst*masst/(m_parent*momt.d3mag()*momt.d3mag());
85
86 vertex(0,norm*t1->epsTensorParent(0).cont1(p4_parent)*p4_parent);
87 vertex(1,norm*t1->epsTensorParent(1).cont1(p4_parent)*p4_parent);
88 vertex(2,norm*t1->epsTensorParent(2).cont1(p4_parent)*p4_parent);
89 vertex(3,norm*t1->epsTensorParent(3).cont1(p4_parent)*p4_parent);
90 vertex(4,norm*t1->epsTensorParent(4).cont1(p4_parent)*p4_parent);
91
92 return ;
93}
94
void vertex(const EvtComplex &amp)
Definition: EvtDecayAmp.hh:37
void checkSpinDaughter(int d1, EvtSpinType::spintype sp)
void checkSpinParent(EvtSpinType::spintype sp)
void setProbMax(double prbmx)
void checkNDaug(int d1, int d2=-1)
EvtId * getDaugs()
Definition: EvtDecayBase.hh:65
void checkNArg(int a1, int a2=-1, int a3=-1, int a4=-1)
virtual EvtTensor4C epsTensorParent(int i) const
Definition: EvtParticle.cc:657
const EvtVector4R & getP4() const
Definition: EvtParticle.cc:121
EvtParticle * getDaug(int i)
Definition: EvtParticle.cc:85
double mass() const
Definition: EvtParticle.cc:127
double initializePhaseSpace(int numdaughter, EvtId *daughters, double poleSize=-1., int whichTwo1=0, int whichTwo2=1)
void initProbMax()
Definition: EvtSTS.cc:50
void getName(std::string &name)
Definition: EvtSTS.cc:37
void decay(EvtParticle *p)
Definition: EvtSTS.cc:70
EvtSTS()
Definition: EvtSTS.hh:32
void init()
Definition: EvtSTS.cc:56
EvtDecayBase * clone()
Definition: EvtSTS.cc:44
virtual ~EvtSTS()
Definition: EvtSTS.cc:35
EvtVector4C cont1(const EvtVector4C &v4) const
Definition: EvtTensor4C.cc:461
double mass() const
Definition: EvtVector4R.cc:39
double d3mag() const
Definition: EvtVector4R.cc:186