BOSS 7.0.9
BESIII Offline Software System
Loading...
Searching...
No Matches
BesEvtGen-00-04-08/src/EvtGen/EvtGenModels/EvtTSS.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: EvtTSS.cc
12//
13// Description: Routine to decay tensor-> scalar scalar
14//
15// Modification history:
16//
17// RYD November 24, 1996 Module created
18//
19//------------------------------------------------------------------------
20// -*- C++ -*-
21//
22// Package: EVT
23// Module: EvtTSS
24//
25//
26// Implimentation:
27//
28//
29// Author: ryd
30// Created: Nov 24, 1996
31//
32//
33#include "EvtGenBase/EvtPatches.hh"
34#include <stdlib.h>
35#include "EvtGenBase/EvtVector4C.hh"
36#include "EvtGenBase/EvtParticle.hh"
37#include "EvtGenBase/EvtGenKine.hh"
38#include "EvtGenBase/EvtPDL.hh"
39#include "EvtGenBase/EvtTensor4C.hh"
40#include "EvtGenBase/EvtReport.hh"
41#include "EvtGenModels/EvtTSS.hh"
42#include <string>
43
45
46void EvtTSS::getName(std::string& model_name){
47
48 model_name="TSS";
49
50}
51
52
54
55 return new EvtTSS;
56
57}
58
59void EvtTSS::init(){
60
61 // check that there are 0 arguments
62 checkNArg(0);
63
64 checkNDaug(2);
65
67
70
71
72}
73
75
76 setProbMax(1.0);
77
78}
79
81
83
84 EvtVector4R moms1 = p->getDaug(0)->getP4();
85
86 double norm = 1.0/(moms1.d3mag()*moms1.d3mag());
87
88 vertex(0,norm*(p->epsTensor(0).cont1(EvtVector4C(moms1))*(moms1)));
89 vertex(1,norm*(p->epsTensor(1).cont1(EvtVector4C(moms1))*(moms1)));
90 vertex(2,norm*(p->epsTensor(2).cont1(EvtVector4C(moms1))*(moms1)));
91 vertex(3,norm*(p->epsTensor(3).cont1(EvtVector4C(moms1))*(moms1)));
92 vertex(4,norm*(p->epsTensor(4).cont1(EvtVector4C(moms1))*(moms1)));
93
94 return ;
95}
void checkSpinDaughter(int d1, EvtSpinType::spintype sp)
void checkNArg(int a1, int a2=-1, int a3=-1, int a4=-1)
double initializePhaseSpace(int numdaughter, EvtId *daughters, double poleSize=-1., int whichTwo1=0, int whichTwo2=1)
EvtVector4C cont1(const EvtVector4C &v4) const